Especificación de API
Bienvenido a nuestra API. Aca podras acceder a la documentación de todos los servicios expuestos por MIA.
Introducción a PServices
La API expuesta por MIA sigue una arquitectura RPC-like (Remote Procedure Call). A diferencia de las APIs REST orientadas a recursos, PServices se centra en la ejecución de servicios que encapsulan reglas de negocio complejas, abstrayendo la gestión de entidades para el cliente consumidor.
Conceptos Clave
Método Único: Se utiliza exclusivamente el método
POST.Endpoint Único: Un solo punto de entrada que deriva internamente las peticiones.
Aislamiento de Errores: La API retorna siempre un código
HTTP 200. Los errores de negocio se gestionan dentro del cuerpo de la respuesta, separando la capa de transporte de la lógica de aplicación. Cualquier otro código de retorno HTTP, debe ser interpretado a nivel protocolo HTTP.
Especificación Técnica
Entornos y URL Base
Todas las solicitudes de servicio deben dirigirse a una única URL, dependiendo del ambiente en el que se esté trabajando:
Ambiente
URL Base
Dev / Homologación
https://services-dev.miaid.me
Producción
https://services.miaid.me
Encabezados (Headers)
Es obligatorio incluir los siguientes headers en cada petición:
Content-Type:application/jsonx-origin-id: Identificador de la aplicación de origen.x-api-key: Clave de acceso autorizada.
Estructura del Request (Cuerpo)
El cuerpo de la petición debe ser un objeto JSON con la siguiente estructura:
service(string): Nombre identificador del servicio a procesar.params(JSON): Objeto que contiene los argumentos necesarios. Los pares nombre/valor específicos se detallan en la documentación de cada servicio.
Estructura del Response (Cuerpo)
La respuesta es un objeto JSON estandarizado que permite un manejo de errores predecible.
1. El objeto status
statusContiene la metadata del resultado de la ejecución:
Atributo
Tipo
Descripción
code
int
1 para éxito, 0 para error.
errcode
int
Código numérico del error detectado.
errmsg
string
Descripción textual del error o mensaje informativo.
origin
int
Identificador del módulo emisor del error.
action
string
Indica el curso de acción a seguir (ver tabla abajo).
id
int
ID de la entidad principal creada (solo en operaciones de inserción).
📝 Diccionario de Acciones/Gravedad del error (action)
Cuando el code es 0, el atributo action determina cómo debe reaccionar la aplicación cliente:
E(Error): Error irrecuperable en la ejecución del servicio.W(Warning): Aviso informativo/advertencia.X(Interpretable): El cliente debe ejecutar una lógica específica basada en elerrcode.F(Fatal): Error crítico en la infraestructura o ejecución.
2. El objeto result
resultTipo:
JSON ArrayDescripción: Contiene el resultado de la consulta o proceso. Cada elemento del array es un objeto con pares nombre/valor definidos en la documentación específica de cada servicio.
Errores comunes
Si la solicitud no cumples con los requisitos básicos, esta retornará un error. Los siguientes son comunes a todos los servicios:
Gravedad (action)
Código (code)
Mensaje (errmsg)
Descripción
E
10040
Dispositivo no autorizado
El valor de x-api-key es inválido o no existe.
E
55001
Servicio inválido
El atributo service es incorrecto, no se reconoce o no fue enviado.
E
55002
Params inválido
Se ha omitido el atributo params en el cuerpo de la petición.
E
55003
Parámetro requerido/inválido [xxx]
El parámetro específico xxx dentro del objeto params falta o es incorrecto.
E
55999
Ha ocurrido un error inesperado
Error genérico no manejado por el sistema.
Próximos Pasos
Ahora que conoces la estructura base, puedes explorar el Catálogo de Servicios en el menú lateral para conocer los parámetros específicos de cada operación.
Last updated