Saltar al contenido principal

Servicio Expuesto

Exponer un servicio · API propia · Servicio publicado · Integración entrante · Servicio para terceros · Endpoint expuesto

Ejemplos

Swagger Petstore: el sistema publica el contrato de su API (OpenAPI) y los puntos de acceso que expone —POST, PUT, GET, DELETE sobre /pet— para que otros sistemas los invoquen programáticamente.

Descripción

Componente mediante el cual el sistema publica funcionalidades o información para que otros sistemas las invoquen programáticamente. El sistema actúa como proveedor: define un contrato, abre puntos de acceso y atiende las solicitudes que llegan desde sistemas externos, devolviendo respuestas o aceptando datos que se le inyectan. Oculta la complejidad interna y expone solo las operaciones permitidas según el contrato definido. Es el lado «servidor» de una integración entre sistemas.

Capacidades mandatorias

Capacidades mandatorias
  • Publica puntos de acceso invocables programáticamente por sistemas externos o internos
  • Recibe solicitudes entrantes, las atiende contra la lógica del sistema y devuelve una respuesta estructurada
  • Define un contrato (especificación) que indica cómo realizar las solicitudes y qué respuestas esperar
  • Requiere que los sistemas clientes que invocan el servicio estén autenticados

Capacidades adicionales

Capacidades adicionales
  • Versionado: mantiene múltiples versiones de la API en paralelo (v1, v2) para no romper compatibilidad con clientes existentes al evolucionar el contrato
  • Documentación interactiva: provee una interfaz navegable de la especificación (Swagger/OpenAPI, GraphQL Playground) que permite probar el servicio directamente
  • Rate limiting: restringe la cantidad de solicitudes que un cliente puede realizar en un intervalo de tiempo
  • Caching de respuestas: almacena temporalmente respuestas frecuentes para reducir tiempo de respuesta y carga del sistema
  • Monitoreo de uso: registra métricas de invocaciones, latencias, errores y patrones de consumo por cliente

Delimitaciones

Qué no es
  • No es la interfaz de usuario: el servicio expuesto es programático, pensado para que otro sistema lo consuma, no para la interacción de una persona a través de una pantalla
  • No consume servicios de terceros — eso corresponde a Consumo de Servicio Externo: aquí el sistema es el que ofrece, no el que usa
  • No verifica la identidad del cliente — eso corresponde a Autenticación API
  • No determina qué puede hacer el cliente autenticado — eso corresponde a Autorización

Flujo de información

Entrada

Solicitud estructurada de un sistema externo (método de invocación, operación, parámetros, credenciales). En modalidad de inyección de datos, los propios datos que el tercero envía para que el sistema los incorpore.

Salida

Respuesta estructurada con los datos solicitados o confirmación de la operación ejecutada, en el formato definido por la especificación (JSON, XML, etc.)

Modalidades

  • REST: arquitectura basada en recursos y operaciones estándar HTTP, con respuestas típicamente en JSON
  • SOAP: protocolo formal basado en mensajes XML, común en sistemas bancarios y gubernamentales
  • GraphQL: permite al cliente especificar exactamente qué información necesita en cada solicitud

Dependencias típicas

  • Servidor que recibe y procesa las solicitudes entrantes
  • Autenticación API para verificar la identidad del cliente
  • Autorización para determinar qué puede hacer el cliente autenticado
  • Base de Datos o repositorio de información sobre el que opera el servicio
  • Documentación que especifica los puntos de acceso y protocolos

Mapeo al Tablero Digital

Actualización ManualNo
Actualización AutomáticaOpcional
Conceptos de DatosSiempre
Salidas por DemandaNo
Salidas AutomáticasSiempre
Procesos AutónomosSiempre
SecciónVínculoObservación
Actualización ManualNo
Actualización AutomáticaOpcionalCuando el servicio se expone para que terceros inyecten datos al sistema (modalidad de inyección).
Conceptos de DatosSiempreLas entidades del sistema que se exponen o se manipulan a través del servicio.
Salidas por DemandaNo
Salidas AutomáticasSiempreRespuestas estructuradas que el sistema envía hacia los sistemas externos solicitantes.
Procesos AutónomosSiempreLa lógica que atiende cada solicitud entrante. Rate limiting, caching y monitoreo cuando esas capacidades están presentes.

Ejemplo de Tablero Digital

Actualización Manual
Conceptos de Datos
Bus
Recorrido
Tiempo de Llegada
Salidas por Demanda
Actualización Automática
Inyección de Posición GPS
Procesos Autónomos
Atención de Solicitudes
Rate Limiting
Salidas Automáticas
Respuesta con Posición en Tiempo Real
Respuesta con Tiempos de Llegada