Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Integração de dados do módulo VHF FrontOffice, conforme documentação do Swagger dos Endpoint.

CONTEÚDO

  1. Visão Geral
  2. Instalando o FrontOffice API.
  3. Parceiros / Integração com API.
  4. Servidor Cloud de Terceiros.
  5. Descrição / Instalação.
  6. Iniciando o serviço.
  7. Métodos Disponíveis na API.

1. VISÃO GERAL

  A documentação e orientações técnicas descritas a seguir tem o objetivo de comunicação com os produtos TOTVS Hospitalidade PMS - Linha Hotal (VHF). Essa integração foi desenvolvida pela TOTVS Hospitalidade visando atender uma necessidade identificada,  atuando como como facilitador de integrações entre sistemas utilizados por nossos clientes e que não se adequem aos padrões já utilizados pelas soluções HIGS e CMNET Reservas. 

  O acesso as informações e operações A API FrontOffice fornece acesso a informações relacionadas a reservas e hospedagens, permitindo a consulta aos dados são feitas através de endpoints específicos. 

  Em decorrência do avanço da utilização do ambiente em cloud, as integrações e consumo de dados que eram realizadas através de views no SGBD, não atende a acessibilidade imediata das informações. Com isso a necessidade da evolução da disponibilização dos dados através de API.


...

2. Instalando o FrontOffice API.

  Primeiro entre em contato com o setor comercial da Totvs para entender a disponibildade desse serviço para o hotel, depois baixe o instalador do serviço (Setup_FRontOfficeAPI.exe), e execute em sua maquina. Este instalador, instala automaticamente o serviço Xamp e configura o mesmo para ser executado, siga os passos mostrados abaixo.

Image Added




Execute o instalador baixado na sua maquina. Clique no boão avançar na tela que é mostrada.

Image Added



Nessa nova tela, clique em instalar.

Neste momento o instalador esta iniciando o processo de instalação do xamp, isso pode levar alguns minutos.

Image Added


Nessa tela são os parametros para acesso ao banco de dados  do cliente.

  • Configuração da API
Path : Caminho onde esta instalado o apache do xamp. (não deve ser alterada)
Porta da API : Porta da API. (não deve ser alterada)
Nome da API : Nome do serviço de API do Front. (não deve ser alterada) 
Api SecretKey : Não deve ser preenchido.
  •  Configuração do Banco de Dados
Schema : Eschema do banco do cliente
Alias : Alias do banco do cliente
Usuário do Banco : Usuário de acesso ao banco.
Senha do Banco : Senha do usuário do banco.
  •  ID's de Configuração
ID Parametro :  Usado para o Timesahring API. (não deve ser preenchido).
ID Hotel : ID do Hotel na base do cliente.
ID Empresa : ID da empresa na base do cliente.
ID Usuaério : ID do usuário do sistema.
Tipo de Ambiente : Informa o tipo de ambiente, no cliente pode ser colocado produção.

Clique no botão (Salvar Configurações)

Image Added




Neste momento o serviço do xamp já foi instalado, os aquivos necessários para funcionar a API já esta configurada, clique em concluir para fechar a tela de instalação.

3. Parceiros / Integração com API

Dica

Integram Com Essa API

1- Bebook


2- Voa


3- Upcash

...

...

4. Servidor Cloud de Terceiros 

No caso de clientes que possuam serviço de terceiros (FTC Cloud da Faitec, por ex.), a configuração do XAMPP deverá ser realizada pelo terceiro, que retornará a informação do ip público (externo) e porta, para que seja informado ao parceiro da integração junto com o Client ID, Client Secret e o id do Hotel. 

4.1 Requisitos de Hardware e Software para hospedagem da API de integração

Para consultar os requisitos mínimos de hardware recomendados para o servidor de aplicação, clique aqui e acesse o tópico "Configuração recomendada para servidor de aplicações".

5. Descrição

Para que seja consumido os dados dos EndPoints da API - FRONTOFFICEAPI,  necessita de liberação do ClienteID e ClienteSecret. A liberação será realizar pela equipe de Plugin mediante a contratação comercial. 

...

Swagger: http://IP:Porta/frontofficeapi/v1/swagger/doc/html#/

Exemplo de Swagger:   http://1293.151233.33251.24789:89/frontofficeapi/v1/swagger/doc/html#/

Instalação Padrão da API

A APIFrontOffice pode ser instalada através da publicação da DLL em ums servidor APACHE.

Utilizamos o programa XAMP, para instalação do servidor APACHE, conforme os passos abaixo: 

UTILIZANDO O XAMP

Passo 1: Baixe o instalador do XAMPP
O primeiro passo para instalar o XAMPP no Windows é baixar o instalador. Acesse o site oficial do XAMPP em https://www.apachefriends.org/index.html e clique na opção de download para o sistema operacional Windows. Certifique-se de baixar a versão mais recente do XAMPP para garantir que você tenha acesso aos recursos mais atualizados.

Passo 2: Execute o instalador
Após concluir o download do arquivo de instalação, localize-o no seu computador e execute-o. Um assistente de instalação será aberto e guiará você por todo o processo.

Passo 3: Selecione os componentes
Durante o processo de instalação, você terá a opção de selecionar os componentes que deseja instalar. Por padrão, todos os componentes, como Apache, MySQL, PHP e Perl, são selecionados. No entanto, se você não precisar de algum desses componentes, pode desmarcá-los para economizar espaço em disco.

Passo 4: Escolha a pasta de instalação
Agora é hora de escolher a pasta onde você deseja instalar o XAMPP. A pasta padrão é “C:\xampp”, mas você pode selecionar uma localização diferente, se preferir. Certifique-se de escolher uma pasta em que você tenha permissões de gravação e que seja de fácil acesso.

Passo 5: Inicie a instalação
Após selecionar os componentes e a pasta de instalação, clique no botão “Next” ou “Instalar” para iniciar o processo de instalação. Aguarde até que a instalação seja concluída. Isso pode levar alguns minutos, pois o instalador está copiando arquivos e configurando o ambiente.

Passo 6: Configuração do arquivo httpd.conf
Abra o XAMPP, clique no botão Config. na linha do serviço Apache, opção "Apache (httpd.conf)". Encontre a última linha que começo com "#LoadModule..." e copie o código abaixo e cole depois dela, antes de <IfModule unixd_module>:

<Location /frontofficeapi>
  SetHandler frontofficeapi_module-handle
</Location>

Depois, entre no diretório "C:\xampp\apache\modules", cole os arquivos "mod_FrontOfficeAPI.dll" e "FrontOfficeAPIResources.json" (https://drive.google.com/drive/folders/118YdC56rcjRN5Jou07p9BqFwMpP1SzL-) nessa pasta. Esse arquivo JSON indicará a porta a ser utilizada pela API e os dados para conexão com o banco (veja aqui). 

Passo 7: Configuração adicional (opcional)
Após a conclusão da instalação, você pode optar por fazer algumas configurações adicionais. O XAMPP pode configurar automaticamente os serviços de Apache e MySQL para iniciar quando o computador for ligado. Além disso, você pode configurar exceções de firewall para permitir o acesso aos serviços web. Essas configurações são opcionais, mas podem ser úteis para facilitar o uso do XAMPP.

Passo 8: Inicie o XAMPP (Apache)
Agora que o XAMPP está instalado, você pode iniciar o painel de controle do XAMPP para gerenciar os serviços. Clique no ícone do painel de controle do XAMPP na área de trabalho ou procure por ele no menu Iniciar. O painel de controle exibirá uma lista dos serviços disponíveis, como Apache, MySQL e PHP. Você pode iniciar e parar esses serviços com apenas um clique.

Conclusão:
Com o XAMPP instalado no seu computador Windows, você tem um ambiente de desenvolvimento web completo à sua disposição. Você pode criar e testar aplicativos web localmente antes de implantá-los em um servidor de hospedagem. O XAMPP simplifica o processo de configuração e permite que você se concentre no desenvolvimento do seu projeto. Experimente o XAMPP e aproveite a conveniência de ter um ambiente de desenvolvimento local poderoso e fácil de usar.

TELA PADRÃO DO XAMP:

Image Removed

Configuração do HTTPD.CONF do Apache para habilitar o serviço da API FrontOffice

  • Pare (Stop) o servidor APACHE e clica no botão de config para acessar o aquivo TXT httpd.conf e configurar o módulo da API FronToffice conforme a imagem abaixo.

Image Removed

...

  • API_PORT: chave para configuração da porta
  • DATABASE_SCHEMA: chave para schema do banco 
  • DATABASE_ALIAS: chave para alias do banco
  • DATABASE_PASSWORD: chave para a senha do banco

Image Removed

 Retornar

6. Iniciando o serviço


Image Added




Após instalação localize no iniciar do windows o atalho para abrir o programa xamp.


Image Added




Após iniciar o aplicativo será mostrado a tela ao lado, clique no botão start para que o serviço fique habilitado para o uso.

Image Added



Desta forna o serviço já esta disponivel para ser utilizado, feche a tela.



...

7

...

. MÉTODOS DISPONÍVEIS NA API 

Abaixo os Métodos disponíveis nos EndPoints da API. 

Estado
colorGreen
titlePublicado

Dica

Authenticate: POST - http://localhost:porta/frontofficeapi/v1/authenticate

Hotel:  GET http://localhost:porta/frontofficeapi/v1/hotel

Origem Reserva:  GET  http://localhost:porta/frontofficeapi/v1/origemReserva

Reserva Grupo :  GET  http://localhost:porta/frontofficeapi/v1/reservaGrupo/?dataEntada=10/11/2021&idHotel=1

Cliente Reservante:  GET  http://localhost:porta/frontofficeapi/v1/clienteReservante/?idHotel=1

Inventário:  GET  http://localhost:porta/frontofficeapi/v1/inventario/?idHotel=1&dataIni=01/04/2022&dataFim=10/08/2022

Hospedagem:  GET http://localhost:porta/frontofficeapi/v1/hospedagem?idHotel=1&dataIni=01/04/2022&dataFim=31/12/2022

UH:  GET http://localhost:porta/frontofficeapi/v1/UH/?idHotel=3&tipo=9

Tipo UH:  GET http://localhost:porta/frontofficeapi/v1/tipoUH/?idHotel=1


...

  • Authenticate

    • Estado
      colourGreen
      titlePOST
      /frontofficeapi/v1/authenticate

      Descrição: Inserir Authenticate

      Requisição

      {
          "clientId": "38629890-9CF8-46B0-ACF8-03AD46A3DCC8",
          "clientSecret": "276d56d0-77ad-11f0-8962-113d4e2eef4e",
          "app": "FRONTOFFICEAPI"
      }

      Respostas

      Código

      Response

      201

      OK

      400

      Bad Request
  • Listar cliente reservante

    • Estado
      colourBlue
      titleGET
      /frontofficeapi/v1/clienteReservante

      Descrição: Listar cliente reservante

    • Parâmetros

      Nome

      Tipo

      Obrigatório

      Descrição

      idHotel

      integer

      Sim

      Identificador do hotel

      status

      string

      Não

      Status

      dataPassandoInicio

      string

      Não

      Data passando inicial

      dataPassandoFim

      string

      Não

      Data passando final

      dataChegadaInicio

      string

      Não

      Data chegada inicial

      dataChegadaFim

      string

      Não

      Data chegada final

      dataPartidaInicio

      string

      Não

      Data partida inicial

      dataPartidaFim

      string

      Não

      Data partida final

      page

      string

      Não

      Número da página. Para utilizar esse recurso adicionar a tag (X-Paginate=true) no Header da requisição.

      limit

      string

      Não

      Quantidade de registros por página

    • Respostas

      Código

      Descrição

      200

      OK
  • Listar Disponibilidade

    • Estado
      colourBlue
      titleGET
      /frontofficeapi/v1/disponibilidade

      Descrição: Listar Disponibilidade

      Parâmetros

      Nome

      Tipo

      Obrigatório

      Descrição

      idHotel

      integer

      Sim

      Identificador do hotel

      dataIni

      string

      Sim

      Data inicial - padrão dd-mm-yyyy

      dataFim

      string

      Sim

      Data final - padrão dd-mm-yyyy

      tipouh

      string

      Sim

      Tipo UH

      idContrato

      integer

      Não

      Identificador do contrato do cliente

      idAgrupadorUh

      string

      Não

      Identificador do Agrupador de Uhs

      codAgrupadorUH

      string

      Não

      Código do Agrupador de Uhs

      page

      string

      Não

      Número da página. Para utilizar esse recurso adicionar a tag (X-Paginate=true) no Header da requisição.

      limit

      string

      Não

      Quantidade de registros por página

      Respostas

      Código

      Descrição

      200

      OK

  • Listar Hospedagem


    • Estado
      colourBlue
      titleGET
      /frontofficeapi/v1/hospedagem

      Descrição: Listar Hospedagem

      Parâmetros

      Nome

      Tipo

      Obrigatório

      Descrição

      idHotel

      integer

      Sim

      Identificador do hotel

      dataIni

      string

      Sim

      Data inicial

      dataFim

      string

      Sim

      Data Final

      cancelada

      integer

      Não

      Para incluir reservas canceladas na resposta, utilize o valor 6

      gratuidade

      integer

      Não

      Para incluir reservas gratuitas na resposta, utilize o valor 1

      page

      string

      Não

      Número da página. Para utilizar esse recurso adicionar a tag (X-Paginate=true) no Header da requisição.

      limit

      string

      Não

      Quantidade de registros por página

      Respostas

      Código

      Descrição

      200

      OK

  • Listar Hospede


    • Estado
      colourBlue
      titleGET
      /frontofficeapi/v1/hospede

      Descrição: Listar Hospede

      Parâmetros

      Nome      

      Tipo

      Obrigatório

      Descrição

      idHospede

      integer

      Sim

      Identificador do hospede

      page

      string

      Não

      Número da página. Para utilizar esse recurso adicionar a tag (X-Paginate=true) no Header da requisição.

      limit

      string

      Não

      Quantidade de registros por página

      Respostas

      Código

      Descrição

      200

      OK

  • Listar hotel


    • Estado
      colourBlue
      titleGET
      /frontofficeapi/v1/hotel

      Descrição: Listar hotel

      Parâmetros        

      Nome

      Tipo

      Obrigatório

      Descrição

      idHotel

      integer

      Não

      Identificador do hotel

      nome

      string

      Não

      Nome do hotel

      Respostas

      Código

      Descrição

      200

      OK

  • Listar Inventario


    • Estado
      colourBlue
      titleGET
      /frontofficeapi/v1/inventario

      Descrição: Listar Inventario

      Parâmetros

      Nome

      Tipo

      Obrigatório

      Descrição

      idHotel

      integer

      Sim

      Identificador do hotel

      dataIni

      string

      Sim

      Data inicial - padrão dd-mm-yyyy

      dataFim

      string

      Sim

      Data final - padrão dd-mm-yyyy

      tipouh

      string

      Sim

      Tipo UH

      idContrato

      integer

      Não

      Identificador do contrato do cliente

      page

      string

      Não

      Número da página. Para utilizar esse recurso adicionar a tag (X-Paginate=true) no Header da requisição.

      limit

      string

      Não

      Quantidade de registros por página

      Respostas

      Código

      Descrição

      200

      OK

  • Listar Origem Reserva


    • Estado
      colourBlue
      titleGET
       /frontofficeapi/v1/origemReserva

      Descrição: Listar Origem Reserva

      Respostas            

      Código

      Descrição

      200

      OK

  • Reserva

    • Cancelar Reserva


      • Estado
        colourYellow
        titlePUT
        /frontofficeapi/v1/reserva/{numReserva}

        Descrição: Cancelar Reserva

        Parâmetros

        Nome

        Tipo

        Obrigatório

        Descrição

        numReserva

        integer

        Sim

        Número da reserva

        Respostas

        Código

        Descrição

        201

        Created

        204

        No Content

        404

        Not Found

    • Listar Reserva


      • Estado
        colourBlue
        titleGET
        /frontofficeapi/v1/reserva

        Descrição: Listar Reserva

        Parâmetros

        Nome

        Tipo

        Obrigatório

        Descrição

        idhotel

        Integer

        Sim

        Identificador do hotel

        numreserva

        string

        Não

        Numero da reserva

        numdocumento

        string

        Não

        Documento do cliente

        dataInicial

        string

        Não

        Data inicial do filtro. Sozinha, retorna registros a partir desta data

        dataFinal

        string

        Não

        Data final do filtro. Usada com dataInicio para intervalo.

        status

        Integer

        Não

        Status da reserva

        page

        integer

        Não

        Número da página

        pageSize

        integer

        Não

        Quantidade de registros por página

        Respostas

        Código

        Descrição

        200

        OK

        204

        No Content

        Possíveis  status de reserva

        Código

        Descrição

        0A Confirmar
        1Confirmada
        2Check-In
        3Check-Out
        4Pendente
        5No-Show
        6Cancelada
        7Waiting List
        8Em Tentativa


    • Inserir Reserva

      • Estado
        colourGreen
        titlePOST
         /frontofficeapi/v1/reserva

        Descrição: Inserir Reserva

        Parâmetros          

        Nome

        Tipo

        Obrigatório

        Descrição

        dados

         

        Sim

         

        Respostas

        Código

        Descrição

        201

        Created

        400

        Bad Request

  • Listar reserva de grupo


    • Estado
      colourBlue
      titleGET
      /frontofficeapi/v1//reservaGrupo

      Descrição: Listar reserva de grupo

      Parâmetros

      Nome

      Tipo

      Obrigatório

      Descrição

      idHotel

      integer

      Sim

      Identificador do hotel

      dataEntrada

      string

      Sim

      Data da entrada

      dataSaida

      string

      Sim

      Data da saída

      page

      string

      Não

      Número da página. Para utilizar esse recurso adicionar a tag (X-Paginate=true) no Header da requisição.

      limit

      string

      Não

      Quantidade de registros por página

      Respostas

      Código

      Descrição

      200

      OK

  • Listar Segmento


    • Estado
      colourBlue
      titleGET
      /frontofficeapi/v1/Segmento

      Descrição: Listar Segmento

      Parâmetros

      Nome

      Tipo

      Obrigatório

      Descrição

      IdHotel

      string

      Não

      Hotel

      CodSegmento

      integer

      Não

      Identificador do Segmento

      Respostas

      Código

      Descrição

      200

      OK

  • Listar TipoUH


    • Estado
      colourBlue
      titleGET
      /frontofficeapi/v1/tipoUH

      Descrição: Listar TipoUH

      Parâmetros

      Nome

      Tipo

      Obrigatório

      Descrição

      idHotel

      integer

      Sim

      Identificador do hotel

      IdTipoUh

      integer

      Não

      Identificador do tipo de UH

      Respostas

      Código

      Descrição

      200

      OK

  • Listar UH


    • Estado
      colourBlue
      titleGET
      /frontofficeapi/v1/UH

      Descrição: Listar UH

      Parâmetros         

      Nome

      Tipo

      Obrigatório

      Descrição

      idHotel

      integer

      Sim

      Identificador do hotel

      tipo

      string

      Não

      Tipo da UH

      grupo

      string

      Não

      Grupo da UH

      Respostas

      Código

      Descrição

      200

      OK

  • Buscar agrupador de Uh


    • Estado
      colourBlue
      titleGET
      /frontofficeapi/v1/agrupadorUh/codReduzido

      Descrição: Buscar agrupador de Uh

      Parâmetros                      

      Nome

      Tipo

      Obrigatório

      Descrição

      idHotel

      integer

      Sim

      Identificador do hotel

      idAgrupadorUh

      integer

      Não

      Identificador do agrupador de uh

      codReduzido

      string

      Não

      Código reduzido

      Respostas

      Código

      Descrição

      200

      OK

      404

      Not Found