Colección de API de IDrive® 360

La API de IDrive® 360 está construida sobre arquitectura REST y soporta JSON tanto para solicitudes como para respuestas.

La autenticación se gestiona mediante una clave de API. Puede generar esta clave desde Mi cuenta > Claves de API en su Consola de administración de IDrive® 360.

Incluya la clave generada en cada solicitud de API agregándola al encabezado HTTP bajo Authorization.

Clave de API en encabezado de autorización

Clave Autorización
Valor Bearer <SU-CLAVE-API>


Punto final base:

Device and Company Operations Operaciones de dispositivo y empresa

GET /company

Consume: application/json

Produce: application/json


Encabezados de la solicitud:

  • Authorization: Bearer 'clave-api'

Parámetros de la solicitud:

  • company_id (no requerido, número): El ID de la empresa

Respuesta exitosa:

    				{
"name": "default",
"status": 1,
"company_id": 15020,
"status_description": "Active",
"configuration_id": "eyJ0b2tlbiI6IkFUVkFXUTE3MjQyIiwiZW5jcnlwdGlvblJlcXVpcmVkIjpmYWxzZSwiZGVza3RvcEFwcFN0YXR1cyI6ZmFsc2V9",
"setup_link": "https://api.idrive360.com/api/v1/download/setup/win/ATVAWQ17242",
"sub_company_list": [
{
"name": "Test Company",
"status": 1,
"company_id": 15806,
"status_description": "Active",
"configuration_id": "eyJ0b2tlbiI6IkZBT0JaNDE3MjQyIiwiZW5jcnlwdGlvblJlcXVpcmVkIjpmYWxzZSwiZGVza3RvcEFwcFN0YXR1cyI6ZmFsc2V9",
"setup_link": "https://api.idrive360.com/api/v1/download/setup/win/FAOBZ417242"
},
{
"name": "MSP-1",
"status": 1,
"company_id": 15816,
"status_description": "Active",
"configuration_id": "eyJ0b2tlbiI6Ik1ZSENKUDE3MjQyIiwiZW5jcnlwdGlvblJlcXVpcmVkIjpmYWxzZSwiZGVza3RvcEFwcFN0YXR1cyI6ZmFsc2V9",
"setup_link": "https://api.idrive360.com/api/v1/download/setup/win/MYHCJP17242"
},
{
"name": "MSP-2",
"status": 1,
"company_id": 15817,
"status_description": "Active",
"configuration_id": "eyJ0b2tlbiI6Ik5KUEhIOTE3MjQyIiwiZW5jcnlwdGlvblJlcXVpcmVkIjpmYWxzZSwiZGVza3RvcEFwcFN0YXR1cyI6ZmFsc2V9",
"setup_link": "https://api.idrive360.com/api/v1/download/setup/win/NJPHH917242"
}
]
}
  1. En la lista de parámetros de la solicitud, si el campo 'company_id' no se especifica, se tomará como parámetro la empresa del usuario asociada con la clave API.
  2. Si el 'company_id' corresponde a la empresa del usuario de la clave API, entonces las subempresas de la empresa del usuario se devolverán en la respuesta con la clave 'sub_company_list'.
  3. Si el 'company_id' corresponde a cualquier subempresa de la empresa del usuario de la clave API, entonces solo se devolverán los detalles de esa empresa objetivo.
  4. La respuesta contendrá los detalles de la empresa del usuario de la clave API y sus subempresas.
  5. El 'configuration_id' devuelto para cada empresa tendrá las opciones 'private_encryption' y 'full_client' deshabilitadas por defecto.
  6. Si se desea incluir la opción 'private_encryption' o 'full_client' en el 'configuration_id', utilice la API /company/fetch_config_id con los valores de parámetro respectivos.
  7. El 'setup_link' devuelto es el enlace de descarga para la instalación correspondiente al 'configuration_id' devuelto. Por defecto, se devuelve el enlace de instalación para Windows.
  8. Si se desea descargar el enlace de instalación correspondiente a otro sistema operativo, utilice la API /company/fetch_config_id con el valor de parámetro respectivo.

GET /company/fetch_config_id

Consume: application/json

Produce: application/json


Encabezados de la solicitud:

  • Authorization: Bearer 'clave-api'

Parámetros de la solicitud:

  • company_id (no requerido, número): El ID de la empresa
  • private_encryption (no requerido, booleano): Si el cliente instalado en el dispositivo debe tener cifrado privado [Aquí explique o proporcione enlace a la documentación de cifrado privado]
  • full_client (no requerido, booleano): Si el cliente instalado en el dispositivo debe tener acceso a las funciones de cliente completo [Aquí explique o proporcione enlace a la documentación de cliente completo]
  • build_type (no requerido, cadena, no distingue mayúsculas/minúsculas): El sistema operativo de destino para el que se utilizará el enlace de instalación (WIN, MAC, RPM, DEB, MSI, PKG)

Respuesta exitosa:

{
"name": "default",
"company_id": 123,
"configuration_id": "eyJ0b2tlbiI6IkFUVkFXUTE3MjQyIiwiZW5jcnlwdGlvblJlcXVpcmVkIjpmYWxzZSwiZGVza3RvcEFwcFN0YXR1cyI6ZmFsc2V9",
"setup_link": "https://api.idrive360.com/api/v1/download/setup/win/ATVAWQ17242"
}
  1. En la lista de parámetros de la solicitud, si el campo 'company_id' no se especifica, se tomará como parámetro la empresa del usuario asociada con la clave API.
  2. En la lista de parámetros de la solicitud, si los campos 'private_encryption', 'full_client' no se especifican, se tomará como valor por defecto false.
  3. En la lista de parámetros de la solicitud, si 'build_type' no se especifica, se tomará como valor por defecto WIN.

POST /company

Consume: application/json

Produce: application/json

Encabezados de la solicitud:

  • Authorization: Bearer 'clave-api'

Cuerpo de la solicitud:

{
"name": "idrive",
"company_id": 1111
}

Success Response: 201 Created

    	{
"name": "idrive",
"status": 1,
"company_id": 12223,
"status_description": "Active",
"configuration_id": "eyJ0b2tlbiI6IkFUVkFXUTE3MjQyIiwiZW5jcnlwdGlvblJlcXVpcmVkIjpmYWxzZSwiZGVza3RvcEFwcFN0YXR1cyI6ZmFsc2V9",
"setup_link": "https://api.idrive360.com/api/v1/download/setup/win/ATVAWQ17242"
}
  1. En el cuerpo de la solicitud, si el campo 'company_id' no se especifica, se tomará como parámetro la empresa del usuario asociada con la clave API.
  2. El campo 'name' es obligatorio en el contenido.
  3. La respuesta tras la creación exitosa contendrá los detalles de la empresa.
  4. El 'configuration_id' devuelto para la empresa recién creada tendrá las opciones 'private_encryption' y 'full_client' deshabilitadas por defecto.
  5. Si se desea incluir la opción 'private_encryption' o 'full_client' en el 'configuration_id', utilice la API /company/fetch_config_id con los valores de parámetro respectivos.
  6. El 'setup_link' devuelto es el enlace de descarga para la instalación correspondiente al 'configuration_id' devuelto. Por defecto, se devuelve el enlace de instalación para Windows.
  7. Si se desea descargar el enlace de instalación correspondiente a otro sistema operativo, utilice la API /company/fetch_config_id con el valor de parámetro respectivo.

GET /device/summary

Consume: application/json

Produce: application/json

Encabezados de la solicitud:

  • Authorization: Bearer 'clave-api'

Parámetros de la solicitud:

  • company_id (no requerido, número): El ID de la empresa
  • device_id (no requerido, cadena): El ID del dispositivo

Respuesta exitosa:

    	[    
{
"name": "test-office",
"status": "offline",
"device_id": wvlgllxuuaomn4bk4atfljznjyvsfhfeo5g6wgyart3osefi",
"company_id": "1111",
"custom_tag": " ",
"os": "linux",
"backup_status": "Success",
"version": "1.0.21",
"last_backup": "2025-06-11T11:12:58.000",
"next_backup": null,
"group_name": "Linux"
}
]
  1. En la lista de parámetros de la solicitud, si el campo 'company_id' no se especifica, se tomará como parámetro la empresa del usuario asociada con la clave API.
  2. Si se especifica el campo 'device_id', el resumen del dispositivo de solo ese dispositivo se devolverá en el array de respuesta.
  3. La respuesta contendrá los detalles de todos los dispositivos accesibles por el usuario correspondiente a la clave API.
Nombre del campo Descripción
name El nombre del dispositivo
status El estado actual del dispositivo (por ejemplo, en línea, fuera de línea, bloqueado, archivado)
device_id El ID del dispositivo asociado al dispositivo
company_id El ID de la empresa asociada al dispositivo
custom_tag Cualquier etiqueta personalizada asignada al dispositivo
os El sistema operativo del dispositivo
backup_status El estado de la última copia de seguridad (por ejemplo, Éxito, Fallido, En progreso, Cancelado)
version La versión de la aplicación de copia de seguridad instalada en el dispositivo
last_backup La marca de tiempo de la última copia de seguridad exitosa
next_backup La marca de tiempo de la próxima copia de seguridad programada
group_name El nombre del grupo al que pertenece el dispositivo

PUT/device/backup_plan/email_notification

Consume: application/json

Produce: application/json

Encabezados de la solicitud:

  • Authorization: Bearer 'clave-api'

Request Body:

	{
"device_id": "wtrp2zjidqr4hlsfz9vmebvtmudrpdfkayaskeunmq4civffo9",
"backup_set": "DEFAULT",
"status": true,
"type": "ALWAYS",
"emails": [
"test@idrive.com",
"support@idrive.com"
]
}
Nombre del campo Descripción
device_id El ID del dispositivo asociado al dispositivo
backup_set El nombre del conjunto de copia de seguridad (por ejemplo, "DEFAULT", "LOCAL", "ENTIRE_MACHINE", "MAPPED_DRIVE", "EXPRESS")
status Booleano que indica si la notificación por correo electrónico debe estar habilitada (true) o deshabilitada (false)
type La frecuencia de la notificación (por ejemplo, "ALWAYS", "ON_FAILURE")
emails Un arreglo de direcciones de correo electrónico que recibirán la notificación

Respuesta exitosa:

			{
"ok": true,
"message": "Email notification settings updated successfully"
}
  1. Cuando la solicitud sea exitosa, se devolverá un código de estado 200 con la carga de respuesta anterior

Códigos de respuesta HTTP:

  • 200 - Solicitud exitosa
  • 201 - Recurso creado
  • 401 - No autorizado
  • 400 - Solicitud inválida/Parámetros inválidos
  • 429 - Error de dependencia
  • 500 - Error interno del servidor

Respuesta de error:

  1. El "type" de error a nivel base/superior es la causa genérica del fallo de la solicitud y los "errors" específicos de la solicitud se especifican en un formato de array
  2. El campo "message" a nivel base/superior es irrelevante para el procesamiento, está presente por legibilidad y describe el "type" de error base/superior
  3. Si el campo interno "errors" no está presente, maneje el fallo de la solicitud usando el "type" de error base/superior
  4. El campo interno "errors" contiene el array de errores encontrados al realizar la operación de la solicitud, que contiene el "type", "field" y "message"/descripción de cada error individual
  5. En ciertos casos, también se devolverá un "field" con el contenido de "errors", lo que indica que la ejecución de la solicitud falló debido a una operación realizada con ese "field"
{
"ok": false,
"type": "entity_not_found",
"message": "The specified entity being addressed either does not exist or is invalid. The request should not be retried without modification or until the indicated entity is set up.",
"code": 400,
"errors": [
{
"type": "entity_not_found",
"field": "device_id",
"message": "The entity corresponding to the device id specified cannot be found, not-active or not-configured"
}
]
}

Tipos de error:

Tipo de error Tipo de error base Código de estado Descripción
missing_authorization_header authentication_failed 401 Falta el encabezado de autorización con la API_KEY
malformed_authorization_header authentication_failed 401 El encabezado de autorización está mal formado, el formato aceptado es 'Bearer <API_KEY>'
admin_company_not_active invalid_state 400 La empresa del administrador asociada con la API_KEY está inactiva
admin_not_active invalid_state 400 El administrador asociado con la API_KEY está inactivo
insufficient_privileges authentication_failed 401 El usuario asociado con la API_KEY no tiene permisos suficientes para acceder a este recurso, contacte al administrador
access_restricted invalid_request 400 Descripción personalizada basada en el fallo de la ejecución de la solicitud
processing_fault processing_fault 500 Ocurrió un error interno de procesamiento al analizar el objeto JSON
internal_error internal_error 500 Ocurrió un error interno al procesar la solicitud
entity_creation_failed internal_error 500 No se pudo crear la entidad en el sistema
entity_not_found entity_not_found 400 La entidad solicitada no se encontró en el sistema
invalid_request invalid_request 400 Descripción personalizada basada en el fallo de la ejecución de la solicitud
invalid_parameter invalid_parameter 400 Descripción personalizada basada en el fallo de la ejecución de la solicitud
same_state same_state 400 Descripción personalizada basada en el fallo de la ejecución de la solicitud
dependency_exception dependency_exception 429 Descripción personalizada basada en el fallo de la ejecución de la solicitud

Campos de error:

  • A continuación se muestra una lista de los tipos de "field" devueltos en el contenido interno de "errors" junto con los escenarios en los que se puede devolver el "field"
Campo Escenarios
device_id El ID del dispositivo especificado en la solicitud
company_id El ID de la empresa especificado en la solicitud o el ID de la empresa del administrador correspondiente a la API_KEY
notification_server Cualquier problema de dependencia al acceder a nuestros servidores de copia de seguridad
emails Direcciones de correo electrónico especificadas en la solicitud
backup_set Cualquier acción que desencadene cambios en el plan de copia de seguridad de un dispositivo
backup_policy Cualquier acción que desencadene cambios en el plan de copia de seguridad de un dispositivo
backup_policy_schedule Cualquier acción que desencadene cambios en la programación del plan de copia de seguridad de un dispositivo
status Estado especificado en la solicitud
name Nombres especificados en la solicitud