Commit a3e50420 by Cristian_Camargo

Add new file

parent 8065485e
{
"openapi": "3.0.0",
"servers": [
{
"description": "Calidad",
"url": "https://colsubsidio-test.apigee.net/api"
},
{
"description": "Producción",
"url": "https://colsubsidio-prod.apigee.net/api"
}
],
"info": {
"description": "Información de los servicios del producto recreacion y turismo afiliados.",
"version": "1.0.0",
"title": "Recreacion y turismo afiliados",
"termsOfService": "http://172.16.95.36/wiki/index.php/T%C3%A9rminos_de_servicio_Swagger",
"contact": {
"email": "operacionesti@colsubsidio.com"
},
"license": {
"name": "Colsubsidio",
"url": "http://172.16.95.36/wiki/index.php/T%C3%A9rminos_de_servicio_Swagger"
}
},
"tags": [
{
"name": "cols-recreacionyturismo-afiliados",
"description": "Informacion de afiliados."
}
],
"paths": {
"/v1/recreacionyturismo/afiliados/clientes": {
"post": {
"tags": [
"cols-recreacionyturismo-afiliados"
],
"summary": "Capacidad para inscribir una persona",
"description": "Realiza la inscripción de una persona en el sistema con la información enviada",
"operationId": "registrarDatosCliente.v1",
"responses": {
"200": {
"description": "Operación exitosa",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/registrarDatosClienteResponse"
}
}
}
},
"400": {
"description": "Estado inválido"
}
},
"security": [
{
"apigee_auth": [
"write:apigee",
"read:apigee"
]
}
],
"requestBody": {
"$ref": "#/components/requestBodies/registrarDatosClienteRequestBody"
}
}
},
"/v1/recreacionyturismo/afiliados/afiliacion": {
"post": {
"tags": [
"cols-recreacionyturismo-afiliados"
],
"summary": "Inscribir afiliacion",
"description": "Según el id se puede inscribir a una afiliación",
"operationId": "inscribirMembresia.v1",
"responses": {
"200": {
"description": "Operación exitosa",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/inscribirMembresiaResponse"
}
}
}
},
"400": {
"description": "Estado inválido"
}
},
"security": [
{
"apigee_auth": [
"write:apigee",
"read:apigee"
]
}
],
"requestBody": {
"$ref": "#/components/requestBodies/inscribirMembresiaRequestBody"
}
}
},
"/v1/recreacionyturismo/afiliados/disponibilidad": {
"post": {
"tags": [
"cols-recreacionyturismo-afiliados"
],
"summary": "Consultar disponibilidad de la practica libre",
"description": "Consultar disponibilidad de la practica libre",
"operationId": "disponibilidadPracticaLibre.v1",
"responses": {
"200": {
"description": "Operación exitosa",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/disponibilidadPracticaLibreResponse"
}
}
}
},
"400": {
"description": "Estado inválido"
}
},
"security": [
{
"apigee_auth": [
"write:apigee",
"read:apigee"
]
}
],
"requestBody": {
"$ref": "#/components/requestBodies/disponibilidadPracticaLibreRequestBody"
}
}
},
"/v1/recreacionyturismo/afiliados/reserva": {
"post": {
"tags": [
"cols-recreacionyturismo-afiliados"
],
"summary": "Inscripción de la persona al turno practica libre",
"description": "Capacidad que permite la inscripción de una persona a un turno de practica libre, y lo asocia a una cotización.",
"operationId": "reservarTurnoPracticaLibre.v1",
"responses": {
"200": {
"description": "Operación exitosa",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/reservarTurnoPracticaLibreResponse"
}
}
}
},
"400": {
"description": "Estado inválido"
}
},
"security": [
{
"apigee_auth": [
"write:apigee",
"read:apigee"
]
}
],
"requestBody": {
"$ref": "#/components/requestBodies/reservarTurnoPracticaLibreRequestBody"
}
},
"delete": {
"tags": [
"cols-recreacionyturismo-afiliados"
],
"summary": "Borra un turno de práctica libre asociado a una persona.",
"description": "Borra el turno completo desasociando todas las personas incluídas en él. NOTA: El turno tuvo que ser reservado por Tiquetera para ser cancelable.",
"operationId": "cancelarReservaPracticaLibre.v1",
"parameters": [
{
"name": "numId",
"in": "query",
"description": "Numero de identificacion de la persona que reservo",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "idTurno",
"in": "query",
"description": "Numero de identificacion del turno ",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Operación exitosa",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/cancelarReservaPracticaLibreResponse"
}
}
}
},
"400": {
"description": "Estado inválido"
}
},
"security": [
{
"apigee_auth": [
"write:apigee",
"read:apigee"
]
}
]
}
},
},
"externalDocs": {
"description": "Encontrar más información en EnterpriseArchitect",
"url": "http://172.16.95.36/wiki/index.php/Enterprise_Architect"
},
"components": {
"schemas": {
"resultado": {
"type": "object",
"properties": {
"codigo": {
"type": "string",
"description": "Código del resultado"
},
"descripcion": {
"type": "string",
"description": "Descripción del resultado"
}
},
"xml": {
"name": "resultado"
}
},
"resultadoCotizacion": {
"type": "object",
"properties": {
"codigo": {
"type": "string",
"description": "Estado de la cotización. Posibles Valores\n - 1) PAGO PENDIENTE > No ha sido pagada *nueva*\n - 2) PAGO REALIZADO > Ya ha sido pagada *facturada*\n - 3) RECHAZADA > El pago no ha sido exitoso *cancelada*\n - 4) CHECKOUT > En espera del medio de pago *en proceso de pago*"
},
"descripcion": {
"type": "string",
"description": "Mensaje de la cotización"
}
},
"xml": {
"name": "resultado"
}
},
"cancelarReservaPracticaLibreResponse": {
"type": "object",
"required": [
"resultado"
],
"properties": {
"resultado": {
"type": "array",
"xml": {
"name": "resultado"
},
"items": {
"$ref": "#/components/schemas/resultado"
}
}
}
},
"disponibilidadPracticaLibreResponse": {
"type": "object",
"required": [
"resultado"
],
"properties": {
"resultado": {
"type": "array",
"xml": {
"name": "resultado"
},
"items": {
"$ref": "#/components/schemas/resultado"
}
},
"obtenerDisponibilidad": {
"type": "array",
"items": {
"$ref": "#/components/schemas/obtenerDisponibilidad"
}
}
}
},
"obtenerDisponibilidad": {
"type": "object",
"properties": {
"turno": {
"$ref": "#/components/schemas/turnoPracticaLibre"
}
}
},
"turnoPracticaLibre": {
"type": "object",
"properties": {
"practicaLibre ": {
"type": "object",
"properties": {
"fechaInicio": {
"type": "string",
"description": "Fecha de inicio"
},
"fechaFin": {
"type": "string",
"description": "Fecha de fin"
},
"cantidadUsos": {
"type": "string",
"description": "Número de usos que require el turno"
},
"participantes": {
"type": "string",
"description": "Número de personas máximas acompañantes para el turno"
},
"cupos": {
"type": "string",
"description": "Cupos disponibles en el horario"
},
"duracion": {
"type": "string",
"description": "Cantidad de minutos del turno"
},
"zona": {
"type": "array",
"items": {
"properties":{
"id": {
"type": "string",
"description": "Identificador de la zona"
},
"nombre": {
"type": "string",
"description": "Nombre de la zona"
},
"idEscenario": {
"type": "string",
"description": "Nombre del material"
},
"nombreEscenario": {
"type": "string",
"description": "Identificador del escenario al que pertenece la zona"
}
}
}
}
}
}
}
},
"disponibilidadPracticaLibreRequest": {
"type": "object",
"properties": {
"idCentroEntrenamiento": {
"type": "string",
"description": "Id del centro de entrenamiento"
},
"disponibilidad": {
"type": "object",
"description": "Objeto que representa una búsqueda de disponibilidad en un rango de fechas para práctica libre.",
"properties":{
"fechaInicio": {
"type": "string",
"description": "Fecha de inicio de búsqueda de la disponibilidad. Sujeto al mínimo del centro de entrenamiento con relación a la fecha actual."
},
"fechaFin": {
"type": "string",
"description": "Fecha límite a la cual se le busca disponibilidad. Sujeto al maximo del centro de entrenamiento con relación a la fecha actual."
},
"inmediato": {
"type": "string",
"description": "Indicador para buscar turnos que inicien en los próximos 5, 10 o 15 minutos"
}
}
},
"turno": {
"$ref": "#/components/schemas/turnoReservaPracticaLibre"
}
}
},
"reservarTurnoPracticaLibreResponse": {
"type": "object",
"required": [
"resultado"
],
"properties": {
"resultado": {
"type": "array",
"xml": {
"name": "resultado"
},
"items": {
"$ref": "#/components/schemas/resultadoCotizacion"
}
},
"obtenerCotizacion": {
"type": "array",
"items": {
"$ref": "#/components/schemas/obtenerCotizacion"
}
}
}
},
"reservarTurnoPracticaLibreRequest": {
"type": "object",
"properties": {
"idCotizacion": {
"type": "string",
"description": "Id de cotizacion"
},
"idCentroEntrenamiento": {
"type": "string",
"description": "Id del centro de entrenamiento"
},
"turno": {
"$ref": "#/components/schemas/turnoReservaPracticaLibre"
}
}
},
"turnoReservaPracticaLibre": {
"type": "object",
"properties": {
"practicaLibre ": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Identificador del turno de la practica libre"
},
"fechaInicio": {
"type": "string",
"description": "Fecha de inicio"
},
"fechaFin": {
"type": "string",
"description": "Fecha de fin"
},
"tiquetera": {
"type": "string",
"description": "Parametro que informa si la practica libre se reserva a través de una tiquetera"
},
"cantidadUsos": {
"type": "string",
"description": "Número de la cantidad de usos que se desean reservar"
},
"cancelable": {
"type": "string",
"description": "Parametro que describe si el turno de practica libre es aún cancelable"
},
"informacionPersonal": {
"type": "object",
"properties":{
"id": {
"type": "string",
"description": "Id de la persona"
},
"edad": {
"type": "string",
"description": "Edad de la persona"
},
"correoElectronico": {
"type": "string",
"description": "Correo electronico de la persona"
},
"documento": {
"$ref": "#/components/schemas/documento"
},
"nombre": {
"$ref": "#/components/schemas/nombre"
},
"genero": {
"$ref": "#/components/schemas/genero"
},
"categoria": {
"$ref": "#/components/schemas/categoria"
}
}
},
"material": {
"type": "array",
"items": {
"properties":{
"id": {
"type": "string",
"description": "Identificador o id del material"
},
"tipo": {
"type": "string",
"description": "Tipo del material:\n * 1) Referencia\n * 2) Transporte\n * 3) Turno\n * 4) Articulo"
},
"descripcion": {
"type": "string",
"description": "Nombre del material"
}
}
}
},
"zona": {
"type": "array",
"items": {
"properties":{
"id": {
"type": "string",
"description": "Identificador de la zona"
},
"nombre": {
"type": "string",
"description": "Nombre de la zona"
},
"idEscenario": {
"type": "string",
"description": "Nombre del material"
},
"nombreEscenario": {
"type": "string",
"description": "Identificador del escenario al que pertenece la zona"
}
}
}
},
}
},
}
},
"inscribirMembresiaRequest": {
"type": "object",
"properties": {
"idCentroEntrenamiento ": {
"type": "string",
"description": "Id de centro de entrenamiento",
},
"idCotizacion": {
"type": "string",
"description": "Id de cotizacion"
},
"fechaInicio": {
"type": "string",
"description": "Fecha de inicio"
},
"servicio": {
"$ref": "#/components/schemas/servicio"
},
"cliente": {
"$ref": "#/components/schemas/cliente"
}
}
},
"inscribirMembresiaResponse": {
"type": "object",
"required": [
"resultado"
],
"properties": {
"resultado": {
"type": "array",
"xml": {
"name": "resultado"
},
"items": {
"$ref": "#/components/schemas/resultado"
}
},
"obtenerCotizacion": {
"type": "array",
"items": {
"$ref": "#/components/schemas/obtenerCotizacion"
}
}
}
},
"registrarDatosClienteRequest": {
"type": "object",
"properties": {
"cliente": {
"$ref": "#/components/schemas/cliente"
}
}
},
"registrarDatosClienteResponse": {
"type": "object",
"required": [
"resultado"
],
"properties": {
"resultado": {
"type": "array",
"xml": {
"name": "resultado"
},
"items": {
"$ref": "#/components/schemas/resultado"
}
},
"obtenerCliente": {
"type": "array",
"items": {
"$ref": "#/components/schemas/obtenerCliente"
}
}
}
},
"obtenerCliente": {
"type": "object",
"properties": {
"cliente": {
"$ref": "#/components/schemas/cliente"
},
}
},
"documento": {
"type": "object",
"properties": {
"tipo": {
"type": "string",
"description": "Tipo de documento"
},
"numero": {
"type": "string",
"description": "Número de identificación del documento"
}
},
"xml": {
"name": "documento"
}
},
"genero": {
"type": "object",
"properties": {
"codigo": {
"type": "string",
"description": "Género de la persona: * 0) FEMENINO * 1) MASCULINO",
"enum": [
0,
1
]
},
}
},
"categoria": {
"type": "object",
"properties": {
"sigla": {
"type": "string",
"description": "Sigla de la categoria"
}
}
},
"nombre": {
"type": "object",
"properties": {
"primero": {
"type": "string",
"description": "Primer nombre"
},
"segundo": {
"type": "string",
"description": "Segundo nombre"
},
"primerApellido": {
"type": "string",
"description": "Primer apellido"
},
"segundoApellido": {
"type": "string",
"description": "Segundo apellido"
},
"completo": {
"type": "string",
"description": "Nombre completo"
}
},
"xml": {
"name": "nombre"
}
},
"cliente": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Id del cliente"
},
"edad": {
"type": "string",
"description": "Edad del cliente"
},
"correoElectronico": {
"type": "string",
"description": "Correo electronico del cliente"
},
"documento": {
"$ref": "#/components/schemas/documento"
},
"nombre": {
"$ref": "#/components/schemas/nombre"
},
"genero": {
"$ref": "#/components/schemas/genero"
},
"categoria": {
"$ref": "#/components/schemas/categoria"
}
}
},
"consultaCotizacionIdResponse": {
"type": "object",
"required": [
"resultado"
],
"properties": {
"resultado": {
"type": "array",
"xml": {
"name": "resultado"
},
"items": {
"$ref": "#/components/schemas/resultadoCotizacion"
}
},
"obtenerCotizacion": {
"type": "array",
"items": {
"$ref": "#/components/schemas/obtenerCotizacion"
}
}
}
},
"obtenerCotizacion": {
"type": "object",
"properties": {
"afiliado": {
"$ref": "#/components/schemas/afiliado"
},
"cotizacion": {
"$ref": "#/components/schemas/cotizacion"
},
"transaccion": {
"$ref": "#/components/schemas/transaccion"
},
"logs": {
"type": "array",
"items":{
"$ref": "#/components/schemas/logs"
}
}
}
},
"logs": {
"type": "object",
"description": "Cambio realizado en la cotización en un instante de tiempo",
"properties": {
"tipo": {
"type": "string",
"description": "Tipo de modificación que se realiza Tipo:\n * 1) CREACION\n * 2) ACTUALIZACION\n * 3) INFORMATIVO\n * 4) PRUEBAS"
},
"descripcion": {
"type": "string",
"description": "Descripción del log"
}
}
},
"transaccion": {
"type": "object",
"description": "Propiedades de la transacción de pago de una cotización",
"properties": {
"id": {
"type": "string",
"description": "El id de la transacción enviado por el sistema de pago."
},
"fecha": {
"type": "string",
"description": "Fecha en la que se completó la transacción de pago"
},
"canal": {
"type": "string",
"description": "Identificador del canal de pago - 1) Caja - 2) Módulos - 3) Web - 4) App - 5) IVR - 6) Interno",
"enum": [
1,
2,
3,
4,
5,
6
]
},
"idCaja": {
"type": "string",
"description": "Identificador de la máquina que hizo el pago (Módulo, Caja). En caso de transacción en línea se usará algún identificador del proveedor de pago."
},
"idCajero": {
"type": "string",
"description": "Identificador del cajero quien realiza la cotización en el sistema Hércules (Normalmente la cédula o código de máquina)"
},
"pago": {
"type": "object",
"properties":{
"id": {
"type": "string",
"description": "Consecutivo generado por el medio de pago"
},
"medio": {
"type": "string",
"description": "Código del medio de pago"
},
"valor": {
"type": "string",
"description": "Valor pagado con este medio de pago"
}
}
}
}
},
"cotizacion": {
"type": "object",
"description": "Información de una cotización. Las cotizaciones se componen de Ítems de Cotización que indican los servicios a adquirir. Los Ítems tiene diferntes tipos dependiendo del servicio que se adquirió. Además las Cotizaciones tienen un log de auditoría y una Transacción de pago asociada que incluye la forma de pago detallada",
"properties": {
"id": {
"type": "string",
"description": "Id de la cotización en Hércules"
},
"idFactura": {
"type": "string",
"description": "Identificador de la Cotización en el sistema facturador. ( Por ejemplo Número de Factura o de la Orden de Venta)"
},
"idFacturaSecundario": {
"type": "string",
"description": "Identificador secundario de la Cotización en el sistema facturador. (Por ejemplo Número de Factura Empresarial)"
},
"idParticipacionOrganizacion": {
"type": "string",
"description": "Id de la ParticipacionOrganizacion en Hércules de la cotización (uso interno)"
},
"fechaCreacion": {
"type": "string",
"description": "Fecha de creación de la cotización"
},
"fechaActualizacion": {
"type": "string",
"description": "Fecha de actualización de la cotización"
},
"fechaExpiracion": {
"type": "string",
"description": "Fecha de expiración de la cotización"
},
"usuario": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Id del usuario en Hércules que realiza la cotización (si se hace por servicio sería el client_id)"
},
"nombre": {
"type": "object",
"properties":{
"completo": {
"type": "string",
"description": "Nombre del usuario que reqliza la cotización"
},
}
}
}
},
"empresa": {
"type": "object",
"properties":{
"nombre": {
"type": "string",
"description": "Nombre de la organización o empresa"
},
}
},
"proveedor": {
"type": "object",
"properties":{
"nombre": {
"type": "string",
"description": "Nombre del proveedor de pago de la cotización"
},
}
},
"costo": {
"type": "object",
"properties":{
"reversion": {
"type": "string",
"description": "Suma del total de las reversiones de cada ítem"
},
"base": {
"type": "string",
"description": "Valor de la base del IVA en la cotización"
},
"iva": {
"type": "string",
"description": "Valor total del IVA en la cotización"
},
"total": {
"type": "object",
"properties":{
"valor": {
"type": "string",
"description": "Suma del total de cada ítem en la cotización. Total Pagado"
},
}
}
}
},
"articulo": {
"type": "array",
"items":{
"$ref": "#/components/schemas/articulo"
}
}
}
},
"articulo": {
"type": "object",
"description": "Hace referencia al servicio que se quiere inscribit, a la persona, y el valor de la inscripción al servicio ",
"properties": {
"tipo": {
"type": "string",
"description": "Tipo del ítem (INSCRIPCION = 1, MATRICULA = 2, MATERIAL = 3, AFILIACION = 4, RESERVA_TURNO = 5, CITA = 6)",
"enum": [
1,
2,
3,
4,
5,
6
]
},
"cantidad": {
"type": "string",
"description": "Cantidad del ítem adquirida"
},
"descripcion": {
"type": "string",
"description": "Descripción del ítem"
},
"centroBeneficio": {
"type": "string",
"description": "Código del centro de beneficios (Centro de Beneficios SAP)"
},
"persona": {
"type": "object",
"properties":{
"nombre": {
"type": "object",
"properties":{
"completo": {
"type": "string",
"description": "Nombre de la persona asociada al ítem"
}
}
},
"documento": {
"type": "object",
"properties":{
"numero": {
"type": "string",
"description": "NNúmero de documento de la persona asociada al ítem"
}
}
},
}
},
"categoria": {
"type": "object",
"properties":{
"sigla": {
"type": "string",
"description": "Nombre de la categoría de precio"
}
}
},
"costo": {
"type": "object",
"properties": {
"nombre": {
"type": "string",
"description": "Nombre del precio aplicado."
},
"codigo": {
"type": "string",
"description": "Código del precio según la tabla de productos enviada. Id Material en SAP"
},
"base": {
"type": "string",
"description": "Valor base del ítem sin impuesto."
},
"impuesto": {
"type": "string",
"description": "Valor del impuesto aplicado sobre el valor"
},
"total": {
"type": "object",
"properties":{
"valor": {
"type": "string",
"description": "Valor total de la suma del valor más el impuesto"
}
}
}
}
},
"servicio": {
"type": "object",
"properties":{
"nombre": {
"type": "string",
"description": "Nombre del titular que realizó la cotización"
},
"costo": {
"$ref": "#/components/schemas/costoServicioCotizacion"
}
}
},
"descuento": {
"type": "array",
"description": "Lista de descuentos aplicados al ítem",
"items":{
"$ref": "#/components/schemas/descuento"
}
}
}
},
"descuento": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Identificador del descuento"
},
"tipo": {
"type": "string",
"description": "Parametro para saber el tipo del descuento.\nLos tipos son los siguientes:\n - 0) CONVENIO: Los convenios son aquellos que no tienen recobro por subsidio a la demanda.\n - 1) DESCUENTO\n - 2) MERCADEO\n\nUn ítem de cotización puede tener a lo sumo tres descuentos, uno de cada tipo entre: convenio, no convenio y mercadeo.",
"enum": [
0,
1,
2
],
},
"codigo": {
"type": "string",
"description": "Código de descuento a aplicar (en caso de escritura) o aplicado (en caso de lectura), puede ser un código único o un código repetible (Cupón)"
},
"nombre": {
"type": "string",
"description": "Nombre del descuento"
},
"mercadeo": {
"type": "string",
"description": "Parámetro que indica que el precio fue modificado por un sistema externo con autorización para cambiar precios."
},
"total": {
"type": "object",
"properties":{
"valor": {
"type": "string",
"description": "Valor final con el descuento aplicado al valor del ítem consultado."
}
}
}
}
},
"costoServicioCotizacion": {
"type": "object",
"properties": {
"base": {
"type": "string",
"description": "Valor de la base (Sin IVA) del precio"
},
"iva": {
"type": "string",
"description": "Valor del IVA para el precio"
},
"fechaInicioVigencia": {
"type": "string",
"description": "Fecha de inicio de la vigencia del precio"
},
"fechaFinVigencia": {
"type": "string",
"description": "Fecha de fin de la vigencia del precio"
},
"total": {
"type": "object",
"properties":{
"valor": {
"type": "string",
"description": "Valor total (incluye IVA) del precio"
}
}
}
}
},
"afiliado": {
"type": "object",
"properties": {
"telefono": {
"type": "string",
"description": "Número de telefono del titular"
},
"correoElectronico": {
"type": "string",
"description": "Correo electrónico del titular de la cotización"
},
"nombre": {
"type": "object",
"properties": {
"completo": {
"type": "string",
"description": "Nombre del titular que realizó la cotización"
}
}
},
"documento": {
"type": "object",
"properties": {
"tipo": {
"type": "string",
"description": "Tipo de documento del titular de la cotización",
"enum": [
"CC",
"CE",
"NIT",
"TI",
"PAS",
"FN",
"RC",
"NUIP",
"MSI",
"CD",
"PEP"
]
},
"numero": {
"type": "string",
"description": "Número de documento de una persona"
}
}
},
"direccion": {
"type": "object",
"properties": {
"direccionPrincipal": {
"type": "string",
"description": "Dirección del titular"
}
}
}
}
},
"consultaCatalogoResponse": {
"type": "object",
"required": [
"resultado"
],
"properties": {
"resultado": {
"type": "array",
"xml": {
"name": "resultado"
},
"items": {
"$ref": "#/components/schemas/resultado"
}
},
"obtenerServicios": {
"type": "array",
"items": {
"$ref": "#/components/schemas/obtenerServicios"
}
}
}
},
"obtenerServicios": {
"type": "object",
"properties": {
"servicio": {
"type": "array",
"items":{
"$ref": "#/components/schemas/servicio"
}
},
"opcionesAplicadas": {
"type": "array",
"items":{
"$ref": "#/components/schemas/opcionesAplicadas"
}
}
}
},
"opcionesAplicadas": {
"type": "object",
"description": "Objeto que contiene la información de las opciones utilizadas para buscar los servicios. Los tipos de opción pueden ser los siguientes:\n * 1) Documento\n * 2) Antiguedad\n * 3) Clasificación\n * 4) Área (Deporte)\n * 5) Sede\n * 6) Días (Entre Semana / Fin de Semana)\n * 7) Horario (Mañana / Tarde / Noche)\n * 8) Nivel (Prueba)\n * 9) Servicio (Prueba Campeonato)\n * 10) Segmento (Edad)",
"properties":{
"valor": {
"type": "string",
"description": "Valor para la opción seleccionada"
},
"tipo": {
"type": "string",
"description": "Nombre del tipo de la opción"
},
"opcion": {
"type": "string",
"description": "Nombre de la opción"
},
"atributos": {
"type": "object",
"description": "Características adicionales de la opción"
},
}
},
"servicio": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Id del servicio"
},
"tipo": {
"type": "string",
"description": "Tipo de servicio que puede existir, los tipos pueden ser los siguientes:\n * 1 ) Escuela\n * 2 ) Practica Libre\n * 3 ) Plan Afiliación\n * 4 ) Cita\n * 5 ) Material"
},
"nombre": {
"type": "string",
"description": "Nombre del servicio"
},
"nombreAbreviado": {
"type": "string",
"description": "Nombre corto del servicio con un tamaño máximo de 25 caracteres"
},
"tiempoFijo": {
"type": "string",
"description": "Indicador que muestra si los usos aumentan el tiempo o solo el valor"
},
"edadMinima": {
"type": "string",
"description": "Edad mínima con la cual se pueden registrar los participantes"
},
"edadMaxima": {
"type": "string",
"description": "Edad máxima con la cual se pueden registrar los participantes"
},
"numeroSesiones": {
"type": "string",
"description": "Número de sesiones del beneficio principal plan de afiliación"
},
"tiempo": {
"type": "string",
"description": "Tiempo de duración en días del beneficio principal del plan de afiliación"
},
"cupos": {
"type": "string",
"description": "Cantidad de cupos disponibles para el servicio"
},
"pruebaTorneo": {
"type": "string",
"description": "Flag que indica si este servicio habilita pruebas para inscripción a torneo."
},
"fechaInicio": {
"type": "string",
"format": "date-time",
"description": "Fecha de inicio."
},
"fechaFin": {
"type": "string",
"format": "date-time",
"description": "Fecha de fin."
},
"beneficios": {
"type": "array",
"description": "Lista del beneficio principal y secundarios del plan de afiliación.",
"items":{
"type": "object",
"properties":{
"id": {
"type": "string",
"description": "Id del beneficio"
},
"numeroSesiones": {
"type": "string",
"description": "Cantidad de usos máximos del beneficio"
},
"tiempo": {
"type": "string",
"description": "Tiempo en días de la vigencia del beneficio"
},
"principal": {
"type": "string",
"description": "Indicador que muestra cuál es el beneficio principal del plan de afiliación"
},
"area": {
"type": "object",
"properties":{
"nombre": {
"type": "string",
"description": "Nombre del area"
},
}
},
"sede": {
"type": "object",
"properties":{
"nombre": {
"type": "string",
"description": "Nombre de la sede"
},
}
},
"centroEntrenamiento": {
"type": "object",
"description": "Objeto que contiene toda la información del centro de entrenamiento",
"properties":{
"id": {
"type": "string",
"description": "Id del centro de entrenamiento"
},
"nombre": {
"type": "string",
"description": "Nombre del centro de entrenamiento"
}
}
},
"prestador": {
"type": "object",
"properties":{
"disponible": {
"type": "string",
"description": "Parametro que describe si el plan de afiliación tiene médico"
}
}
},
}
}
},
"dias": {
"type": "array",
"description": "Se devolvera los dias que su valor sea 'true', los posibles pueden ser los siguientes:\n * lunes\n * martes\n * miercoles\n * jueves\n * viernes\n * entreSemana\n * finSemana",
"format": "string",
"enum": [
lunes,
martes,
miercoles,
jueves,
viernes,
entreSemana,
finSemana
],
"items":{
}
},
"genero": {
"type": "object",
"properties":{
"descripcion": {
"type": "string",
"description": "Género que aplica al centro de entrnamiento"
}
}
},
"turno": {
"type": "object",
"properties":{
"grupal": {
"type": "string",
"description": "Indicador que muestra si el turno aplica para varias personas al tiempo"
},
"personas": {
"type": "string",
"description": "Cantidad de personas máximas por turno"
},
"inmediato": {
"type": "string",
"description": "Indicador que muestra si puede tener inicio inmediato el turno (dentro de los siguientes 5, 10 o 15 min)"
},
"intervalo": {
"type": "string",
"description": "Duración en minutos de cada cuanto se puede obtener turnos"
},
"duracion": {
"type": "string",
"description": "Duración en minutos del turno"
},
"reserva": {
"type": "string",
"description": "Requiere reservar todos los turnos al momento de comprar. Por ejemplo para un pasadía"
}
}
},
"prestador": {
"type": "object",
"properties":{
"disponible": {
"type": "string",
"description": "Parametro que describe si el plan de afiliación tiene médico"
}
}
},
"centroEntrenamiento": {
"type": "object",
"description": "Objeto que contiene toda la información del centro de entrenamiento",
"properties":{
"id": {
"type": "string",
"description": "Id del centro de entrenamiento"
},
"nombre": {
"type": "string",
"description": "Nombre del centro de entrenamiento"
}
}
},
"inscripcion": {
"type": "object",
"properties":{
"fechaInicioAntiguos": {
"type": "string",
"format": "date-time",
"description": "Fecha inicio de inscripcion para antiguos."
},
"fechaFinAntiguos": {
"type": "string",
"format": "date-time",
"description": "Fecha fin de inscripcion para antiguos."
},
"fechaInicioNuevos": {
"type": "string",
"format": "date-time",
"description": "Fecha inicio de inscripcion para nuevos."
},
"fechaFinNuevos": {
"type": "string",
"format": "date-time",
"description": "Fecha fin de inscripcion para nuevos."
},
}
},
"area": {
"type": "object",
"properties":{
"id": {
"type": "string",
"description": "Identificador del área asociada al servicio tipo escuela"
},
"nombre": {
"type": "string",
"description": "Nombre del área"
}
}
},
"nivel": {
"type": "object",
"properties":{
"id": {
"type": "string",
"description": "Identificador del nivel asociado al servicio tipo escuela"
},
"nombre": {
"type": "string",
"description": "Nombre del nivel"
}
}
},
"categoria": {
"type": "object",
"properties":{
"id": {
"type": "string",
"description": "Identificador de la categoria asociada a servicio tipo escuela"
},
"nombre": {
"type": "string",
"description": "Nombre de la categoría de edad"
}
}
},
"ciclo": {
"type": "object",
"properties":{
"id": {
"type": "string",
"description": "Identificador del ciclo de inscripción del servicio"
},
"nombre": {
"type": "string",
"description": "Nombre del ciclo de inscripción"
}
}
},
"sede": {
"type": "object",
"properties":{
"id": {
"type": "string",
"description": "Identificador de la sede del servicio de tipo escuela"
},
"nombre": {
"type": "string",
"description": "Nombre de la sede del servicio"
}
}
},
"material": {
"type": "object",
"properties":{
"id": {
"type": "string",
"description": "Identificador o id del material"
},
"tipo": {
"type": "string",
"description": "Tipo del material:\n * 1) Referencia\n * 2) Transporte\n * 3) Turno\n * 4) Articulo"
},
"descripcion": {
"type": "string",
"description": "Nombre del material"
}
}
},
"atributo": {
"type": "array",
"items":{
"type": "object",
"properties":{
"tipo": {
"type": "string",
"description": "Tipo de atributo en especifico, estos tipos de atributos se sacan de la lista enumerada en el objeto"
},
"valor": {
"type": "string",
"description": "Valor de atributo"
}
}
}
},
"costo": {
"type": "array",
"items":{
"type": "object",
"properties":{
"nombre": {
"type": "string",
"description": "Nombre del precio"
},
"iva": {
"type": "string",
"description": "Valor del IVA para el precio"
},
"base": {
"type": "string",
"description": "Valor de la base (Sin IVA) del precio"
},
"fechaInicioVigencia": {
"type": "string",
"format": "date-time",
"description": "Fecha de inicio de la vigencia del precio"
},
"fechaFinVigencia": {
"type": "string",
"format": "date-time",
"description": "Fecha de fin de la vigencia del precio"
},
"categoria": {
"type": "object",
"properties":{
"sigla": {
"type": "string",
"description": "Nombre de la categoría de precio"
}
}
},
"total": {
"type": "object",
"properties":{
"valor": {
"type": "string",
"description": "Valor total (incluye IVA) del precio"
}
}
}
}
}
}
}
}
},
"requestBodies": {
"registrarDatosClienteRequestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/registrarDatosClienteRequest"
}
}
},
"description": "Informacion para registrar clientes",
"required": true
},
"inscribirMembresiaRequestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/inscribirMembresiaRequest"
}
}
},
"description": "Información de la fórmula médica",
"required": true
},
"reservarTurnoPracticaLibreRequestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/reservarTurnoPracticaLibreRequest"
}
}
},
"description": "Información de la fórmula médica",
"required": true
},
"disponibilidadPracticaLibreRequestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/disponibilidadPracticaLibreRequest"
}
}
},
"description": "Información de la fórmula médica",
"required": true
}
},
"securitySchemes": {
"apigee_auth": {
"type": "oauth2",
"flows": {
"clientCredentials": {
"tokenUrl": "https://colsubsidio-test.apigee.net/oauth/client_credential/accesstoken?grant_type=client_credentials",
"scopes": {
"write:apigee": "Permisos de escritura",
"read:apigee": "Permisos de lectura"
}
}
}
}
}
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment