PROD

POST /cabaprop/connect

Este serviço conecta uma conta Mapaprop com o Cabaprop. A partir da apiKey do cliente, autentica contra a API de integração do Cabaprop, armazena o token resultante para publicações futuras e notifica o cliente (Slack interno + e-mail) que sua conta foi conectada.

Informações do recurso
AutenticaçãoObrigatória (token de serviço)
Método HTTPPOST
RespostaJSON
Versão1

Resource URL

https://api-cabaprop.mapaprop.com/property-api/cabaprop/connect

Headers

HeaderObrigatórioDescrição
authorizationsimToken estático de serviço do Cabaprop. Se não corresponder, a solicitação é rejeitada.
Content-Typesimapplication/json

Parameters (body request)

O corpo é um JSON com os seguintes campos:

KeyTypeRequiredDescription
custIdnumbersimIdentificador do cliente no Mapaprop.
apiKeystringsimAPI key do cliente no Cabaprop. Enviada como header x-api-key para a API do Cabaprop para autenticação.
brandstringsimMarca/imobiliária associada à conexão. Faz parte do nome do app armazenado (cabaprop___{brand}).
namestringsimNome do cliente. Usado nas notificações de Slack e e-mail.
emailstringsimE-mail do cliente. Destino do e-mail de confirmação de conexão.

Sample code

POST /property-api/cabaprop/connect
Host: api-cabaprop.mapaprop.com
Content-Type: application/json
authorization: {access_token}
{
  "custId": 1,
  "apiKey": "tu-api-key-de-cabaprop",
  "brand": "Mapaprop",
  "name": "Mapaprop INC",
  "email": "info@mapaprop.com"
}

Response

Em caso de sucesso retorna um 200 com o corpo de resposta da API de autenticação do Cabaprop, que inclui o token da integração.

{
  "token": "{access_token}"
}

Como efeito colateral de uma conexão bem-sucedida, o serviço:

  • Armazena o token e os dados de conexão associados ao custId e à marca.
  • Envia uma notificação interna ao Slack (canal de suporte).
  • Envia um e-mail de confirmação para o email indicado.

Erros

StatusCorpoCausa
500{"message":"Unauthorized"}O header authorization não corresponde ao token de serviço do Cabaprop.
500"Error Post cabaprop intration auth : {error}"A autenticação contra a API de integração do Cabaprop falhou (por exemplo, apiKey inválida).
500"Error DynamoDB put Item : {error}"O token foi obtido, mas a conexão não pôde ser armazenada.
500"Error to send notification to Slack/Email : {error}"A conexão foi armazenada, mas o envio da notificação ao Slack ou do e-mail falhou.