Pasar al contenido

Dispositivos

Los dispositivos son instalaciones de aplicaciones individuales que informan metadatos de actualizador a Capgo. Utilice este API para recuperar esos metadatos o establecer y eliminar un override de canal privado específico del dispositivo.

Cada registro puede incluir el ID del dispositivo, la plataforma, las versiones del actualizador y del sistema operativo, la construcción nativa, el paquete instalado, el estado de producción y de emulador, el ID personalizado y la sobrescripción de canal.

Cuando esté disponible, country_code es la última código de país de dos letras ISO 3166-1 válido code recibido de una solicitud Cloudflare-manejada para el dispositivo. No es GPS ni un valor de ubicación proporcionado por su aplicación. Puede ser null cuando no esté disponible; utilice una búsqueda de un solo dispositivo cuando necesite este campo.

https://api.capgo.app/device/

Establecer un override específico del dispositivo a un canal privado canal. Para elegir un paquete para un dispositivo, asigna ese paquete al canal; no se admiten overrides de paquetes directos por dispositivo. El override caduca 90 días después de la última escritura a menos que lo vuelvas a POST.

interface DeviceChannelOverride {
app_id: string; // reverse-domain app ID, for example com.example.app
device_id: string;
channel: string; // existing non-public channel name
}
Ventana de terminal
curl -X POST \
-H "authorization: your-api-key" \
-H "Content-Type: application/json" \
-d '{
"app_id": "com.example.app",
"device_id": "device_456",
"channel": "beta"
}' \
https://api.capgo.app/device/

Los canales públicos no pueden usarse como sobreescripciones de dispositivo.

{
"status": "ok"
}

https://api.capgo.app/device/

Obtener metadatos de dispositivo. Los resultados están paginados con cursor cuando omites device_id.

  • app_id: Identificador de aplicación de dominio inverso requerido, como com.example.app.
  • device_id: Identificador de dispositivo opcional. Cuando está presente, la respuesta es un solo dispositivo en lugar de una lista paginada.
  • customIdMode: Boolean opcional. Establezca a true para devolver solo dispositivos con un nombre no vacío custom_id.
  • cursor: Cursor opcional desde la respuesta de lista anterior.
  • limit: Número opcional de dispositivos por página.
Ventana de terminal
# Get the first page
curl -H "authorization: your-api-key" \
"https://api.capgo.app/device/?app_id=com.example.app"
# Get one device, including its request-derived country when available
curl -H "authorization: your-api-key" \
"https://api.capgo.app/device/?app_id=com.example.app&device_id=device_456"
# Get only devices with a custom ID
curl -H "authorization: your-api-key" \
"https://api.capgo.app/device/?app_id=com.example.app&customIdMode=true"
# Get the next page
curl -H "authorization: your-api-key" \
"https://api.capgo.app/device/?app_id=com.example.app&cursor=2024-01-01T00:00:00Z%7Cdevice_456"
interface DeviceListResponse {
data: Device[];
nextCursor?: string;
hasMore: boolean;
}
interface Device {
updated_at: string;
device_id: string;
custom_id: string;
version?: number;
version_name: string | null;
channel?: string;
app_id: string;
platform: "ios" | "android" | "electron";
plugin_version: string;
os_version: string;
version_build: string;
is_prod: boolean;
is_emulator: boolean;
key_id: string | null;
install_source: string | null;
country_code: string | null;
}

country_code se rellena mediante una búsqueda específica del dispositivo cuando Capgo ha almacenado un país válido code derivado de Cloudflare; las solicitudes sin un país válido no eliminan el último valor válido; las respuestas de lista pueden devolver null para este campo.

{
"data": [
{
"device_id": "device_456",
"custom_id": "test-device-1",
"version": 1,
"version_name": "1.0.0",
"app_id": "com.example.app",
"platform": "ios",
"plugin_version": "5.0.0",
"os_version": "17.0",
"version_build": "1",
"is_prod": true,
"is_emulator": false,
"key_id": null,
"install_source": null,
"country_code": null,
"updated_at": "2024-01-01T00:00:00Z"
}
],
"nextCursor": "2024-01-01T00:00:00Z|device_456",
"hasMore": true
}
{
"device_id": "device_456",
"custom_id": "test-device-1",
"version": 1,
"version_name": "1.0.0",
"app_id": "com.example.app",
"platform": "ios",
"plugin_version": "5.0.0",
"os_version": "17.0",
"version_build": "1",
"is_prod": true,
"is_emulator": false,
"key_id": "MIIB",
"install_source": null,
"country_code": "FR",
"updated_at": "2024-01-01T00:00:00Z",
"channel": "beta"
}

https://api.capgo.app/device/

Eliminar la sobrescritura de canal de un dispositivo. El dispositivo volverá a usar su selección de canal normal; este punto de conexión no elimina su registro de metadatos.

Parámetros del cuerpo de solicitud o de consulta

Sección titulada “Parámetros del cuerpo de solicitud o de consulta”
interface DeviceOverrideRemoval {
app_id: string;
device_id: string;
}
Ventana de terminal
curl -X DELETE \
-H "authorization: your-api-key" \
-H "Content-Type: application/json" \
-d '{
"app_id": "com.example.app",
"device_id": "device_456"
}' \
https://api.capgo.app/device/
{
"status": "ok"
}

Los errores utilizan un código de estado HTTP y un cuerpo JSON con error y message códigos de error comunes incluyen:

  • invalid_app_id cuando app_id no es un identificador de dominio inverso.
  • device_not_found para una búsqueda de dispositivo desconocido.
  • channel_not_found cuando el canal solicitado no existe.
  • public_channel_override cuando se intenta sobreescribir un dispositivo a un canal público.
  • invalid_version_id cuando se intenta sobreescribir un paquete directo; utilice un canal en su lugar.
  • cannot_access_app o cannot_access_channel cuando la clave API carece del permiso requerido.
  1. Mover un dispositivo de prueba a un canal de beta privado

    {
    "app_id": "com.example.app",
    "device_id": "device_456",
    "channel": "beta"
    }
  2. Restablecer un dispositivo a la selección de canal normal

    Utilice el DELETE punto de conexión con los IDs de la aplicación y el dispositivo.

Si está utilizando Dispositivos para planificar la ruta de canales y la implementación de lanzamiento etapizado, conecte con Canales contexto: nombre de la característica de canales de Capgo. Página/área: página de marketing de soluciones de Capgo. Rol: etiqueta de IU corta o elemento de navegación. Visto en: página solutions/white-label.astro. Clave de mensaje `solutions_white_label_visual_cell2_value` (Valor de celda visual de Solutions White Label). para los detalles de implementación en Canales, para los detalles de implementación en los canales, Canales para los detalles de implementación en los canales, Solución de Pruebas Beta para el flujo de trabajo del producto en Solución de Pruebas Beta, y Solución de Versionado para el flujo de trabajo del producto en Solución de Versionado.