diff --git a/apigee/recreacionyturismo-afiliados.json b/apigee/recreacionyturismo-afiliados.json index 1ae03e6..9f91e55 100644 --- a/apigee/recreacionyturismo-afiliados.json +++ b/apigee/recreacionyturismo-afiliados.json @@ -27,6 +27,10 @@ { "name": "cols-recreacionyturismo-afiliados", "description": "Informacion de afiliados." + }, + { + "name": "cols-recreacionyturismo-reservashoteles", + "description": "Servicios de reserva de hoteles." } ], "paths": { @@ -349,6 +353,42 @@ ] } }, + "/v1/recreacionyturismo/afiliados/pago/reserva": { + "post": { + "tags": [ + "cols-recreacionyturismo-afiliados" + ], + "summary": "Pagar reserva", + "description": "Pagar reserva", + "operationId": "pagarReserva.v1", + "responses": { + "200": { + "description": "Operación exitosa", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pagarReservaResponse" + } + } + } + }, + "400": { + "description": "Estado inválido" + } + }, + "security": [ + { + "apigee_auth": [ + "write:apigee", + "read:apigee" + ] + } + ], + "requestBody": { + "$ref": "#/components/requestBodies/pagarReservaRequestBody" + } + } + }, "/v1/recreacionyturismo/afiliados/turno/persona": { "get": { "tags": [ @@ -481,6 +521,144 @@ "name": "resultado" } }, + "pagarReservaResponse": { + "type": "object", + "required": [ + "resultado" + ], + "properties": { + "resultado": { + "type": "array", + "xml": { + "name": "resultado" + }, + "items": { + "$ref": "#/components/schemas/resultado" + } + } + } + }, + "pagarReservaRequest": { + "type": "object", + "properties": { + "fechaEjecucion": { + "type": "string", + "format": "date-time", + "description": "Fecha de ejecucion" + }, + "canal": { + "type": "string", + "description": "Canal" + }, + "hotel": { + "$ref": "#/components/schemas/hotel" + }, + "reserva": { + "$ref": "#/components/schemas/reserva" + }, + "recaudador": { + "$ref": "#/components/schemas/recaudador" + } + } + }, + "recaudador": { + "type": "object", + "properties": { + "codigo": { + "type": "string", + "description": "Codigo del recaudador." + }, + "canal": { + "type": "string", + "description": "Canal del recaudador." + }, + "ubicacion": { + "type": "string", + "description": "Ubicacion del recaudador." + }, + "convenio": { + "type": "object", + "properties":{ + "codigo": { + "type": "string", + "description": "Codigo del convenio." + } + } + }, + "terminal": { + "type": "object", + "properties":{ + "id": { + "type": "string", + "description": "Numero de identificacion del terminal." + } + } + } + } + }, + "pagoReserva": { + "type": "object", + "properties": { + "fecha": { + "type": "string", + "format": "date-time", + "description": "Fecha del recaudo." + }, + "total": { + "type": "object", + "properties": { + "valor": { + "type": "string", + "description": "Valor total del recaudo.." + } + } + }, + "medio": { + "type": "array", + "items":{ + "properties": { + "id": { + "type": "string", + "description": "Referencia del medio de pago." + }, + "codigo": { + "type": "string", + "description": "Codigo del medio de pago." + }, + "valor": { + "type": "string", + "description": "Valor del medio de pago." + } + } + } + }, + } + }, + "reserva": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Numero de confirmacion de la reserva." + }, + "pago": { + "$ref": "#/components/schemas/pagoReserva" + } + } + }, + "hotel": { + "type": "object", + "properties": { + "codigo": { + "type": "string", + "description": "Codigo de hotel." + }, + "cadena": { + "type": "string", + "description": "Cadena de hotel." + } + } + }, "consultaTurnoPersonaResponse": { "type": "object", "required": [ @@ -2234,6 +2412,17 @@ } }, "requestBodies": { + "pagarReservaRequestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/pagarReservaRequest" + } + } + }, + "description": "Informacion para registrar clientes", + "required": true + }, "registrarDatosClienteRequestBody": { "content": { "application/json": {