Você está na página 1de 79

Barramento Azul Viagens

Manual de Utilização
do Barramento
Azul Viagens
v2.3.6
Barramento Azul Viagens

Sumário
Introdução ............................................................................................................................. 4
Authentication ....................................................................................................................... 5
Token ............................................................................................................................... 6
Authenticate .................................................................................................................... 7
Configuration ........................................................................................................................ 8
Feature Flags ................................................................................................................... 9
Loyalty ................................................................................................................................ 10
Customer ....................................................................................................................... 11
Catalog ............................................................................................................................... 12
Destinations .................................................................................................................. 13
Destinations for Ticket.................................................................................................. 14
Suggested Ticket Destinations .................................................................................... 15
Content .......................................................................................................................... 16
Cep ................................................................................................................................. 18
Hotel List........................................................................................................................ 19
Rating ................................................................................................................................. 20
Hotel Rating Details ...................................................................................................... 21
Hotel Availability.................................................................................................................. 22
Hotel Availability ........................................................................................................... 23
V1 ................................................................................................................................ 23
V2 ................................................................................................................................ 27
Accommodations .......................................................................................................... 31
Accommodations Details ............................................................................................. 33
Hotel Recommendations .............................................................................................. 36
Ticket Availability ................................................................................................................ 37
Ticket Availability .......................................................................................................... 38
Ticket Data ..................................................................................................................... 41
Ticket Options by Date ................................................................................................. 42
Ticket Details ................................................................................................................. 44
Payment.............................................................................................................................. 46
Payment ......................................................................................................................... 47
Installments ................................................................................................................... 49
Bins ................................................................................................................................ 50
Booking ............................................................................................................................... 51
Booking Passenger ....................................................................................................... 52
Booking Passengers ..................................................................................................... 53
Booking Discounts ....................................................................................................... 54
Barramento Azul Viagens

Booking Status .............................................................................................................. 55


Booking Data ................................................................................................................. 56
Booking Locator............................................................................................................ 57
Booking Details ............................................................................................................. 58
V1 ................................................................................................................................ 58
V2 ................................................................................................................................ 60
Booking Voucher .......................................................................................................... 62
V1 ................................................................................................................................ 62
V2 ................................................................................................................................ 65
Booking Ticket Details .................................................................................................. 68
Booking Ticket Voucher ............................................................................................... 70
Booking Cancellation Information ............................................................................... 72
Booking Cancellation.................................................................................................... 73
Notifications ........................................................................................................................ 74
Booking Notification ..................................................................................................... 75
Lista de Enums ................................................................................................................... 76
iconCode........................................................................................................................ 76
Sort................................................................................................................................. 76
Document type .............................................................................................................. 76
Board type ..................................................................................................................... 76
Board names ................................................................................................................. 77
Cancellation Type ......................................................................................................... 77
Type – Payment e Installments .................................................................................... 77
Status de reservas ........................................................................................................ 77
Cancellation names ...................................................................................................... 78
Rating names ................................................................................................................ 78
Discounts errors ........................................................................................................... 78
Currency Code .............................................................................................................. 78
Passenger type – Booking Passengers ....................................................................... 78
Passenger type – Booking Ticket Details e Voucher .................................................. 79
Barramento Azul Viagens

Introdução
Este documento destina-se aos desenvolvedores de sistemas que utilizarão o Barramento
Azul Viagens.

Serão abordados os serviços abaixo:


• Authentication: Para realizar a autenticação e autorização para consumo deste
barramento;
• Configuration: Para armazenar, distribuir e gerenciar configurações e feature flags.
• Loyalty: Para obter informações de cliente TudoAzul;
• Catalog: Para obter informações dos dados estáticos (destinos, hotéis etc.);
• Rating: Para obter dados de avaliações de hotéis;
• Availability: Para obter as disponibilidades e preços das reservas dos hotéis;
• Ticket Availability: Para obter as disponibilidades e preços da compra de ingressos;
• Booking: Para realizar e buscar informações sobre reservas;
• Payment: Para realizar e buscar informações sobre o pagamento da reserva;
• Notifications: Para enviar e-mails e outras notificações para o cliente final.
Barramento Azul Viagens

Authentication
O serviço de Authentication é responsável por autenticar e identificar o usuário sistêmico do
Barramento Azul Viagens.

A obtenção do Token através do serviço Authentication é obrigatória no início da sessão de


cada usuário final e deve ser utilizado até o final da sessão deste usuário.

O Token irá expirar após 15 minutos de inatividade. Após este tempo, será necessário solicitar
um novo Token, caso contrário o método chamado irá retornar HTTP 403: Forbidden

Sistemas B2C

Só é necessária a chamada do método Token no início de cada sessão do usuário final. Não
se faz necessário chamar o método Authenticate.

Sistemas B2B

São necessárias as chamadas do método Token e o método Authenticate no início de cada


sessão do usuário final.

O Barramento não irá funcionar adequadamente se for iniciado um Availability e depois for
realizada chamada do método Authenticate.

URLs

Ambiente de Testes:
https://general-api-tst.voeazul.com.br/sales/azulviagens/authentication/ + URL relativa da API

Ambiente de Homologação: (recomendado)


https://general-api-stg.voeazul.com.br/sales/azulviagens/authentication/ + URL relativa da API

Exemplo:
https://general-api-stg.voeazul.com.br/sales/azulviagens/authentication/api/v1/authentication/token
Barramento Azul Viagens

Token
Método responsável por autenticar o sistema da Azul que utilizará os serviços do Barramento
Azul Viagens.
Este método deverá ser chamado no início de uma nova sessão do usuário final.

URL:
POST /api/v1/authentication/token

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Tipo do cliente (B2B ou B2C)

Responses:
HTTP 200: OK
{
"data": "string",
"notifications": [
"string"
]
}
HTTP 400: Bad Request (client inválido)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Authenticate
Método responsável por autenticar os sistemas parceiros que utilizarão os serviços do
Barramento Azul Viagens.

Este método deverá ser chamado após obter o Token e antes do início do processo do
Availability somente para os sistemas B2B.

URL:
POST /api/v1/authentication/authenticate

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Tipo do cliente (B2B ou B2C)
Authorization string Token recebido no método Token

Request:
{
"username": "string",
"password": "string"
}
Responses:
HTTP 200: OK
{
"data": {},
"notifications": [
"string"
]
}
HTTP 400: Bad Request (senha ou usuário não fornecidos)
HTTP 401: Unauthorized
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Configuration
O serviço de Configuration é responsável por armazenar, distribuir e gerenciar configurações
e feature flags do Barramento AzulViagens

URLs

Ambiente de Testes:
https://general-api-tst.voeazul.com.br/sales/azulviagens/configuration/ + URL relativa da API

Ambiente de Homologação: (recomendado)


https://general-api-stg.voeazul.com.br/sales/azulviagens/configuration/ + URL relativa da API

Exemplo:
https://general-api-stg.voeazul.com.br/sales/azulviagens/configuration/api/v1/featureflags
Barramento Azul Viagens

Feature Flags
Método responsável por retornar a lista de feature flags e seu status (true/false).

URL:
GET /api/v1/featureflags

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Authorization string Token recebido no serviço Authentication
Client string Tipo do cliente (B2B ou B2C)

Responses:
HTTP 200: OK
{
"data": {
"featureFlags": {
"featureName": "Boolean"
}
},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
HTTP 404: Not found (feature flags não encontradas)
Barramento Azul Viagens

Loyalty
O serviço de Loyalty é responsável por gerenciar o cliente TudoAzul, incluindo autenticação,
pontos, número TudoAzul entre outros.

URLs

Ambiente de Testes:
https://general-api-tst.voeazul.com.br/sales/azulviagens/loyalty/ + URL relativa da API

Ambiente de Homologação: (recomendado)


https://general-api-stg.voeazul.com.br/sales/azulviagens/loyalty/ + URL relativa da API

Exemplo:
https://general-api-stg.voeazul.com.br/sales/azulviagens/loyalty/api/v1/
Barramento Azul Viagens

Customer
Método que retorna os dados do cliente Tudo Azul.

URL:
GET
/api/v1/customer/{documentNumber}
?firstName={firstName}&lastName={lastName}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Keysettings
Client string Device utilizado para acessar o Barramento
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
documentNumber string CPF ou Número Tudo Azul do cliente

Query string:
Campo Tipo Descrição
firstName string Primeiro nome
lastName string Último sobrenome

Responses:
HTTP 200: OK
{
"data": {
"customer": {
"cpf": "string",
"birthDate": "string date ISO",
"name": {
"first": "string",
"last": "string"
}
},
"program": {
"levelCode": "string",
"name": "string"
}
},
"notifications": [
"string"
]
}
HTTP 400: Bad Request (CPF ou sobrenome digitado é inválido/em branco)
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Catalog
O serviço de Catalog é responsável por retornar os dados estáticos do Azul Viagens, como
lista de Destinos, dados estáticos de Hotéis, etc.

Para realizar as chamadas dos métodos do Catalog, é necessário passar um Token obtido
através do serviço Authentication.

URLs

Ambiente de Testes:
https://general-api-tst.voeazul.com.br/sales/azulviagens/catalog/ + URL relativa da API

Ambiente de Homologação: (recomendado)


https://general-api-stg.voeazul.com.br/sales/azulviagens/catalog/ + URL relativa da API

Exemplo:
https://general-api-stg.voeazul.com.br/sales/azulviagens/catalog/api/v1/catalog/destinations
Barramento Azul Viagens

Destinations
Método que retorna a lista de destinos (Cidades, Bairros e Hotéis) que possuem determinados
caracteres no nome. Deverá ser informado pelo menos 3 caracteres do destino.

URL:
GET /api/v1/catalog/destinations?name={name}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Device utilizado para acessar o Barramento
Authorization string Token recebido no serviço Authentication

QueryString:
Campo Tipo Descrição
name string Nome do destino

Responses:
HTTP 200: OK
{
"data": [
{
"type": "string",
"destinations": [
{
"id": "string",
"name": "string",
"address": {
"neighborhood": "string",
"city": "string",
"state": "string",
"country": "string"
}
}
]
}
],
"notifications": [
"string"
]
}
HTTP 204: No Content
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Destinations for Ticket


Método que retorna a lista de destinos (cidades, bairros e ingressos) que possuem
determinados caracteres no nome. Deverá ser informado pelo menos 3 caracteres do destino.

URL:
GET /api/v1/catalog/ticket/destinations?name={name}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Device utilizado para acessar o Barramento
Authorization string Token recebido no serviço Authentication

QueryString:
Campo Tipo Descrição
name string Nome do destino

Responses:
HTTP 200: OK
{
"data": {
"destinations": [
{
"id": "string",
"name": "string",
"type": "string enum",
"address": {
"city": "string",
"state": "string",
"country": "string"
}
}
]
},
"notifications": [
"string"
]
}
HTTP 204: No Content
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Suggested Ticket Destinations


Método que retorna a lista fixa de destinos sugeridos pré-definidos por configuração prévia.

URL:
GET /api/v1/catalog/ticket/suggested

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Device utilizado para acessar o Barramento
Authorization string Token recebido no serviço Authentication

Responses:
HTTP 200: OK
{
"data": {
"suggested": [
{
"id": "string",
"name": "string",
"type": "string",
"address": {
"city": "string",
"state": "string",
"country": "string"
}
}
]
},
"notifications": [
"string"
]
}
HTTP 204: No Content
HTTP 401: Unauthorized
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Content
Método que retorna os dados estáticos do Hotel.

URL:
GET /api/v1/catalog/hotels/{idHotel}/content

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Keysettings
Client string Device utilizado para acessar o Barramento
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
idHotel string Deverá ser informado o identificador de hotel

Responses:
HTTP 200: OK
{
"data": {
"id": "string",
"name": "string",
"description": "string",
"rules": "string",
"location": {
"latitude": "string",
"longitude": "string",
"address": {
"street": "string",
"postalCode": "string",
"neighborhood": "string",
"city": "string",
"state": "string",
"country": "string"
},
"pointsOfInterest": [
{
"distance": "string",
"name": "string"
}
]
},
"contactInformation": {
"emails": [
"string"
],
"faxes": [
"string"
],
"phoneNumbers": [
"string"
]
},
"images": [
{
"url": "string",
"title": "string"
}
],
"chain": "string",
"category": "string",
"amenities": [
{
"name": "string",
"iconCode": "string enum"
Barramento Azul Viagens

}
],
"services": [
{
"title": "string",
"items": [
"string"
]
}
],
"labels": [
"string"
],
"checkIn": "string",
"checkOut": "string"
},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
HTTP 204: No Content
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Cep
Método que retorna o endereço através de um CEP informado.

URL:
GET /api/v1/catalog/postalCode/{postalCode}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Keysettings
Client string Device utilizado para acessar o Barramento
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
postalCode string Deverá ser informado o cep pesquisado

Responses:
HTTP 200: OK
{
"data": [
{
"type": "string",
"street": "string",
"neighborhood": "string",
"city": "string",
"state": "string",
"postalCode": "string"
}
],
"notifications": [
"string"
]
}
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Hotel List
Método que retorna a lista de código dos hotéis de um destino específico. Este método é de
utilização interna do Barramento Azul Viagens.

URL:
GET /api/v1/catalog/destinations/{idDestination}/hotels

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Device utilizado para acessar o Barramento
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
IdDestination string Deverá ser informado o código do destino

Responses:
HTTP 200: OK
{
"data": [
{
"id": "string",
}
],
"notifications": [
"string"
]
}
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 204: No Content (Destino não encontrado)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Rating
O serviço de Rating é responsável por retornar os dados de avaliações de hotéis e outros
serviços do Azul Viagens.

Para realizar as chamadas dos métodos do Rating, é necessário passar um Token obtido
através do serviço Authentication.

URLs

Ambiente de Testes:
https://general-api-tst.voeazul.com.br/sales/azulviagens/rating/ + URL relativa da API

Ambiente de Homologação: (recomendado)


https://general-api-stg.voeazul.com.br/sales/azulviagens/rating/ + URL relativa da API

Exemplo:
https://general-api-stg.voeazul.com.br/sales/azulviagens/rating/api/v1/rating/hotel
Barramento Azul Viagens

Hotel Rating Details


Método que retorna a lista de avaliações de um determinado hotel. Deverá ser informado o
código do hotel.

URL:
GET /api/v1/rating/hotel/{idHotel}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Device utilizado para acessar o Barramento
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
idHotel string Id do Hotel

Responses:
HTTP 200: OK
{
"data": {
"rating": {
"count": 0,
"classification": "string",
"value": 0
},
"reviewsCount": 0,
"reviews": [
{
"author": "string",
"rating": 0,
"date": "string datetime UTC ISO",
"relativeDate": "string",
"comment": "string",
"classification": "string"
}
]
},
"notifications": [
"string"
]
}
HTTP 204: No Content (não foram encontradas avaliações para o hotel)
HTTP 400: Bad Request (ID do hotel inválido)
HTTP 404: Not Found (hotel não encontrado)
HTTP 401: Unauthorized
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Hotel Availability
O serviço de Hotel Availability é responsável por retornar as disponibilidades e precificações
das Acomodações dos Hotéis

Para realizar as chamadas dos métodos do Hotel Availability, é necessário passar um Token
obtido através do serviço Authentication.

URLs

Ambiente de Testes:
https://general-api-tst.voeazul.com.br/sales/azulviagens/hotel/availability/ + URL relativa da API

Ambiente de Homologação: (recomendado)


https://general-api-stg.voeazul.com.br/sales/azulviagens/hotel/availability/ + URL relativa da API

Exemplo:
https://general-api-stg.voeazul.com.br/sales/azulviagens/hotel/availability/api/v1/hotel/availability
Barramento Azul Viagens

Hotel Availability
Método responsável por realizar as consultas de disponibilidades e preços dos Hotéis para
um determinado destino.

V1

URL:
POST /api/v1/hotel/availability

(Este método será removido em 12/04/2023. Usar api/v2/hotel/availability)

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Request:
{
"criteria": {
"idDestination": "string",
"checkIn": "string",
"checkOut": "string",
"accommodations": [
{
"adults": 0,
"children": [
{
"age": 0
}
]
}
]
},
"filters": {
"categories": [
{
"id": "string"
}
],
"ratings": [
{
"id": "string"
}
],
"price": {
"min": 0,
"max": 0
},
"pointOfInterest": {
"id": "string",
"radius": 0
},
"amenities": [
{
"id": "string"
}
],
"labels": [
{
"id": "string"
}
],
Barramento Azul Viagens

"chains": [
{
"id": "string"
}
],
"neighborhoods": [
{
"id": "string"
}
],
"name": "string"
},
"page": {
"number": 0,
"size": 0,
"sort": "string"
}
}

Responses:
HTTP 200: OK
{
"data": {
"criteria": {
"availabilityKey": "string",
"nights": 0
},
"hotels": [
{
"id": "string",
"name": "string",
"location": {
"latitude": "string",
"longitude": "string",
"address": {
"street": "string",
"postalCode": "string",
"neighborhood": "string",
"city": "string",
"state": "string",
"country": "string"
},
"downtownDistance": "string",
"pointsOfInterest": [
{
"name": "string",
"distance": "string"
}
]
},
"cancellationPolicyDescription": "string",
"availableAccommodations": 0,
"images": [
{
"title": "string",
"url": "string"
}
],
"chain": "string",
"category": "string",
"labels": [
"string"
],
"amenities": [
{
"name": "string",
"iconCode": "string enum"

}
],
Barramento Azul Viagens

"price": {
"offer": "boolean",
"original": 0,
"installment": {
"amount": 0,
"rate": 0
},
"discounted": 0,
"currencyCode": "string enum"
},
"rating": {
"count": 0,
"classification": "string",
"value": 0
}
}
],
"filters": {
"categories": [
{
"quantity": 0,
"name": "string",
"id": "string"
}
],
"ratings": [
{
"quantity": 0,
"name": "string",
"id": "string"
}
],
"price": {
"min": 0,
"max": 0
},
"pointsOfInterest": [
{
"name": "string",
"id": "string"
}
],
"amenities": [
{
"quantity": 0,
"name": "string",
"id": "string"
}
],
"labels": [
{
"quantity": 0,
"name": "string",
"id": "string"
}
],
"chains": [
{
"quantity": 0,
"name": "string",
"id": "string"
}
],
"neighborhoods": [
{
"quantity": 0,
"name": "string",
"id": "string"
}
],
"names": [
Barramento Azul Viagens

"string"
],
"sorting": [
"string"
]
},
"page": {
"number": 0,
"total": 0,
"totalResults": 0
}
},
"notifications": [
"string"
]
}
HTTP 204: No Content
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 502: Bad Gateway (Resposta do provedor inválida)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

V2

URL:
POST /api/v2/hotel/availability

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Request:
{
"criteria": {
"idDestination": "string",
"checkIn": "string",
"checkOut": "string",
"accommodations": [
{
"adults": 0,
"children": [
{
"age": 0
}
]
}
]
},
"filters": {
"categories": [
{
"id": "string"
}
],
"ratings": [
{
"id": "string"
}
],
"price": {
"min": 0,
"max": 0
},
"pointOfInterest": {
"id": "string",
"radius": 0
},
"amenities": [
{
"id": "string"
}
],
"labels": [
{
"id": "string"
}
],
"boards": [
{
"id": "string"
}
],
"chains": [
{
"id": "string"
}
],
Barramento Azul Viagens

"neighborhoods": [
{
"id": "string"
}
],
"name": "string",
"freeCancellation": "boolean"
},
"page": {
"number": 0,
"size": 0,
"sort": "string enum"
}
}

Responses:
HTTP 200: OK
{
"data": {
"criteria": {
"availabilityKey": "string",
"nights": 0,
"destination": {
"name": "string",
"type": "string enum"
},
"hotels": [
{
"id": "string",
"name": "string",
"location": {
"latitude": "string",
"longitude": "string",
"address": {
"street": "string",
"postalCode": "string",
"neighborhood": "string",
"city": "string",
"state": "string",
"country": "string"
},
"downtownDistance": "string",
"pointsOfInterest": [
{
"name": "string",
"distance": "string"
}
]
},
"cancellationPolicyDescription": "string",
"boardType": "string",
"availableAccommodations": 0,
"images": [
{
"title": "string",
"url": "string"
}
],
"chain": "string",
"category": "string",
"labels": [
"string"
],
"amenities": [
{
"iconCode": "string enum",
"name": "string"
}
],
"price": {
Barramento Azul Viagens

"offer": "boolean",
"original": 0,
"installment": {
"amount": 0,
"rate": 0
},
"discounted": 0,
"currencyCode": "string enum"
},
"rating": {
"count": 0,
"classification": "string",
"value": 0
}
}
],
"filters": {
"categories": [
{
"quantity": 0,
"name": "string",
"id": "string"
}
],
"ratings": [
{
"quantity": 0,
"name": "string",
"id": "string"
}
],
"price": {
"min": 0,
"max": 0
},
"pointsOfInterest": [
{
"name": "string",
"id": "string"
}
],
"amenities": [
{
"quantity": 0,
"name": "string",
"id": "string"
}
],
"labels": [
{
"quantity": 0,
"name": "string",
"id": "string"
}
],
"chains": [
{
"quantity": 0,
"name": "string",
"id": "string"
}
],
"neighborhoods": [
{
"quantity": 0,
"name": "string",
"id": "string"
}
],
"names": [
"string"
Barramento Azul Viagens

],
"sorting": [
"string"
],
"boards": [
{
"quantity": 0,
"name": "string",
"id": "string"
}
],
"freeCancellation": "boolean"
},
"page": {
"number": 0,
"total": 0,
"totalResults": 0
}
}
},
"notifications": [
"string"
]
}
HTTP 204: No Content
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 502: Bad Gateway (Resposta do provedor inválida)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Accommodations
Método que retorna disponibilidade dos quartos de um determinado Hotel.

URL:
GET /api/v1/hotel/{idHotel}/availability/
{availabilityKey}/accommodations

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
idHotel string Id do Hotel
availabilityKey string Chave do Availability

Responses:
HTTP 200: OK
{
"data": {
"accommodations": [
{
"id": "string",
"descriptions": [
{
"accommodationName": "string",
"description": "string"
}
],
"hold": {
"available": false,
"time": 0
},
"accommodations": [
{
"name": "string",
"rooms": 0,
"available": 0,
"size": {
"unit": "string",
"value": 0
},
"amenities": [
"string"
],
"images": [
{
"title": "string",
"url": "string"
}
],
"category": "string",
"occupancy": {
"limit": 0,
"adults": 0,
"children": 0
}
}
],
"supplier": "string",
"nights": 0,
"board": {
Barramento Azul Viagens

"name": "string",
"type": "string enum"
},
"checkIn": "string",
"price": {
"lowest": "boolean",
"offers": [
{
"name": "string",
"description": "string"
}
],
"original": 0,
"installment": {
"amount": 0,
"rate": 0
},
"discounted": 0,
"currencyCode": "string enum"
},
"cancellationPolicy": {
"type": "string enum",
"freeCancellationUntilDate": "string datetime ISO",
"description": "string"
}
}
]
},
"notifications": [
"string"
]
}
HTTP 204: No Content
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Accommodations Details
Método que retorna as informações detalhadas para realizar a reserva das acomodações.

URL:
POST /api/v1/hotel/{idHotel}/availability/
{availabilityKey}/accommodations/details

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
idHotel string Id do Hotel
availabilityKey string Chave do Availability

Request:
{
"hold": "boolean",
"accommodations": [
{
"id": "string",
"quantity": 0
}
]
}
Responses:
HTTP 200: OK
{
"data": {
"bookingKey": "string",
"hotel": {
"name": "string",
"location": {
"latitude": "string",
"longitude": "string",
"address": {
"street": "string",
"postalCode": "string",
"neighborhood": "string",
"city": "string",
"state": "string",
"country": "string"
}
},
"description": "string",
"rules": "string",
"contactInformation": {
"emails": [
"string"
],
"faxes": [
"string"
],
"phoneNumbers": [
"string"
]
},
"images": [
{
"url": "string",
Barramento Azul Viagens

"title": "string"
}
],
"chain": "string",
"category": "string",
"labels": [
"string"
],
"amenities": [
{
"name": "string",
"iconCode": "string enum"
}
],
"services": [
{
"title": "string",
"items": [
"string"
]
}
],
"checkIn": "string",
"checkOut": "string"
},
"accommodations": [
{
"name": "string",
"rooms": 0,
"available": 0,
"size": {
"unit": "string",
"value": 0
},
"amenities": [
"string"
],
"images": [
"string"
],
"category": "string",
"occupancy": {
"limit": 0,
"adults": 0,
"children": 0
}
}
],
"supplier": "string",
"board": {
"name": "string",
"type": "string enum"
},
"price": {
"offers": [
{
"name": "string",
"description": "string"
}
],
"original": 0,
"installment": {
"amount": 0,
"rate": 0
},
"discounted": 0,
"currencyCode": "string enum"
},
"descriptions": [
{
"accommodationName": "string",
Barramento Azul Viagens

"description": "string"
}
],
"cancellationPolicy": {
"type": "string enum",
"freeCancellationUntilDate": "string datetime ISO",
"description": "string"
},
"hold": {
"available": false,
"time": 0
}
},
"notifications": [
"string"
]
}
HTTP 204: No Content
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 424: Failed Dependency
HTTP 502: Bad Gateway (Resposta do provedor inválida)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Hotel Recommendations
Método de recomendações de Hotéis semelhantes.

URL:
GET /api/v1/hotel/{idHotel}/availability/
{availabilityKey}/recommendations

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
idHotel string Id do Hotel
availabilityKey string Chave do Availability

Responses:
HTTP 200: OK
{
"data": [
{
"id": "string",
"name": "string",
"images": [
"string"
],
"chain": "string",
"category": "string",
"labels": [
"string"
],
"price": {
"original": 0,
"installment": {
"amount": 0,
"rate": 0
},
"discounted": 0,
"currencyCode": "string enum"
},
"location": {
"latitude": "string",
"longitude": "string",
"address": {
"neighborhood": "string",
"city": "string",
"state": "string"
},
"hotelDistance": "string"
}
}
],
"notifications": [
"string"
]
}
HTTP 204: No Content
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 504: Gateway Timeout (Timeout de requisições externas
Barramento Azul Viagens

Ticket Availability
O serviço de Ticket Availability é responsável por retornar as disponibilidades e precificações
dos ingressos.

Para realizar as chamadas dos métodos do Ticket Availability, é necessário passar um Token
obtido através do serviço Authentication.

URLs

Ambiente de Testes:
https://general-api-tst.voeazul.com.br/sales/azulviagens/ticket/availability/ + URL relativa da API

Ambiente de Homologação: (recomendado)


https://general-api-stg.voeazul.com.br/sales/azulviagens/ticket/availability/ + URL relativa da API

Exemplo:
https://general-api-stg.voeazul.com.br/sales/azulviagens/ticket/availability/api/v1/ticket/availability
Barramento Azul Viagens

Ticket Availability
Método responsável por realizar as consultas de disponibilidades e preços dos ingressos para
um determinado destino ou grupo.

URL:
POST /api/v1/ticket/availability

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Content-Type string application/json
Authorization string Token recebido no serviço Authentication

Request:
{
"criteria": {
"idDestination": "string",
"dates": {
"from": "string",
"to": "string"
},
"passengers": {
"adults": 0,
"children": [
{
"age": 0
}
]
},
"banner": "string"
},
"filters": {
"price": {
"min": 0,
"max": 0
},
"labels": [
{
"id": "string"
}
],
"attractionTypes": [
{
"id": "string"
}
],
"name": "string"
},
"sort": "string"
}
Barramento Azul Viagens

Responses:
HTTP 200: OK
{
"data": {
"criteria": {
"destination": {
"name": "string",
"type": "string enum"
}
},
"ticketsGroups": [
{
"name": "string",
"tickets": [
{
"key": "string",
"name": "string",
"labels": [
"string"
],
"image": {
"title": "string",
"url": "string"
},
"loyalty": {
"accrual": 0
},
"price": {
"original": 0,
"installments": 0,
"currencyCode": "Enum string"
},
"date": "string",
"externalCode": "string"
}
]
}
],
"filters": {
"price": {
"min": 0,
"max": 0
},
"labels": [
{
"id": "string",
"name": "string",
"quantity": 0
}
],
"attractionTypes": [
{
"id": "string",
"name": "string",
"quantity": 0
}
],
"names": [
"string"
],
"sorting": [
"string"
]
},
"totalResults": 0
},
"notification": [
"string"
]
}
Barramento Azul Viagens

HTTP 204: No Content


HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Ticket Data
Método que retorna disponibilidade das datas de um determinado Ingresso.

URL:
GET /api/v1/ticket/{ticketKey}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
ticketKey string Chave do ticket

Responses:
HTTP 200: OK
{
"data": {
"ticket": {
"name": "string",
"descriptions": [
{
"title": "string",
"value": "string"
}
],
"groups": ["string"],
"images": [
{
"title": "string",
"url": "string"
}
],
"dates": [
{
"date": "string",
"available": "boolean",
"price": {
"original": 0,
"currencyCode": "string enum"
}
}
]
}
},
"notifications": [
"string"
]
}
HTTP 204: No Content
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Ticket Options by Date


Método que retorna as opções disponíveis para datas de um determinado Ingresso.

URL:
GET /api/v1/ticket/{ticketKey}/{date}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
ticketKey string Chave do ticket
date string Data (yyyy-mm-dd)

Responses:
HTTP 200: OK
{
"data": {
"parks": [
{
"dates": [
"string Datetime ISO"
],
"names": [
"string"
]
}
],
"tickets": [
{
"name": "string",
"options": [
{
"key": "string",
"name": "string",
"days": 0,
"dates": {
"from": "string Datetime ISO",
"to": "string Datetime ISO"
},
"passengers": {
"adults": 0,
"children": 0
},
"loyalty": {
"accrual": 0
},
"price": {
"original": 0,
"difference": 0,
"installment": 0,
"currencyCode": "string enum"
},
"descriptions": [
{
"title": "string",
"value": "string"
}
]
}
]
}
Barramento Azul Viagens

],
"cancellationPolicy": "string"
},
"notifications": [
"string"
]
}
HTTP 204: No Content
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Ticket Details
Método que retorna as informações detalhadas da seleção de um determinado Ingresso.

URL:
GET /api/v1/ticket/{ticketKey}/option/{optionKey}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
optionKey string Chave da Option
ticketKey string Chave do Ticket

Responses:
HTTP 200: OK
{
"data": {
"bookingKey": "string",
"ticket": {
"name": "string",
"passengers": {
"total": 0,
"adults": 0,
"children": 0
},
"dates": {
"from": "string Datetime ISO",
"to": "string Datetime ISO"
},
"days": 0,
"parks": [
{
"dates": [
"string Datetime ISO"
],
"names": [
"string"
]
}
],
"option": {
"name": "string",
"descriptions": [
{
"title": "string",
"value": "string"
}
]
},
"address": {
"neighborhood": "string",
"city": "string",
"state": "string",
"country": "string",
"street": "string",
"postalCode": "string"
},
"cancellationPolicy": "string",
"descriptions": [
{
"title": "string",
Barramento Azul Viagens

"value": "string"
}
],
"price": {
"original": 0,
"currencyCode": "Enum string"
},
"loyalty": {
"accrual": 0
}
}
},
"notifications": [
"string"
]
}
HTTP 204: No Content
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Payment
O serviço de Payment é responsável por realizar o pagamento e a realização da Reserva dos
serviços de Availability.

Para realizar as chamadas dos métodos do Payment, é necessário passar um Token obtido
através do serviço Authentication.

URLs

Ambiente de Testes:
https://general-api-tst.voeazul.com.br/sales/azulviagens/payment/ + URL relativa da API

Ambiente de Homologação: (recomendado)


https://general-api-stg.voeazul.com.br/sales/azulviagens/payment/ + URL relativa da API

Exemplo:
https://general-api-stg.voeazul.com.br/sales/azulviagens/payment/api/v1/payment
Barramento Azul Viagens

Payment
Método assíncrono responsável por realizar o pagamento e a reserva.

URL:
POST /api/v1/payment/

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Content-Type string application/json
Authorization string Token recebido no serviço Authentication

Request:
{
"type": "string enum",
"bookingKey": "string",
"holder": {
"document": {
"number": "string",
"type": "string enum"
},
"fullName": "string",
"email": "string",
"phone": {
"ddi": "string",
"number": "string"
},
"nationality": "string",
"address": {
"street": "string",
"postalCode": "string",
"complement": "string",
"city": "string",
"state": "string",
"country": "string"
}
},
"installments": 0,
"card": {
"accountNumber": "string",
"bin": "string",
"expirationDate": {
"month": "string",
"year": "string"
},
"verificationCode": "string"
}
}

Responses:
HTTP 202: Accepted
{
"data": {},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
• Type inválido – Deve conter um dos valores da enumeração
• Booking key inválido
• Dados do holder inválidos ou ausentes
• Dados de cartão inválidos
• Termos e condições não aceitos
Barramento Azul Viagens

• Installments inválido – Deve ser entre 1 e o máximo autorizado pelo endpoint Installments
• Dados de endereço inválidos
o Caso presente, CEP não representa um CEP
HTTP 401: Unauthorized
HTTP 425: Too Early (Pagamento já identificado, potencial chamada duplicada)
HTTP 402: Payment Required (Pagamento não foi autorizado)
HTTP 503: Service Unavailable (Erros sistêmicos, tentar pagamento novamente)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Installments
Método responsável por obter os valores de parcelamentos para a reserva.

URL:
POST /api/v1/payment/{bookingKey}/installments

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Content-Type string application/json
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
bookingKey string Chave do Booking

Request:
{
"type": "string enum",
"cardBin": "string"
}

Responses:
HTTP 200: OK
{
"data": {
"currencyCode": "string enum",
"maxInstallments": 0,
"installments": [
{
"installment": 0,
"total": 0,
"interest": {
"amount": 0,
"percentage": 0
},
"description": [
{
"key": 0,
"value": 0
}
]
}
]
},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
• Type inválido – Deve conter um dos valores da enumeração
• Type incorreto – Deve corresponder ao produto da reserva
• cardBin inválido – Deve conter de 4 ou 6 dígitos
HTTP 401: Unauthorized
HTTP 503: Service Unavailable (Erros sistêmicos)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Bins
Método responsável por obter os dados referentes ao bin do cartão pesquisado.

URL:
GET /api/v1/payment/bin/{cardBin}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
cardBin string Bin do cartão

Responses:
HTTP 200: OK
{
"data": {
"cardBin": "string",
"category": "string",
"brand": "string"
},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
• cardBin inválido – Deve conter de 4 a 6 dígitos
HTTP 401: Unauthorized
HTTP 404: Not Found (cardBin não encontrado)
HTTP 503: Service Unavailable (Erros sistêmicos)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Booking
O serviço de Booking é responsável por realizar a reserva das Acomodações realizadas no
serviço Availability.

Para realizar as chamadas dos métodos do Booking, é necessário passar um Token obtido
através do serviço Authentication.

URLs

Ambiente de Testes:
https://general-api-tst.voeazul.com.br/sales/azulviagens/booking/ + URL relativa da API

Ambiente de Homologação: (recomendado)


https://general-api-stg.voeazul.com.br/sales/azulviagens/booking/ + URL relativa da API

Exemplo:
https://general-api-stg.voeazul.com.br/sales/azulviagens/booking/api/v1/booking/xpto/status
Barramento Azul Viagens

Booking Passenger
Método que armazena os dados do Hóspede Titular.

URL:
POST /api/v1/booking/{bookingKey}/passenger

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
bookingKey string Chave do Booking

Request:
{
"name": {
"first": "string",
"last": "string"
},
"document": {
"number": "string",
"type": "string"
},
"birthDate": "string",
"email": "string",
"phone": {
"ddi": "string",
"number": "string"
},
"hold": "boolean"
}

Responses:
HTTP 200: OK
{
"data": {},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 425: Too Early (Reserva em hold já criada, potencial chamada duplicada)
HTTP 503: Service Unavailable (Indisponibilidade do serviço, tente novamente)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Booking Passengers
Método que armazena os dados dos passageiros.

URL:
POST /api/v1/booking/{bookingKey}/passengers

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Content-Type string application/json
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
bookingKey string Chave do Booking

Request:
{
"passengers": [
{
"holder":"boolean",
"type": "string enum",
"name": {
"first": "string",
"last": "string"
},
"nationality": "string",
"birthDate": "string",
"document": {
"number": "string",
"type": "string"
},
"email": "string",
"phone": {
"ddi": "string",
"number": "string"
}
}
],
"hold": "boolean"
}

Responses:
HTTP 200: OK
{
"data": {},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 425: Too Early (Reserva em hold já criada, potencial chamada duplicada)
HTTP 503: Service Unavailable (Indisponibilidade do serviço, tente novamente)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Booking Discounts
Método que aplica e remove os descontos na reserva.

URL:
PUT /api/v1/booking/{bookingKey}/discounts?promocode=
{promocode}&bin={cardBin}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Keysettings
Client string Device utilizado para acessar o Barramento
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
bookingKey string Chave do Booking

Query string:
Campo Tipo Descrição
promocode string Promocode
cardBin String Bin do cartão

Responses:
HTTP 200: OK (Para promocode/bin aplicado ou removido com sucesso)
{
"data": {
"promocode": {
"title": "string",
"description": "string",
"notes": "string",
"category": "string"
},
"price": {
"original": 0,
"discount": 0,
"amount": 0
}
},
"notifications": [
"string"
]
}
HTTP 304: Not Modified (Promocode/Bin já aplicado)
HTTP 400: Bad Request (Booking key e/ou promocode e/ou Bin é inválido)
HTTP 401: Unauthorized
HTTP 404: Not Found (Booking key)
HTTP 417: Expectation Failed (Promocode não encontrado ou esgotado)
{
"data": {
"error": "string enum"
},
"notifications": [
"string"
]
}
HTTP 503: Service Unavailable (Erros sistêmicos)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Booking Status
Método que retorna o status da reserva solicitada no método Booking.

URL:
GET /api/v1/booking/{bookingKey}/status

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
bookingKey string Chave do Booking

Responses:
HTTP 200: OK (reserva efetuada com sucesso)
{
"data": {},
"notifications": [
"string"
]
}
HTTP 202: Accepted (Em processamento)
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 402: Payment Required (Pagamento não foi autorizado)
HTTP 404: Not Found (BookingKey não encontrado)
HTTP 409: Conflict (Preço diferente do pagamento)
{
"data": {
"oldPrice": 0,
"newPrice": 0,
"difference": 0
},
"notifications": [
"string"
]
}
HTTP 424: Failed Dependency (Reserva não está mais disponível)
HTTP 500: Internal Server Error (Erro de processamento)
HTTP 502: Bad Gateway (Resposta do provedor inválida, reembolso solicitado à Adyen)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Booking Data
Método que retorna os dados da Reserva realizada.

URL:
GET /api/v1/booking/{bookingKey}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
bookingKey string Chave do Booking

Responses:
HTTP 200: OK
{
"data": {
"booking": {
"key": "string",
"locator": "string",
"status": "string enum",
"cancellationDate": "string Datetime ISO",
"payment": {
"date": "string Datetime ISO",
"holderName": "string",
"card": {
"summary": "string",
"brand": "string"
},
"price": {
"totalAmount": 0,
"refundAmount": 0,
"installment": {
"number": 0,
"amount": 0
},
"currencyCode": "string enum"
}
}
}
},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 417: Expectation Failed (Falhas gerais no processo)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Booking Locator
Método que retorna a chave da reserva realizada.

URL:
GET /api/v1/booking/locator/{recordLocator}/email/{email}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
recordLocator string Código da reserva
email string E-mail do cliente

Responses:
HTTP 200: OK
{
"data": {
"bookingKey": "string"
},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 417: Expectation Failed (Falhas gerais no processo)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Booking Details
Método que retorna os dados da Reserva realizada.

V1

URL:
GET /api/v1/booking/{bookingKey}/details
(Este método será removido em 12/06/2023. Usar
/api/v2/booking/{bookingKey}/details)

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
bookingKey string Chave do Booking

Responses:
HTTP 200: OK
{
"data": {
"hotel": {
"name": "string",
"description": "string",
"location": {
"latitude": "string",
"longitude": "string",
"address": {
"street": "string",
"neighborhood": "string",
"city": "string",
"state": "string",
"country": "string",
"postalCode": "string"
}
},
"contactInformation": {
"emails": [
"string"
],
"faxes": [
"string"
],
"phoneNumbers": [
"string"
]
},
"chain": "string",
"category": "string",
"checkIn": "string",
"checkOut": "string",
"cancellationPolicy": {
"type": "string enum",
"freeCancellationUntilDate": "string datetime ISO",
"description": "string"
}
},
"booking": {
Barramento Azul Viagens

"recordLocator": "string",
"externalLocator": "string",
"bookingKey": "string",
"passenger": {
"documentNumber": "string",
"name": {
"first": "string",
"last": "string"
},
"birthDate": "string"
},
"status": "string enum",
"reservationDate": "string Datetime ISO",
"cancellationDate": "string Datetime ISO",
"paymentDate": "string Datetime ISO",
"payment": {
"holderName": "string",
"card": {
"summary": "string",
"brand": "string"
},
"price": {
"amount": 0,
"refundAmount": 0,
"installment": {
"rate": 0,
"amount": 0
},
"currencyCode": "string enum"
}
},
"hold": {
"date": "string Datetime ISO",
"countdown": {
"days": 0,
"hours": 0,
"minutes": 0,
"seconds": 0
}
},
"accommodations": [
{
"rooms": 0,
"name": "string",
"board": "string",
"offers": [
{
"name": "string",
"description": "string"
}
],
"adults": 0,
"children": [
{
"age": 0
}
]
}
]
}
},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 504: Gateway Timeout (Timeout de requisições externas)
HTTP 417: Expectation Failed (Falhas gerais no processo)
Barramento Azul Viagens

V2

URL:
GET /api/v2/booking/{bookingKey}/details

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
bookingKey string Chave do Booking

Responses:
HTTP 200: OK
{
"data": {
"hotels": [
{
"name": "string",
"description": "string",
"externalLocator": "string",
"location": {
"latitude": "string",
"longitude": "string",
"address": {
"street": "string",
"neighborhood": "string",
"city": "string",
"state": "string",
"country": "string",
"postalCode": "string"
}
},
"contactInformation": {
"emails": [
"string"
],
"faxes": [
"string"
],
"phoneNumbers": [
"string"
]
},
"chain": "string",
"category": "string",
"checkIn": "string",
"checkOut": "string",
"cancellationPolicy": {
"type": "string enum",
"freeCancellationUntilDate": "string datetime ISO",
"description": "string"
},
"accommodations": [
{
"rooms": 0,
"name": "string",
"board": "string",
"offers": [
{
"name": "string",
"description": "string"
}
Barramento Azul Viagens

],
"passengers": [
{
"documentNumber": "string",
"name": {
"first": "string",
"last": "string"
},
"birthDate": "string"
}
],
"adults": 0,
"children": [
{
"age": 0
}
]
}
]
}
]
},
"booking": {
"recordLocator": "string",
"seconds": 0
}
}
"bookingKey": "string",
"passenger": {
"documentNumber": "string",
"name": "string",
"birthDate": "datetime"
},
"status": "string enum",
"reservationDate": "string Datetime ISO",
"cancellationDate": "string Datetime ISO",
"paymentDate": "string Datetime ISO",
"payment": {
"holderName": "string",
"card": {
"summary": "string",
"brand": "string"
},
"price": {
"amount": 0,
"refundAmount": 0,
"installment": {
"rate": 0,
"amount": 0
},
"currencyCode": "string enum"
}
},
"hold": {
"date": "string Datetime ISO",
"countdown": {
"days": 0,
"hours": 0,
"minutes": 0,

},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 504: Gateway Timeout (Timeout de requisições externas)
HTTP 417: Expectation Failed (Falhas gerais no processo)
Barramento Azul Viagens

Booking Voucher
Método que retorna os dados da Reserva realizada através de um PNR (record locator) e um
e-mail informado.

V1

URL:
GET /api/v1/booking/{recordLocator}/voucher?email={email}
(Este método será removido em 12/06/2023. Usar
/api/v2/booking/{recordLocator}/voucher?email={email})

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
recordLocator string Código da reserva

Query string:
Campo Tipo Descrição
email string Email do cliente

Responses:
HTTP 200: OK
{
"data": {
"hotel": {
"name": "string",
"description": "string",
"location": {
"latitude": "string",
"longitude": "string",
"address": {
"neighborhood": "string",
"city": "string",
"state": "string",
"country": "string",
"street": "string",
"postalCode": "string"
}
},
"contactInformation": {
"emails": [
"string"
],
"faxes": [
"string"
],
"phoneNumbers": [
"string"
]
},
"chain": "string",
"category": "string",
"checkIn": "string",
"checkOut": "string",
"cancellationPolicy": {
"type": "string enum",
Barramento Azul Viagens

"freeCancellationUntilDate": "string datetime ISO",


"description": "string"
}
},
"booking": {
"recordLocator": "string",
"externalLocator": "string",
"status": "string enum",
"reservationDate": "string Datetime ISO",
"bookingKey": "string",
"paymentDate": "string Datetime ISO",
"cancellationDate": "string Datetime ISO",
"hold": {
"date": "string Datetime ISO",
"countdown": {
"days": 0,
"hours": 0,
"minutes": 0,
"seconds": 0
}
},
"passenger": {
"documentNumber": "string",
"name": {
"first": "string",
"last": "string"
},
"birthDate": "string"
},
"payment": {
"holderName": "string",
"card": {
"summary": "string",
"brand": "string"
},
"price": {
"amount": 0,
"refundAmount": 0,
"installment": {
"rate": 0,
"amount": 0
},
"currencyCode": "string enum"
}
},
"accommodations": [
{
"rooms": 0,
"name": "string",
"board": "string",
"offers": [
{
"name": "string",
"description": "string"
}
],
"adults": 0,
"children": [
{
"age": 0
}
]
}
]
}
},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
Barramento Azul Viagens

HTTP 401: Unauthorized


HTTP 404: Not Found
HTTP 504: Gateway Timeout (Timeout de requisições externas)
HTTP 417: Expectation Failed (Falhas gerais no processo)
Barramento Azul Viagens

V2

URL:
GET /api/v2/booking/{recordLocator}/voucher?email={email}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
recordLocator string Código da reserva

Query string:
Campo Tipo Descrição
email string Email do cliente

Responses:
HTTP 200: OK
{
"data": {
"hotels": [
{
"name": "string",
"description": "string",
"externalLocator": "string",
"location": {
"latitude": "string",
"longitude": "string",
"address": {
"street": "string",
"neighborhood": "string",
"city": "string",
"state": "string",
"country": "string",
"postalCode": "string"
}
},
"contactInformation": {
"emails": [
"string"
],
"faxes": [
"string"
],
"phoneNumbers": [
"string"
]
},
"chain": "string",
"category": "string",
"checkIn": "string",
"checkOut": "string",
"cancellationPolicy": {
"type": "string enum",
"freeCancellationUntilDate": "string datetime ISO",
"description": "string"
},
"accommodations": [
{
"rooms": 0,
"name": "string",
"board": "string",
Barramento Azul Viagens

"offers": [
{
"name": "string",
"description": "string"
}
],
"passengers": [
{
"documentNumber": "string",
"name": {
"first": "string",
"last": "string"
},
"birthDate": "string"
}
],
"adults": 0,
"children": [
{
"age": 0
}
]
}
]
}
]
},
"booking": {
"recordLocator": "string",
"bookingKey": "string",
"passenger": {
"documentNumber": "string",
"name": "string",
"birthDate": "datetime"
},
"status": "string enum",
"reservationDate": "string Datetime ISO",
"cancellationDate": "string Datetime ISO",
"paymentDate": "string Datetime ISO",
"payment": {
"holderName": "string",
"card": {
"summary": "string",
"brand": "string"
},
"price": {
"amount": 0,
"refundAmount": 0,
"installment": {
"rate": 0,
"amount": 0
},
"currencyCode": "string enum"
}
},
"hold": {
"date": "string Datetime ISO",
"countdown": {
"days": 0,
"hours": 0,
"minutes": 0,
"seconds": 0
}
}
},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
HTTP 401: Unauthorized
Barramento Azul Viagens

HTTP 404: Not Found


HTTP 504: Gateway Timeout (Timeout de requisições externas)
HTTP 417: Expectation Failed (Falhas gerais no processo)
Barramento Azul Viagens

Booking Ticket Details


Método que retorna os dados dos tickets da reserva realizada.

URL:
GET /api/v1/booking/ticket/{bookingKey}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
bookingKey string Chave do Booking

Responses:
HTTP 200: OK
{
"data": {
"tickets": [
{
"externalLocator": "string",
"name": "string",
"ticketIssued": "boolean",
"ticketSupplier": "boolean",
"option": {
"name": "string",
"descriptions": [
{
"title": "string",
"value": "string"
}
]
},
"address": {
"neighborhood": "string",
"city": "string",
"state": "string",
"country": "string",
"street": "string",
"postalCode": "string"
},
"parks": [
{
"dates": [
"string"
],
"names": [
"string"
]
}
],
"passengers": [
{
"name": "string",
"birthDate": "string Datetime ISO",
"document": {
"type": "string enum",
"number": "string"
},
"type": "string enum"
}
],
"adults": 0,
Barramento Azul Viagens

"children": [
{
"age": 0
}
],
"dates": {
"from": "string Datetime ISO",
"to": "string Datetime ISO"
},
"cancellationPolicy": "string",
"descriptions": [
{
"title": "string",
"value": "string"
}
],
"willCall": "string"
}
]
},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 504: Gateway Timeout (Timeout de requisições externas)
HTTP 417: Expectation Failed (Falhas gerais no processo)
Barramento Azul Viagens

Booking Ticket Voucher


Método que retorna os dados dos tickets da reserva realizada.

URL:
GET /api/v1/booking/ticket/{bookingKey}/voucher

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
bookingKey string Chave do Booking

Responses:
HTTP 200: OK
{
"data": {
"booking": {
"key": "string",
"locator": "string",
"status": "string enum",
"cancellationDate": "string Datetime ISO",
"payment": {
"date": "string Datetime ISO",
"holderName": "string",
"card": {
"summary": "string",
"brand": "string"
},
"price": {
"totalAmount": 0,
"refundAmount": 0,
"installment": {
"number": 0,
"amount": 0
},
"currencyCode": "string"
}
}
},
"tickets": [
{
"externalLocator": "string",
"name": "string",
"address": {
"neighborhood": "string",
"city": "string",
"state": "string",
"country": "string",
"street": "string",
"postalCode": "string"
},
"option": {
"name": "string",
"descriptions": [
{
"title": "string",
"value": "string"
}
]
},
"parks": [
Barramento Azul Viagens

{
"dates": [
"string Datetime ISO"
],
"names": [
"string"
]
}
],
"passengers": [
{
"name": "string",
"birthDate": "string Datetime ISO",
"document": {
"type": "string enum",
"number": "string"
},
"type": "string enum"
}
],
"adults": 0,
"children": [
{
"age": 0
}
],
"dates": {
"from": "string Datetime ISO",
"to": "string Datetime ISO"
},
"cancellationPolicy": "string",
"descriptions": [
{
"title": "string",
"value": "string"
}
],
"willCall": "string"
}
]
},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found
HTTP 504: Gateway Timeout (Timeout de requisições externas)
HTTP 417: Expectation Failed (Falhas gerais no processo)
Barramento Azul Viagens

Booking Cancellation Information


Método que busca informações de custo sobre o cancelamento de uma reserva dado o e-
mail e localizador da reserva.

URL:
GET /api/v1/booking/{recordLocator}/cancellation
?email={email}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
recordLocator string Código da reserva
email string E-mail do cliente

Responses:
HTTP 200: OK
{
"data": {
"amount": {
"paid": 0,
"due": 0,
"refund": 0,
"currency": "string enum"
},
"bookingKey": "string",
"cancellation": {
"key": "string",
"expiration": "string"
}
},
"notifications": [
"string"
]
}
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found (reserva não encontrada)
HTTP 406: Not Acceptable (reserva do Call Center)
HTTP 412: Precondition Failed (Juniper não retornou dados de cancelamento necessários)
HTTP 417: Expectation failed (reserva já cancelada)
HTTP 422: Unprocessable Entity (reserva hold retornou com penalidade)
HTTP 502: Bad Gateway (resposta do provedor inválida)
HTTP 504: Gateway Timeout (timeout de requisições externas)
Barramento Azul Viagens

Booking Cancellation
Método que cancela uma reserva associada ao Booking key, record locator e a uma
cancellation key válida. Esse método não realiza reembolso do pagamento.

URL:
DELETE /api/v1/booking/{recordLocator}/cancellation/
{cancellationKey}

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
recordLocator string Código da reserva
cancellationKey string Chave de cancelamento fornecida pelo método GET Cancellation Information

Responses:
HTTP 202: Accepted (Cancelamento realizado com sucesso)
{
"data": {},
"notifications": [
"string"
]
}
HTTP 304: Not Modified (Cancelamento já realizado)
HTTP 400: Bad request (informações faltantes ou chave de cancelamento vencida)
HTTP 401: Unauthorized
HTTP 404: Not Found (reserva não encontrada)
HTTP 412: PreconditionFailed (Cancellation Information não foi chamado)
HTTP 409: Conflict (Valores de cancelamento mudaram, chame o Cancellation Information novamente)
HTTP 422: Unprocessable Entity (Cancelamento não pode ser realizado pelo barramento)
HTTP 502: Bad Gateway (Resposta do provedor inválida)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Notifications

O serviço de Notifications é responsável por enviar e-mails e outras notificações aos usuários
finais.

Para realizar as chamadas dos métodos do Notifications, é necessário passar um Token


obtido através do serviço Authentication.

URLs

Ambiente de Testes:
https://general-api-tst.voeazul.com.br/sales/azulviagens/notifications/ + URL relativa da API

Ambiente de Homologação: (recomendado)


https://general-api-stg.voeazul.com.br/sales/azulviagens/notifications/ + URL relativa da API

Exemplo:
https://general-api-
stg.voeazul.com.br/sales/azulviagens/notifications/api/v1/notifications/booking/xpto/email
Barramento Azul Viagens

Booking Notification
Método que dispara o envio de e-mail com as informações da reserva

URL:
POST /api/v1/notifications/booking/{bookingKey}/email

Headers:
Campo Tipo Descrição
Ocp-Apim-Subscription-Key string API Subscription Key
Client string Identificador de cliente
Authorization string Token recebido no serviço Authentication

Path:
Campo Tipo Descrição
bookingKey string Chave do Booking

Responses:
HTTP 202: Accepted
HTTP 400: Bad Request
HTTP 401: Unauthorized
HTTP 404: Not Found (Reserva não encontrada)
HTTP 412: Precondition failed (Reserva cancelada)
HTTP 502: Service unavailable (Erros não identificados com a reserva)
HTTP 504: Gateway Timeout (Timeout de requisições externas)
Barramento Azul Viagens

Lista de Enums
iconCode
Os valores de ícones possíveis do campo amenities.iconCode nos responses dos métodos
Content, Hotel Availability e Accommodations:

Valor Descrição
wifi Wifi
airconditioner Ar Condicionado
24hfrontdesk Recepção 24 horas
parkinglot Estacionamento disponível
pets Aceita animais de estimação
nosmoking Proibido fumar em todo o Hotel
smoking Área para fumantes
pool Piscina
gym Academia
restaurant Restaurante
bar Bar
bussinesscenter Centro de Negócios
reducedmobility Comodidades para hóspedes com mobilidade reduzida

Sort
Valores possíveis do campo page.sort para o request do Hotel Availability:

Valor Descrição
label Do mais relevante para o menos relevante (label)
priceAsc Do mais barato para o mais caro
priceDesc Do mais caro para o mais barato
distanceAsc Do mais próximo ao centro para o mais distante
starDesc Da maior quantidade de estrelas para a menor quantidade de estrelas
starAsc Da menor quantidade de estrelas para a maior quantidade de estrelas
ratingDesc Da maior avaliação para a menor

Document type
Valores possíveis do campo type para a request dos métodos Passenger e Payment:

Valor Descrição
CPF Documento do tipo CPF
Passport Documento do tipo Passaporte
RNE Documento do tipo RNE

Board type
Valores possíveis do campo type para o response do método Accommodations e
Accommodations Details no objeto board e também das opções de filtro de board do Availability:

Enum Descrição
accommodationOnly Somente quarto
all Tudo incluso
breakfast Café da manhã
full Pensão completa
half Meia pensão
Barramento Azul Viagens

Board names
Valores possíveis do campo boardType para o response do método Availability
(URL:/api/v2/hotel/availability).

Valor Descrição

All Inclusive Todos os quartos são do tipo “All Inclusive”


Café da manhã Todos os quartos têm café da manhã
Pensão completa Todos os quartos têm pensão completa
Meia pensão Todos os quartos têm meia pensão
Todos as opções são do tipo All Inclusive e pelo menos
Opções com All Inclusive
um dos quartos é do tipo Accommodation Only
Todos os quartos têm café da manhã e pelo menos um
Opções com Café da manhã
dos quartos é do tipo Accommodation Only
Todos os quartos têm pensão completa e e pelo menos
Opções com Pensão completa
um dos quartos é do tipo Accommodation Only
Todos os quartos têm meia pensão e pelo menos um dos
Opções com Meia pensão
quartos é do tipo Accommodation Only
Qualquer combinação de regime de alimentação, exceto
Várias opções de Refeição
os do tipo Accommodation Only

Cancellation Type
Valores possíveis do campo type para o response dos objetos cancellationPolicy nos métodos
Accommodations, Accommodations Details, Booking Details e Booking Voucher:

Valor Descrição
FullRefundUntilDate Cancelamento grátis até [freeCancellationUntilDate]
Partial Reembolso parcial
NoRefund Sem reembolso ou sem informação de cancelamento

Type – Payment e Installments


Valores possíveis do campo type para as requests dos métodos Payment e Installments:

Valor Descrição
Hotel Reserva para hotel
Ticket Reserva de ingresso

Status de reservas
Valores possíveis do campo status para as respostas do Booking Voucher e Booking Details:

Valor Descrição
Confirmed Reserva confirmada e paga
Hold Reserva confirmada
Canceled Reserva cancelada
Initial Reserva "on request"
OnRequest Reserva "on request"
Cotação (este é um estado semelhante ao "on request", e será recebido quando a
Quotation
sua conta exigir o pagamento da reserva através do WebService)
Barramento Azul Viagens

Cancellation names
Valores possíveis de retorno dos nomes de cancelamentos no método Hotel Availability:

Valor Descrição
Cancelamento grátis Todos os quartos têm cancelamento grátis
Opções com cancelamento grátis Alguns quartos têm cancelamento grátis
Nenhum quarto tem cancelamento grátis

Rating names
Valores possíveis de retorno dos nomes de ratings nos métodos Hotel Availability e Rating
Details.

Valor Descrição
Sem Avaliação Value 0
Mal Avaliado Value de 1,0 até 3,9 (incluso)
Bom Value de 4,0 até 4,4 (incluso)
Excelente Value de 4,5 até 5 (incluso)

Discounts errors
Valores possíveis de retorno dos erros no método Discounts.

Valor Descrição

NotFound Promocode não encontrado


CampaignSoldOut Promocode de Campaign esgotado
PromotionSoldOut Promocode de Promotion esgotado
Unknown Erro desconhecido e promocode vencido
BinNotApply Promocode de Bin não aplicado

Currency Code
Valores possíveis para o campo currencyCode que representa a moeda nos métodos Hotel
Availability, Accommodations, Accommodations Details, Recommendations, Ticket
Availability, Ticket Data, Ticket Options by Date, Ticket Details, Installments, Booking,
Booking Details, Booking Voucher e Booking Ticket Print.

Valor Descrição

BRL Real (R$)

Passenger type – Booking Passengers


Valores possíveis para o campo type que representa o tipo do passageiro no método Booking
Passengers.

Valor Descrição

adult Passageiro adulto com 18 anos ou mais.


child Passageiro criança com menos de 18 anos.
Barramento Azul Viagens

Passenger type – Booking Ticket Details e Voucher


Valores possíveis para o campo type que representa o tipo do passageiro no método Booking
Ticket Details e Booking Ticket Voucher.

Valor Descrição

adult Passageiro adulto com 18 anos ou mais.


child Passageiro criança com menos de 18 anos.
holder Passageiro adulto titular da reserva.

Você também pode gostar