Pasar al contenido

Dispositivos

Las 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 válido de dos letras de la norma ISO 3166-1 code recibido de una solicitud Cloudflare-manejada para el dispositivo. No es GPS ni un valor de ubicación proporcionado por tu aplicación. Puede ser null cuando no esté disponible; utilice una búsqueda de un solo dispositivo cuando necesites este campo.

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

Establecer una sobrescritura específica del dispositivo a un canal privado canal. Para elegir un paquete para un dispositivo, asigna ese paquete al canal; no se admiten sobrescripciones de paquetes directas por dispositivo. La sobrescritura caduca 90 días después de la última escritura a menos que vuelvas a enviar un 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 : ID de aplicación de dominio inverso requerido, como com.example.app.
  • device_id : ID de dispositivo opcional. Cuando está presente, la respuesta es un solo dispositivo en lugar de una lista paginada.
  • customIdMode: Valor booleano opcional. Establezca a true : Valor opcional de cursor desde la respuesta de lista anterior. custom_id.
  • cursor: Valor opcional de número de dispositivos por página.
  • limitEjemplos de solicitudes

Sección titulada “Ejemplos de solicitudes”

Ventana de terminal
Copiar a portapapeles
# 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"

Sección titulada “Tipos de respuesta”

Copiar a portapapeles
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 is populated by a device-specific lookup when Capgo has stored a valid Cloudflare-derived country code. Requests without a valid country do not clear the last valid value; list responses may return 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.

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 final 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 lanzamientos etapados, conecte Canales context:Capgo release channels feature name. Página/área: Página de marketing de soluciones de Capgo. Rol: Etiqueta de UI 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 soluciones White Label). para obtener los detalles de implementación en Canales, que se utilizan en Dispositivos, para planificar la ruta de canales y la implementación de lanzamientos etapados, conecte Canales, contexto:Capgo release channels feature name. Página/área: Página de marketing de soluciones de Capgo. Rol: Etiqueta de UI 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 soluciones White Label). para los detalles de implementación en los canales, Canales prueba beta para los detalles de implementación en la solución de prueba beta, y Solución de versiones para el flujo de trabajo del producto en la solución de versiones. Editar página