Dotzlabs é o Laboratório de Inovação da Dotz.

Uma das soluções de varejo mais eficazes do Brasil para marcas interessadas em programas de fidelidade de coalizão.

Suggest Edits

Guia do Usuário da API

 

Nossa Web API permite que sua aplicação manipule dados do programa de fidelidade Dotz.

Baseado em princípios simples REST, nossa Web API retorna metadados em formato JSON sobre faturamento, crédito, troca, extrato, catálogo e assinaturas. A Web API também fornece acesso a dados relacionados ao usuário, como saldo e endereço, sujeito a autorização do usuário.

Suggest Edits

1. Sobre a Web API

 

Através da Dotz Web API suas aplicações podem recuperar e gerenciar dados do Programa de Fidelidade Dotz. O endereço base da API é https://api.dotzlabs.com. Existem vários endpoints nesse endereço, cada um com seu próprio caminho exclusivo. Para acessar dados particulares através da Web API, como saldo e extrato, um aplicativo deve obter permissão do usuário para acessar os dados. A autorização é feita através do serviço de Accounts da Web API em https://accounts.dotzlabs.com.

Suggest Edits

2. Requisições

 

A Dotz Web API é baseada em princípios REST: dados são acessados através de requisições HTTPS em formato UTF-8 a um endpoint da API. Sempre que possível, a API se esforça para usar verbos HTTP apropriados para cada ação:

Verbo
Descrição

GET

Obtenção de recursos.

POST

Criação de recursos.

PUT

Modificar ou substituir recursos ou coleções.

DELETE

Remove recursos.

Suggest Edits

3. Taxas de consumo

 

Para tornar a Web API rápida para todos, os limites de taxa no consumo se aplicam. As solicitações não autenticadas são processadas no limite de taxa mais baixo. Solicitações autenticadas com um access token válido se beneficiam de limites de taxa mais altos - isso é verdade mesmo se o ponto de extremidade não exigir que um access token seja passado na chamada. Leia o Guia de Autorização para obter mais informações sobre como registrar um aplicativo e assinar seus pedidos com um token de acesso.

A limitação de taxa é aplicada com base na aplicação (com base no client id), independentemente do número de utilizadores que usam o mesmo client id.

Se você receber o código HTTP 429, significa que enviou muitas requisições. Se isso acontecer, dê uma olhada no valor do header Retry-After, onde você verá um número exibido. Esta é a quantidade de segundos que você precisa esperar, antes que você possa repetir o envio de suas requisições.

Suggest Edits

4. Timestamps

 

Os timestamps de data/hora são retornados no formato ISO 8601 como Coordinated Universal Time (UTC) com offset zero: YYYY-MM-DDTHH:mm:SSZ.

Suggest Edits

5. Paginação

 

Alguns endpoints suportam uma forma de paginação para um conjunto de dados, podendo receber como parâmetros um offset e um limit para realizar a consulta:

http://uat-storelocator.dotzlabs.com/locations?_limit=10&_offset=1

Observe que a numeração offset é iniciado em 1 (um) e deve ser informada, sempre. Verifique a documentação do nó de extremidade específico para ver o valor limite padrão. Todos os resultados obtidos a partir de um filtro de paginação, serão retornado dentro de um objeto de paginação.

Suggest Edits

6. Requisições condicionais

 

Algumas das respostas da Web API vem com cache-control headers, definidos para auxiliar no cache do lado do cliente. Se você tiver armazenado em cache uma resposta, não solicite novamente até que a resposta tenha expirado, se a resposta contiver um ETag, defina o cabeçalho If-None-Match na solicitação para o valor ETag. Se a resposta não tiver sido alterada, a Web API responderá rapidamente com o código HTTP 304 (Not Modified) (ou seja, sua versão em cache ainda é boa e seu aplicativo deve usá-la).

Suggest Edits

7. Código HTTP das respostas

 

A API usa os seguintes códigos HTTP de resposta, conforme definido no RFC 2616 e RFC 6585:

Código HTTP
Descrição

200

OK: A solicitação foi bem-sucedida. O cliente pode ler o resultado do pedido no corpo e os cabeçalhos da resposta.

204

No Content: A solicitação foi bem-sucedida, mas não retorna nenhum corpo da mensagem.

304

Not Modified: Consulte Requisições condicionais.

400

Bad Request: O pedido não pôde ser compreendido pelo servidor devido à sintaxe malformada. O corpo da mensagem conterá mais informações; Consulte Detalhes do erro.

401

Unauthorized: A solicitação requer autenticação do usuário ou, se a solicitação incluir credenciais de autorização, a autorização foi recusada para essas credenciais.

403

Forbidden: O servidor entendeu o pedido, mas se recusa a cumpri-lo.

404

Not Found: Não foi possível encontrar o recurso solicitado. Este erro pode ser devido a uma condição temporária ou permanente.

409

Conflict: Alguma regra de negócio foi violada.

429

Too Many Requests: Taxas de consumo foram aplicadas. Consulte Taxas de consumo.

500

Internal Server Error: Você nunca deve receber este erro porque nossos programadores irão pegar todos... mas se você é azarado o suficiente para obter um, por favor informe-nos através de um comentário na parte inferior desta página.

503

Service Unavailable: O servidor é atualmente incapaz de lidar com a solicitação devido a uma condição temporária que será aliviada após algum atraso. Você pode optar por reenviar a solicitação novamente.

 

A API usa um formato para descrever seus erros.

Erro Padrão

Além dos códigos HTTP de erro, as respostas mal-sucedidas retornam informações sobre o erro como um objeto JSON de erro contendo as seguintes informações:

Chave
Tipo
Descrição

code

string

Código do erro ocorrido, no formato (000).

message

string

Uma breve descrição da causa do erro.

Exemplo de retorno:

HTTP/1.1 400 Bad Request
{
"code": "010",
"message": "Senha incorreta, você tem 3 tentativas."
}

Autenticação

Todas as requisições para a API requerem autenticação, com ou sem usuário vinculado. Para obter mais informações sobre os métodos de autenticação, consulte o Guia de Autorização da Web API. Observe que, para acessar as informações pessoais de um usuário, é necessário um access token gerado ao solicitar permissão do usuário para acessar os dados (com excessão do fluxo de autenticação Password).

Suggest Edits

Tutorial para Iniciantes

 

Este tutorial mostra como criar um pequeno aplicativo do lado do servidor que acessa dados relacionados ao usuário através da Web API da Dotz.

Ao usar as Ferramentas da Dotz, você aceita nossos Termos de uso do desenvolvedor.

Suggest Edits

Sobre este tutorial

 

Através da Web API da Dotz, aplicativos externos podem recuperar conteúdo da Dotz, como dados de extrato ou produtos.

Este tutorial é baseado em como obter um client id e client secret para realizar requisições para a Web API.

Demonstrado como:

  1. Registrar um aplicativo do Portal do Desenvolvedor.
  2. Autenticar uma aplicação e um usuário.
  3. Recuperar dados da Web API da Dotz através de um endpoint.

O fluxo de autorização que usaremos neste tutorial é o Fluxo Client Credentials. Este fluxo primeiro envia uma requisição com client id, client secret, grant_type e scope.

Os dados que vamos recuperar serão do ponto de extremidade da Web API que for requisitada.

Suggest Edits

Configurando sua Conta

 

Para que seja possível utilizar a Web API da Dotz, o primeiro passo necessário é ter uma conta de usuário na Dotz. Para obter uma, cadastre-se.

Com o seu cadastro, utilize a mesma credencial de acesso do Site Dotz no Tron, que é o Gerenciador de Aplicações para integração com a Web API da Dotz.

Utilize a mesma credencial do Site Dotz.

Utilize a mesma credencial do Site Dotz.

Selecione o seu nome, caso não seja você, clique em 'Acesse outra conta'.

Selecione o seu nome, caso não seja você, clique em 'Acesse outra conta'.

Utilize a mesma senha do cadastro realizado no Site Dotz.

Utilize a mesma senha do cadastro realizado no Site Dotz.

Na tela inicial do Developer Portal, clique em 'New Application'.

Na tela inicial do Developer Portal, clique em 'New Application'.

Preencha os dados de sua aplicação e clique em Save.

Preencha os dados de sua aplicação e clique em Save.

Aplicação está pendente de aprovação, em breve será analisada e aprovada (o processo de aprovação será utilizada na fase beta).

Aplicação está pendente de aprovação, em breve será analisada e aprovada (o processo de aprovação será utilizada na fase beta).

Processo Aprovação

Na fase beta, todas as aplicações que forem criadas terão que passar por um processo de aprovação interna da Dotz.

Assim que a aplicação for aprovada, será disponibilizado os botões Edit e Delete. Clique em Edit.

Assim que a aplicação for aprovada, será disponibilizado os botões Edit e Delete. Clique em Edit.

Foi gerado para essa aplicação um Client Id e um Client Secret, esse dados serão utilizados para os próximos passos de integração.

Foi gerado para essa aplicação um Client Id e um Client Secret, esse dados serão utilizados para os próximos passos de integração.

Com os dados do client id e client secret, é possível gerar access tokens para consumir a Web API. Inicialmente, gere uma codificação para base 64 com o valor da chave no formato <client id>:<client secret>.

Com esse valor, faça uma requisição ao Accounts, como demonstrado a seguir:

-X POST http://uat-accounts.dotzlabs.com/connect/token -H "authorization: Basic WTVV...S1BHOFVVVA==" -d "scope=addressdata.api%20programs.api%20rewards.api%20storelocator.api&response_type=token&grant_type=client_credentials"
{
  "access_token": "eyJhb...wRw",
  "expires_in": 3600,
  "token_type": "Bearer"
}

Foi realizada uma requisição para obter um Token para acessar os endpoints:

  • Address Data
  • Programs
  • Rewards
  • Store Locator

A obtenção desse access token pela aplicação é possível sem a necessidade de login do usuário, sendo possível obter dados sem o usuário estar logado.

Fluxo Temporário

A seguir um exemplo de requisição com usuário logado (fluxo temporário), será utilizado apenas por sistemas legados. Além dos parâmetros scope, response_type e grant_type, também é enviado os parâmetros username e password.

-X POST http://uat-accounts.dotzlabs.com/connect/token -H "authorization: Basic WTVV...S1BHOFVVVA==" -d "scope=addressdata.api%20members.api%20programs.api%20purchasepoints.api%20redemptions.api%20rewards.api%20shoppingcart.api%20storelocator.api%20subscriptions.api%20wallet.api%20wishlist.api&response_type=token&grant_type=password&username=<user_idenfier>&password=<user_password>"
{
  "access_token": "eyJhb...wRw",
  "expires_in": 3600,
  "token_type": "Bearer"
}

Tanto o primeiro, como o segundo exemplo de requisição, retornam um access token que pode ser utilizado no parâmetro Authorization do header para consumir um dos endpoints, como demonstrado abaixo:

-X GET --header 'Authorization: Bearer eyJhbGc...RMJNelA' 'http://uat-wallet.dotzlabs.com/Balance'
{
  "available": 835303,
  "pending": 0,
  "expiring": 167,
  "nextExpirationDate": "2019-04-28T00:00:00Z"
}
Suggest Edits

Guia de Autorização da Web API

 

Este guia mostra como obter a autorização de um usuário para acessar dados por meio da Web API.

Suggest Edits

1 . Introdução

 

Todas as solicitações para a Dotz API requerem autorização, ou seja, toda requisição precisa ser autorizada por um usuário (para tornar disponível seus dados) ou para uma determinada função que não requer dados do usuário. Para provar que o usuário concedeu permissão, o cabeçalho da solicitação enviado pelo aplicativo deve incluir um access token válido.

Como primeiro passo para a autorização, você precisará registrar sua aplicação. Isso lhe dará um client id e client secret exclusivos de aplicação cliente para usar nos fluxos de autorização.

Suggest Edits

2. Fluxos de Autorização Permitidos

 

Atualmente, a Dotz API suporta dois fluxos de autorização:

  1. O fluxo Client Credentials permite que você obtenha um access token fornecendo suas credencias (client id e client secret).

  2. O fluxo Password funciona de forma semelhante ao Client Credentials, porém com os dados do cliente. Além do access tokens emitido, também é fornecido o refresh token para renovar o access token quando expirado.

Suggest Edits

4. Fluxo Client Credentials

 
  • O método torna possível autenticar suas solicitações para a Web API da Dotz. No entanto, note que este fluxo não inclui autorização e, portanto, não pode ser usado para acessar ou gerenciar dados privados de um usuário. Este fluxo é descrito na RFC-6749.

1. Sua aplicação requisita a Autorização

A requisição é enviada para /connect/token do serviço de Accounts:

curl -X POST http://uat-accounts.dotzlabs.com/connect/token -H "authorization: Basic Nlh...NjNRUA==" -d "grant_type=client_credentials&scope=addressdata.api%20storelocator.api%20rewards.api"

Essa requisição deve incluir os parâmetros no corpo da requisição:

Parâmetro do corpo da requisição
Valor

scope

Requerido. Um ou mais escopos solicitados pelo token.

grant_type

Requerido. Definir como 'client_credentials'.

O header da requisição POST deve conter os seguintes parâmetros:

Parâmetro do Header
Valor

Authorization

Requerido. Seqüência codificada em Base 64 que contém o client id e a client secret da aplicação cliente. O campo deve ter o formato: Authorization: Basic <base64 encoded client_id:client_secret>

Por exemplo:

curl -X POST http://uat-accounts.dotzlabs.com/connect/token -H "authorization: Basic Nlh...NjNRUA==" -d "grant_type=client_credentials&scope=addressdata.api%20storelocator.api%20rewards.api"
{
    "access_token":"eyJhb...8KIw",
    "expires_in":3600,
    "token_type":"Bearer"
}

2. Use o access token para acessar a Web API da Dotz

O access token permite que você faça requisições aos pontos de extremidade da Web API da Dotz, que não requerem autorização do usuário, como o ponto de extremidade Obter Estados,, por exemplo:

curl -X GET http://uat-addressdata.dotzlabs.com/states -H "authorization: Bearer eyJh...InmQ"
{
  "items": [
    {
      "id": "MT8J7PSCVXQHHS9Y",
      "abreviation": "AC",
      "name": "Acre"
    },
    {
      "id": "768VFHC3PMULECQB",
      "abreviation": "AL",
      "name": "Alagoas"
    },
    ...]
}
Suggest Edits

5. Fluxo Password

 

O método torna possível autenticar suas solicitações para a Web API da Dotz assumindo os dados de um usuário. Este fluxo é descrito na RFC-6749.

Possibilidade de Uso

Esse fluxo somente é possível ser utilizado por aplicações aprovadas com essa permissão, que não é habilitada por padrão.

1. Sua aplicação requisita a Autorização

A requisição é enviada para /connect/token do serviço de Accounts:

curl -X POST http://uat-accounts.dotzlabs.com/connect/token -H "authorization: Basic NlhM...RA==" -d "grant_type=password&username=00000000000&password=ABCDEFD"

Essa requisição deve incluir os parâmetros no corpo da requisição:

Parâmetro do corpo da requisição
Valor

grant_type

Requerido. Definir como 'password'.

username

Identificador do usuário na plataforma. Pode ser CPF, CNPJ ou e-mail.

password

Senha do usuário na plataforma. Deve ser codificado em Base64.

Não é necessário utilizar o campo Scope

O campo scope, utilizado no fluxo Client Credentials, não é necessário nesse fluxo. Automaticamente todos os escopos são atribuídos ao access token gerado.

O header da requisição POST deve conter os seguintes parâmetros:

Parâmetro do Header
Valor

Authorization

Requerido. Seqüência codificada em Base 64 que contém o client id e a client secret da aplicação cliente. O campo deve ter o formato: Authorization: Basic <base64 encoded client_id:client_secret>

Por exemplo:

curl -X POST http://uat-accounts.dotzlabs.com/connect/token -H "authorization: Basic Nlh...RUA==" -d "grant_type=password&username=00000000000&password=ABCDEFG"
{
  "access_token": "eyJhb...J1K_w",
  "expires_in": 3600,
  "token_type": "Bearer",
  "refresh_token": "717c4...683"
}

2. Use o access token para acessar a Web API da Dotz

Com access token obtido no passo anterior, é possível realizar chamadas para as Web APIs que precisam dos dados do usuário, como por exemplo, a operação Obter Saldo, por exemplo:

curl -X GET --header "Authorization: Bearer eyJ...Nhhw" "http://uat-api.dotzlabs.com/wallet/balance"

3. Atualizando o Access Token

Para atualizar o access token, uma requisição é enviada para /connect/token do serviço de Accounts:

curl -X POST http://uat-accounts.dotzlabs.com/connect/token -H 'authorization: Basic NlhM...RUA==' -d 'grant_type=refresh_token&refresh_token=a97b29...0c48'

Essa requisição deve incluir os parâmetros no corpo da requisição:

Parâmetro do corpo da requisição
Valor

grant_type

Requerido. Definir como 'refresh_token'.

refresh_token

Requerido. Refresh token recebido na resposta do passo 2.

O header da requisição POST deve conter os seguintes parâmetros:

Parâmetro do Header
Valor

Authorization

Requerido. Seqüência codificada em Base 64 que contém o client id e a client secret da aplicação cliente. O campo deve ter o formato: Authorization: Basic <base64 encoded client_id:client_secret>

Por exemplo:

curl -X POST http://uat-accounts.dotzlabs.com/connect/token -H 'authorization: Basic NlhM...RUA==' -d 'grant_type=refresh_token&refresh_token=a97b29...0c48'
Suggest Edits

6. Escopos

 

Os possíveis escopos que podem ser utilizados por uma aplicação é listado em cada aplicação no Developer Portal.

Abaixo segue a lista de possíveis escopos:

Nome
Escopo

Address Data API

addressdata.api

Members API

members.api

Purchase Points API

purchasepoints.api

Redemptions API

redemptions.api

Signup API

signup.api

Store Locator API

storelocator.api

Subscriptions API

subscriptions.api

Wallet API

wallet.api

 

Segue a tabela com os possíveis erros que podem ocorrer no endpoint /connect/token do serviço de Accounts:

Código HTTP
Código Erro
Descrição Erro

400

000

client_id ou client_secret deve ser informado.

400

001

client_id ou client_secret é inválido.

400

002

grant_type deve ser informada.

400

003

grant_type é inválida.

400

004

Deve ser informado um identificador de usuário (CNPJ, CPF ou e-mail).

400

005

Nenhum usuário foi encontrado para o identificador {0} informado.

400

006

Deve ser informada uma senha.

400

007

Senha em formato inválido.

400

008

Senha não cadastrada no programa.

400

009

Usuário bloqueado.

400

010

Senha incorreta, você tem {0} tentativas.

Suggest Edits

Addresses

 
Suggest Edits

/Addresses

Exemplo de requisição para obtenção de endereços:

Request:
GET /addresses?_pageSize=100&amp;_page=1&amp;CountryCode=55&amp;City=%25PAULO%25&amp;State=SP&amp;StreetName=PRA%C3%87A%20DA%25

{
    "_pageSize": 100,
    "_page": 1,
    "items": [{
            "countryCode": 55,
            "countryName": "Brazil",
            "streetType": "Praça",
            "streetName": "Praça da Sé",
            "district": "Sé",
            "city": "São Paulo",
            "state": "SP",
            "postalCode": "01001000"

        },
        {
            "countryCode": 55,
            "countryName": "Brazil",
            "streetType": "Praça",
            "streetName": "Praça da Sé",
            "district": "Sé",
            "city": "São Paulo",
            "state": "SP",
            "postalCode": "01001001"
        }
    ]
}
 
getuat-api.dotzlabs.com/address-data/v1/addresses
curl --request GET \
  --url http://uat-api.dotzlabs.com/address-data/v1/addresses \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/address-data/v1/addresses',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/address-data/v1/addresses")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/address-data/v1/addresses");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/address-data/v1/addresses"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

_pageSize
int32

Limite de endereços por página.

_page
int32

Posição de paginação atual.

CountryCode
int32

Código do país desejado. Se não informado deve ser ignorado na pesquisa.

PostalCode
string

Postal Code desejado, pode-se utilizar '%' no começo ou no fim do código para filtrar resultados próximos.
Se vazio, deve ser ignorado na pesquisa.
Exemplos: o valor '04402%' retorna todos os valores que começarem com o Postal Code de valor '04402'.

City
string

Cidade desejada, pode-se utilizar '%' no começo ou no fim do código para filtrar resultados próximos.
Se vazio, deve ser ignorado na pesquisa.
Exemplos: o valor 'São%' retorna todos os valores que começarem com o City de valor 'São'.

State
string

Valor fixo de um estado. Podendo ser: SP, MG, BH, entre outros.
Se vazio, deve ser ignorado na pesquisa.

StreetName
string

Nome da rua desejada, pode-se utilizar '%' no começo ou no fim do campo para filtrar resultados próximos.
Se vazio deve ser ignorado na pesquisa.
Exemplo: o valor 'São%' retorna todos os valores que começarem com o valor 'São'.

Headers

Authorization
string
required

access token

Response

Lista de endereços.

_pageSizeinteger
_pageinteger
_totalinteger
itemsarray

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring
Suggest Edits

/Areas

Exemplo de requisição para obter a lista de áreas existentes:

Request:
GET /areas?_pageSize=100&amp;_page=1

Response:
{
    "_pageSize": 100,
    "_page": 1,
    "items": [{
            "id": "mZo6ynX51XYlpR4",
            "name": "Acre"
        },
        {
            "id": "9Pp28W3GbO0kwBz",
            "name": "Alagoas"
        },
        {
            "id": "AQd9JDOqAOWBg4y",
            "name": "Amapá"
        }
    ]
}
 
getuat-api.dotzlabs.com/address-data/v1/areas
curl --request GET \
  --url http://uat-api.dotzlabs.com/address-data/v1/areas \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/address-data/v1/areas',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/address-data/v1/areas")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/address-data/v1/areas");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/address-data/v1/areas"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

_pageSize
int32

Limite de areas por página.

_page
int32

Posição de paginação atual.

Headers

Authorization
string
required

access token

Response

Lista de áreas.

_pageSizeinteger
_pageinteger
_totalinteger
itemsarray

Formato inválido do(s) paramêtro(s) de entrada.

Suggest Edits

/Areas/{AreaId}/cities

Exemplo de requisição para obter a lista de cidades de uma área:

Request:
GET /areas/Ww9KLQO4LO4VdZq/cities?_pageSize=100&amp;_page=1

Response:
{
    "_pageSize": 100,
    "_page": 1,
    "items": [{
            "id": "W8RbJE6YW4XPKyQ",
            "areadId": "Ww9KLQO4LO4VdZq",
            "name": "Abapã (Castro)",
            "state": "PR",
            "presence": true

        },
        {
            "id": "0bNQv3Wo2K3DWVr",
            "areadId": "Ww9KLQO4LO4VdZq",
            "name": "Abatiá",
            "state": "PR",
            "presence": true
        }
    ]
}
 
getuat-api.dotzlabs.com/address-data/v1/areas/AreaId/cities
curl --request GET \
  --url http://uat-api.dotzlabs.com/address-data/v1/areas/AreaId/cities \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/address-data/v1/areas/AreaId/cities',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/address-data/v1/areas/AreaId/cities")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/address-data/v1/areas/AreaId/cities");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/address-data/v1/areas/AreaId/cities"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

AreaId
string
required

Identificador da area

Query Params

_pageSize
int32

Limite de áreas por página.

_page
int32

Posição de paginação atual.

Headers

Authorization
string
required

access token

Response

Lista de cidades de uma área.

_pageSizeinteger
_pageinteger
_totalinteger
itemsarray

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring
Suggest Edits

/Cities

Exemplo de requisição para obter a listagem de cidades:

Request:
GET /cities?_pageSize=100&amp;_page=1&amp;StateId=Nd01GLOJDXmenky&amp;Presence=true

Response:
{
    "_pageSize": 100,
    "_page": 1,
    "items": [{
            "id": "2J54BX19WwXxpZr",
            "areadId": "wd0Q5p3PgObzG9a",
            "name": "Águas de Lindóia",
            "state": "SP",
            "presence": true

        },
        {
            "id": "NGKdvX74PWEPxpr",
            "areadId": "wd0Q5p3PgObzG9a",
            "name": "Águas de São Pedro",
            "state": "SP",
            "presence": true
        }
    ]
}
 
getuat-api.dotzlabs.com/address-data/v1/cities
curl --request GET \
  --url http://uat-api.dotzlabs.com/address-data/v1/cities \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/address-data/v1/cities',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/address-data/v1/cities")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/address-data/v1/cities");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/address-data/v1/cities"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

_pageSize
int32

Limite de estados por página.

_page
int32

Posição de paginação atual.

StateId
string

Identificador do estado.

Presence
boolean

Praça Dotz

Headers

Authorization
string
required

access token

Response

Lista de cidades.

_pageSizeinteger
_pageinteger
_totalinteger
itemsarray

Bad Request

codestring
messagestring
 
Suggest Edits

/Regions

Exemplo de requisição para obtenção da lista de regiões existentes:

Request:
GET /regions

Response:
[
  {
    "id": "mZo6ynX51XYlpR4",
    "name": "Norte"
  },
  {
    "id": "9Pp28W3GbO0kwBz",
    "name": "Nordeste"
  }
]
 
getuat-api.dotzlabs.com/address-data/v1/regions
curl --request GET \
  --url http://uat-api.dotzlabs.com/address-data/v1/regions \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/address-data/v1/regions',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/address-data/v1/regions")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/address-data/v1/regions");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/address-data/v1/regions"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Headers

Authorization
string
required

access token

Response

Lista de regiões.

Suggest Edits

/States

Exemplo de requisição para obter a lista de estados existente:

Request:
GET /states

Response:
{
  "_pageSize": 10,
  "_page": 1,
  "items": [
    {
      "id": "mZo6ynX51XYlpR4",
      "abreviation": "AC",
      "name": "Acre"
    },
    {
      "id": "9Pp28W3GbO0kwBz",
      "abreviation": "AL",
      "name": "Alagoas"
    }
  ]
}
 
getuat-api.dotzlabs.com/address-data/v1/states
curl --request GET \
  --url http://uat-api.dotzlabs.com/address-data/v1/states \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/address-data/v1/states',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/address-data/v1/states")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/address-data/v1/states");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/address-data/v1/states"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

_pageSize
int32

Limite de estados por página.

_page
int32

Posição de paginação atual.

Headers

Authorization
string
required

access token

Response

Lista de estados.

_pageSizeinteger
_pageinteger
_totalinteger
itemsarray
Suggest Edits

/States/{StateId}/cities

Exemplo de requisição para obter a lista de cidades de um estado:

Request:
GET /states/Nd01GLOJDXmenky/cities?_pageSize=100&amp;_page=1

Response:
{
    "_pageSize": 100,
    "_page": 1,
    "items": [{
            "id": "2J54BX19WwXxpZr",
            "areadId": "wd0Q5p3PgObzG9a",
            "name": "Águas de Lindóia",
            "state": "SP",
            "presence": true

        },
        {
            "id": "NGKdvX74PWEPxpr",
            "areadId": "wd0Q5p3PgObzG9a",
            "name": "Águas de São Pedro",
            "state": "SP",
            "presence": true
        }
    ]
}
 
getuat-api.dotzlabs.com/address-data/v1/states/StateId/cities
curl --request GET \
  --url http://uat-api.dotzlabs.com/address-data/v1/states/StateId/cities \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/address-data/v1/states/StateId/cities',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/address-data/v1/states/StateId/cities")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/address-data/v1/states/StateId/cities");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/address-data/v1/states/StateId/cities"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

StateId
string
required

Identificador do estado.

Query Params

_pageSize
int32

Limite de estados por página.

_page
int32

Posição de paginação atual.

Headers

Authorization
string
required

access token

Response

Lista de cidades de um estado.

_pageSizeinteger
_pageinteger
_totalinteger
itemsarray

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Not Found

codestring
messagestring

Tabela de erros do endpoint [GET] /states:

Código HTTP
Código Erro
Mensagem de Erro

400

001

O valor de _pageSize deve estar entre 1 e 100.

400

002

_page deve ser maior que 0.

Tabela de erros do endpoint [GET] /states/{StateId}/cities:

Código HTTP
Código Erro
Mensagem de Erro

400

003

O valor de _pageSize deve estar entre 1 e 100.

400

004

_page deve ser maior que 0.

400

005

Identificador do estado (StateId) inválido.

404

006

Estado não encontrado.

Tabela de erros do endpoint [GET] /cities:

Código HTTP
Código Erro
Mensagem de Erro

400

007

O valor de _pageSize deve estar entre 1 e 100.

400

008

_page deve ser maior que 0.

400

009

Identificador do estado (StateId) inválido.

Tabela de erros do endpoint [GET] /areas:

Código HTTP
Código Erro
Mensagem de Erro

400

010

O valor de _pageSize deve estar entre 1 e 100.

400

011

_page deve ser maior que 0.

Tabela de erros do endpoint [GET] /areas/{AreaId}/cities:

Código HTTP
Código Erro
Mensagem de Erro

400

012

O valor de _pageSize deve estar entre 1 e 100.

400

013

_page deve ser maior que 0.

400

014

Identificador de área (AreaId) inválido.

404

015

Área não encontrada.

Suggest Edits

Addresses

 

Tabela de erros do endpoint [GET] /addresses:

Código HTTP
Código Erro
Mensagem de Erro

400

016

O valor de _pageSize deve estar entre 1 e 100.

400

017

_page deve ser maior que 0.

400

018

Código do país (CountryCode) é inválido. Somente é aceito 55.

Suggest Edits

Contracts

 
Suggest Edits

/Contracts

Exemplo de requisição para listagem de contratos:

 Request:
 GET /contracts?latest=true

 Response:
 [
      {
         "contractId":"rajkbJDN85F4TCbH",
         "termId":"b4fda0a313eb4de0ae0",
         "startDate":"2017-01-01",
         "endDate":"2017-03-01",
         "document":"Descrição do documento sem formatação.",
         "htmlDocument":"Descrição do documento formatado com html."
     },
        {
         "contractId":"4iONiayFc5CV1Ni",
         "termId":"3b4108553da64257",
         "startDate":"2017-03-02",
         "endDate":null,
         "document":"Descrição do documento sem formatação.",
         "htmlDocument":"Descrição do documento formatado com html."
        }
 ]
 
getuat-api.dotzlabs.com/agreements/v1/contracts
curl --request GET \
  --url http://uat-api.dotzlabs.com/agreements/v1/contracts \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/agreements/v1/contracts',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/agreements/v1/contracts")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/agreements/v1/contracts");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/agreements/v1/contracts"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

Latest
boolean

Se deve ser o vigente ou não.

ContractId
string

Identificador do contrato.

Headers

Authorization
string
required

access token

Response

Success

Suggest Edits

Signature

 
Suggest Edits

/Signature

Exemplo de requisição para criação/atualização.

Request:
POST /signature
{
    "termId":"4407561ffdcb4c7",
    "deviceType":0, 
    "platform":2,
    "userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36",
    "model":"Samsung Galaxy S4",
    "ip":"168.18.1.1"
}
 
postuat-api.dotzlabs.com/agreements/v1/signature
curl --request POST \
  --url http://uat-api.dotzlabs.com/agreements/v1/signature \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'POST',
  url: 'http://uat-api.dotzlabs.com/agreements/v1/signature',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/agreements/v1/signature")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Post.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "http://uat-api.dotzlabs.com/agreements/v1/signature");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/agreements/v1/signature"

headers = {'authorization': 'Authorization'}

response = requests.request("POST", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Body Params

userId
string

Identificador do usuário, somente é aceito por sistemas internos (por mensageria).
Sistemas externos devem estar logados.

termId
string
required

Identificador do termo utilizado.

deviceType
int32
required

Tipo do dispositivo, pode ser (0) Computer, (1) Smartphone, (2) Tablet ou (3) Others.

platform
int32

Plataforma utilizada, pode ser (0) Android, (1) iOS, (2) Linux, (3) macOS, (4) Windows ou (5) Other.

userAgent
string
required

Agente que realizou a requisição HTTP.

model
string

Modelo do dispositivo (se for possível obter).

ip
string
required

IP do requisitante.

Headers

Authorization
string
required

access token

Response

Operação realizada com sucesso.

userIdstring

Identificador do usuário, somente é aceito por sistemas internos (por mensageria).
Sistemas externos devem estar logados.

termIdstring

Identificador do termo utilizado.

deviceTypeinteger

Tipo do dispositivo, pode ser (0) Computer, (1) Smartphone, (2) Tablet ou (3) Others.

platforminteger

Plataforma utilizada, pode ser (0) Android, (1) iOS, (2) Linux, (3) macOS, (4) Windows ou (5) Other.

userAgentstring

Agente que realizou a requisição HTTP.

modelstring

Modelo do dispositivo (se for possível obter).

ipstring

IP do requisitante.

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Ocorreu um erro de negócio.

codestring
messagestring
Suggest Edits

Signature

 

Tabela de erros do endpoint [POST] /signature:

Código HTTP
Código Erro
Mensagem de Erro

400

001

Identificador do termo deve ser informado.

404

002

Identificador do termo ({0}) informado não existe.

400

003

Identificador do usuário deve ser informado.

404

004

Identificador do usuário não encontrado.

400

005

Identificador do usuário só pode ser informado se for um sistema interno.

400

006

Identificador do dispositivo deve ser informado.

404

007

Identificador do dispositivo não encontrado.

400

008

Identificador da plataforma deve ser informado.

404

009

Identificador da plataforma não encontrado.

409

010

Usuário já assinou esse termo.

400

011

Termo informado não está ativo.

400

012

userAgent deve informado.

400

013

userAgent deve ter entre 5 a 1000 caracteres.

400

014

IP deve ser informado.

400

015

IP informado é inválido.

400

016

Model, se informado, deve ter no máximo 20 caracteres.

400

017

Requisição em formato inválido.

 
Suggest Edits

/Invoices

Exemplo de requisição para consulta de faturas:

Request:
GET /invoices?_pageSize=100&amp;_page=1&amp;IssuedDateFrom=2016/01/01&amp;IssuedDateTo=2017/10/01

Response:
{
    "_pageSize": 100,
    "_page": 1,
    "items": [{
            "id": "1012759-P-0050",
            "contractName": "Contrato principal",
            "description": "Depósito inicial",
            "issuedDate": "19/07/2016 15:32:35",
            "totalAmount": 0,
            "chargesAmount": 0,
            "discountsAmount": 0

        },
        {
            "id": "1012759-P-0049",
            "contractName": "Contrato principal",
            "description": "Depósito inicial",
            "issuedDate": "24/03/2016 15:13:10",
            "totalAmount": 0,
            "chargesAmount": 0,
            "discountsAmount": 0
        }
    ]
}
 
getuat-api.dotzlabs.com/billing/v1/invoices
curl --request GET \
  --url http://uat-api.dotzlabs.com/billing/v1/invoices \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/billing/v1/invoices',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/billing/v1/invoices")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/billing/v1/invoices");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/billing/v1/invoices"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

_pageSize
int32

Limite de invoices por página.

_page
int32

Posição de paginação atual.

IssuedDateFrom
date-time

Data de emissão inicial do filtro.

IssuedDateTo
date-time

Data de emissão final do filtro.

Headers

Authorization
string
required

access token

Response

Lista de faturas.

_pageSizeinteger
_pageinteger
_totalinteger
itemsarray

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring
Suggest Edits

/Invoices/{InvoiceId}

Exemplo de requisição para consulta de uma fatura:

Request:
GET /invoices/1012759-P-0050

Response:
{
  "id": "1012759-P-0050",
  "contractName": "Contrato principal",
  "description": "Depósito inicial",
  "issuedDate": "19/07/2016 15:32:35",
  "totalAmount": 0,
  "chargesAmount": 0,
  "discountsAmount": 0
}
 
getuat-api.dotzlabs.com/billing/v1/invoices/InvoiceId
curl --request GET \
  --url http://uat-api.dotzlabs.com/billing/v1/invoices/InvoiceId \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/billing/v1/invoices/InvoiceId',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/billing/v1/invoices/InvoiceId")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/billing/v1/invoices/InvoiceId");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/billing/v1/invoices/InvoiceId"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

InvoiceId
string
required

Identificador da fatura

Headers

Authorization
string
required

access token

Response

Dados de uma fatura.

idstring

Identificador da fatura

contractNamestring

Nome do contrato.

descriptionstring

Descrição.

issuedDatestring

Data de emissão.

totalAmountnumber

Total da fatura. TotalAmount = ChargesAmount - DiscountsAmount.

chargesAmountnumber

Valor que está sendo cobrado.

discountsAmountnumber

Desconto do total da fatura.

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Registro não encontrado.

codestring
messagestring
Suggest Edits

/Invoices/{InvoiceId}/items

 
getuat-api.dotzlabs.com/billing/v1/invoices/InvoiceId/items
curl --request GET \
  --url http://uat-api.dotzlabs.com/billing/v1/invoices/InvoiceId/items \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/billing/v1/invoices/InvoiceId/items',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/billing/v1/invoices/InvoiceId/items")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/billing/v1/invoices/InvoiceId/items");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/billing/v1/invoices/InvoiceId/items"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

InvoiceId
string
required

Id da fatura

Headers

Authorization
string
required

access token

Response

Lista de itens da fatura.

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Not Found

codestring
messagestring
Suggest Edits

/Invoices/{InvoiceId}/transactions

Exemplo de requisição para consulta de transações de uma fatura:

Request:
GET /invoices/1012759-P-0048/transactions?_pageSize=100&amp;_page=1

Response:
{
  "_pageSize": 100,
  "_page": 1,
  "items": [
    {
      "id": "201601210005494",
      "locationAlias": "MATRIZ",
      "locator": null,
      "purchaseValue": 143,
      "points": 10000,
      "issuedDate": "2016-01-21T09:30:06.57Z",
      "confirmedDate": null,
      "memberIdentifierType": null,
      "memberIdentifier": null,
      "offerCode": "4grYbEjNPEoj6Lz",
      "type": 7,
      "itemType": 1,
      "currencyValue": 0.0143
    }
  ]
}
 
getuat-api.dotzlabs.com/billing/v1/invoices/InvoiceId/transactions
curl --request GET \
  --url http://uat-api.dotzlabs.com/billing/v1/invoices/InvoiceId/transactions \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/billing/v1/invoices/InvoiceId/transactions',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/billing/v1/invoices/InvoiceId/transactions")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/billing/v1/invoices/InvoiceId/transactions");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/billing/v1/invoices/InvoiceId/transactions"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

InvoiceId
string
required

Identificador da fatura.

Query Params

_pageSize
int32

Limite de invoices por página.

_page
int32

Posição de paginação atual.

Headers

Authorization
string
required

access token

Response

Lista das transações de uma fatura.

_pageSizeinteger
_pageinteger
_totalinteger
itemsarray

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Not Found

codestring
messagestring
 

Tabela de erros do endpoint [GET] /invoices:

Código HTTP
Código Erro
Mensagem de Erro

400

001

O valor de _limit deve estar entre 1 e 100.

400

002

_page deve ser maior que 0.

400

003

Data de emissão inicial inválida (IssuedDateFrom).

400

004

Data de emissão final (IssuedDateTo) inválida.

Tabela de erros do endpoint [GET] /invoices/{InvoiceId}:

Código HTTP
Código Erro
Mensagem de Erro

400

005

Identificador da fatura (InvoiceId) não pode ser vazio.

404

006

Fatura não encontrada.

Tabela de erros do endpoint [GET] /invoices/{InvoiceId}/Items:

Código HTTP
Código Erro
Mensagem de Erro

400

007

Identificador da fatura (InvoiceId) não pode ser vazio.

404

008

Fatura não encontrada.

Tabela de erros do endpoint [GET] /invoices/{InvoiceId}/transactions:

Código HTTP
Código Erro
Mensagem de Erro

400

009

Identificador da fatura (InvoiceId) não pode ser vazio.

400

010

O valor de _pageSize deve estar entre 1 e 100.

400

011

_page deve ser maior que 0.

404

012

Fatura não encontrada.

Tabela de erros do endpoint [POST] /checkout:

Suggest Edits

/Cart

Exemplo de requisição para obter o carrinho do usuário com seus itens:

Request:
GET /cart?State=CE

Response:
{
    "totalQuantity": 1,
    "totalPoints": 415,
    "enoughBalance": true,
    "missingBalance": 0,
    "finalBalance": 13468,
    "balance": 13883,
    "items": [{
        "sku": "769658",
        "ean": null,
        "name": "Vale-Compras R$ 5",
        "shortName": "",
        "quantity": 1,
        "brand": null,
        "unityPoints": 415,
        "totalPoints": 415,
        "moneyTransactionId": 1,
        "available": true,
        "images": [{
            "url": "https://dotz.r.worldssl.net/produtos/imagens/200/769658_g.jpg",
            "order": 1

        }]
    }]
}
 
getuat-api.dotzlabs.com/cart/v1/cart
curl --request GET \
  --url http://uat-api.dotzlabs.com/cart/v1/cart \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/cart/v1/cart',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/cart/v1/cart")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/cart/v1/cart");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/cart/v1/cart"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

State
string

Sigla do Estado. Exemplo: SP, MG, SC, entre outros.

Headers

Authorization
string
required

access token

Response

Carrinho do usuario.

totalQuantityinteger

Quantidade total de produtos no carrinho.

totalPointsnumber

Soma total de pontos dos produtos do carrinho. Soma do campo 'TotalPoints' dos itens.

enoughBalanceboolean

Se tem o valor suficiente de saldo para conseguir realizar o checkout. (deve-se consulta o saldo do usuário)

missingBalancenumber

Saldo que falta para poder comprar o carrinho.

finalBalancenumber

Saldo após a troca (se efetivada)

balancenumber

Saldo do usuário.

itemsarray

Itens do carrinho.

Bad Request

codestring
messagestring
Suggest Edits

/Cart

Exemplo de requisição para remoção de todos os itens do carrinho do usuário:

Request:
DELETE /cart    

Response: (vazio)
 
deleteuat-api.dotzlabs.com/cart/v1/cart
curl --request DELETE \
  --url http://uat-api.dotzlabs.com/cart/v1/cart \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'DELETE',
  url: 'http://uat-api.dotzlabs.com/cart/v1/cart',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/cart/v1/cart")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Delete.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "http://uat-api.dotzlabs.com/cart/v1/cart");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/cart/v1/cart"

headers = {'authorization': 'Authorization'}

response = requests.request("DELETE", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Headers

Authorization
string
required

access token

Response

Operacao realizada com sucesso.

Suggest Edits

/Cart/items

Exemplo de requisição para obter a lista de itens do carrinho do usuário:

Request:
GET /cart/items?State=CE

Response:
[{
    "sku": "769658",
    "ean": null,
    "name": "Vale-Compras R$ 5",
    "shortName": "",
    "quantity": 1,
    "brand": null,
    "unityPoints": 415,
    "totalPoints": 415,
    "moneyTransactionId": 1,
    "available": true,
    "images": [{
        "url": "https://dotz.r.worldssl.net/produtos/imagens/200/769658_g.jpg",
        "order": 1
    }]
}]
 
getuat-api.dotzlabs.com/cart/v1/cart/items
curl --request GET \
  --url http://uat-api.dotzlabs.com/cart/v1/cart/items \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/cart/v1/cart/items',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/cart/v1/cart/items")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/cart/v1/cart/items");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/cart/v1/cart/items"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

State
string

Código da localização do usuário

Headers

Authorization
string
required

access token

Response

Itens do carrinho do usuario.

Suggest Edits

/Cart/items

Exemplo de requisição para adicionar um produto ao carrinho:

Request:
POST
{
  "sku": "769658",
  "quantity": 1,
  "cellphoneNumber": "11991999223",
  "loyaltyCardNumber": "string",
  "emailAddress": "teste@dotz.com",
  "tracking": "string",
  "state": "CE"
}

Response: (vazio)
 
postuat-api.dotzlabs.com/cart/v1/cart/items
curl --request POST \
  --url http://uat-api.dotzlabs.com/cart/v1/cart/items \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'POST',
  url: 'http://uat-api.dotzlabs.com/cart/v1/cart/items',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/cart/v1/cart/items")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Post.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "http://uat-api.dotzlabs.com/cart/v1/cart/items");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/cart/v1/cart/items"

headers = {'authorization': 'Authorization'}

response = requests.request("POST", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Body Params

sku
string
required

SKU do produto a ser adicionado no carrinho.

quantity
int32
required

Quantidade do produto a ser adicionado, sempre será somada.

cellphoneNumber
string

Nº de celular.

loyaltyCardNumber
string

Nº do cartão de fidelidade.

emailAddress
string

Endereço de e-mail.

tracking
string

Como chegou no item.

state
string
required

Sigla do Estado. Exemplo: SP, MG, SC, entre outros.

Headers

Authorization
string
required

access token

Response

Operacao realizada com sucesso.

Formato invalido do(s) parametro(s) de entrada.

codestring
messagestring

Nenhum registro encontrado.

codestring
messagestring
codestring
messagestring
Suggest Edits

/Cart/items/quantity

Exemplo de requisição para obter a quantidade de itens no carrinho:

Request:
GET /cart/items/quantity

Response:
{
  "quantity": 1
}
 
getuat-api.dotzlabs.com/cart/v1/cart/items/quantity
curl --request GET \
  --url http://uat-api.dotzlabs.com/cart/v1/cart/items/quantity \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/cart/v1/cart/items/quantity',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/cart/v1/cart/items/quantity")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/cart/v1/cart/items/quantity");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/cart/v1/cart/items/quantity"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Headers

Authorization
string
required

access token

Response

Quantidade de itens no carrinho do usuario.

quantityinteger

Quantidade de itens do carrinho.

Suggest Edits

/Cart/items/{Sku}/{Quantity}

Exemplo de requisição para remoção de uma unidade de um produto do carrinho:

Request:
DELETE /cart/items/769658/1

Response: (vazio)
 
deleteuat-api.dotzlabs.com/cart/v1/cart/items/Sku/Quantity
curl --request DELETE \
  --url http://uat-api.dotzlabs.com/cart/v1/cart/items/Sku/Quantity \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'DELETE',
  url: 'http://uat-api.dotzlabs.com/cart/v1/cart/items/Sku/Quantity',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/cart/v1/cart/items/Sku/Quantity")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Delete.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "http://uat-api.dotzlabs.com/cart/v1/cart/items/Sku/Quantity");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/cart/v1/cart/items/Sku/Quantity"

headers = {'authorization': 'Authorization'}

response = requests.request("DELETE", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

Sku
string
required

Sku.

Quantity
int32
required

Quantidade a ser removida.

Headers

Authorization
string
required

access token

Response

Operação realizada com sucesso.

Formato invalido do(s) parametro(s) de entrada.

codestring
messagestring

Registro nao encontrado.

codestring
messagestring
 
Suggest Edits

/Checkout

Exemplo de requisição para finalizar o carrinho de um usuário:

Request:
POST /checkout?DevliveryAddressId=RK4mE0Za82B3eMb

Response: (vazio)
 
postuat-api.dotzlabs.com/cart/v1/checkout
curl --request POST \
  --url http://uat-api.dotzlabs.com/cart/v1/checkout \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'POST',
  url: 'http://uat-api.dotzlabs.com/cart/v1/checkout',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/cart/v1/checkout")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Post.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "http://uat-api.dotzlabs.com/cart/v1/checkout");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/cart/v1/checkout"

headers = {'authorization': 'Authorization'}

response = requests.request("POST", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

DevliveryAddressId
string

Identificador do endereço de entrega.

Headers

Authorization
string
required

access token

Response

Success

Bad Request

codestring
messagestring

Not Found

codestring
messagestring

Tabela de erros do endpoint [GET] /cart:

Código HTTP
Código Erro
Mensagem de Erro

400

001

Estado não pode ser vazio.

400

002

Estado inválido.

409

003

Saldo indisponível.

Tabela de erros do endpoint [POST] /cart/items:

Código HTTP
Código Erro
Mensagem de Erro

400

004

Sku inválido.

400

005

Estado não pode ser vazio.

400

006

Quantidade deve ser maior que 0.

400

007

Endereço de e-mail inválido.

400

008

Telefone celular inválido.

400

009

Produto não encontrado.

400

010

Status do produto não encontrado.

400

011

Estado do produto não pode ser vazio.

400

012

Número do cartão Smiles inválido.

400

013

Número do cartão TAP inválido.

400

014

Necessário informar o telefone celular para realizar uma recarga.

400

016

Necessário informar o endereço de e-mail para realizar uma troca do tipo Voucher Minutrade.

400

017

Necessário informar o telefone celular para realizar uma troca do tipo Voucher Minutrade.

400

018

Necessário informar o telefone celular para trocar um voucher.

400

019

Necessário informar o endereço de e-mail para trocar um voucher.

400

020

Necessário informar o telefone celular para realizar uma troca do tipo Voucher Eletrônico Fornecedor.

400

021

Necessário informar o endereço de e-mail para realizar uma troca do tipo Voucher Eletrônico Fornecedor.

400

022

Número do cartão LanPass inválido.

400

023

Número do cartão Accor inválido.

409

024

Usuário não pode utilizar este canal de troca.

409

025

Não é possível adicionar um produto virtual ao carrinho.

409

026

Não é possível adicionar um produto indisponível ao carrinho.

409

027

Estoque indisponível para este produto.

409

028

Saldo insuficiente.

409

029

Produto indisponível para este canal de troca.

409

030

Produto indisponível para este fornecedor.

409

031

Fornecedor não encontrado.

409

033

Número máximo de produtos excedido.

400

069

Estado inválido

Tabela de erros do endpoint [DELETE] /cart/items/{Sku}/{Quantity}:

Código HTTP
Código Erro
Mensagem de Erro

400

032

Sku não pode ser vazio.

400

034

Sku inválido.

400

035

Quantidade deve ser maior que 0.

404

036

Item não encontrado.

 

Tabela de erros do endpoint [POST] /checkout:

Código HTTP
Código Erro
Mensagem de Erro

400

037

Identificador do endereço de entrega não pode ser vazio.

400

038

Identificador de endereço de entrega inválido.

409

039

Usuário já possui um pedido aguardando processamento.

409

040

Não é possível finalizar um carrinho vazio.

409

041

Carrinho indisponível.

409

042

Usuário não pode utilizar este canal de troca.

409

043

Não é possível finalizar um carrinho vazio.

409

044

Não é possível adicionar um produto virtual ao carrinho.

409

046

Não é possível adicionar um produto indisponível ao carrinho.

409

047

Produto indisponível para este canal de troca.

409

048

Estoque indisponível para este produto.

409

049

Produto indisponível para este fornecedor.

409

050

Fornecedor não encontrado.

409

051

Endereço de entrega não encontrado.

409

052

Endereço informado não corresponde a um endereço de entrega.

409

053

Endereço inativo.

409

054

Endereço de entrega possui um CEP incorreto.

409

055

Endereço de entrega não possui CEP.

409

056

CEP informado no endereço de entrega não é válido.

409

057

Endereço de entrega não possui logradouro.

409

058

Endereço de entrega não possui número.

409

059

Endereço de entrega não possui complemento.

409

060

Endereço de entrega não possui bairro.

409

061

Endereço de entrega não possui cidade.

409

062

Endereço de entrega não possui estado.

409

063

Saldo insuficiente.

409

064

Não é possível realizar uma troca sem endereço de e-mail por este canal.

409

065

Falha ao finalizar carrinho.

409

066

Falha ao finalizar carrinho.

409

067

Estado não pode ser vazio.

409

068

Estado inválido.

 
Suggest Edits

/Content/{version}/{database}/{collection}

Exemplo de requisição para listagem dos dispositivos.

Request:
POST /content/1/dotz/faq
{
  "_sort": "title",
  "_sortOrder": 0,
  "_filter": "{ title: { $in: [ \"Cadastro\", \"Sobre Dotz\" ] } }",
  "_fields": [
    {
      "name": "title",
      "value": 0
    },
    {
      "name": "items",
      "value": 0
    }
  ],
  "_pageSize": 10,
  "_page": 1
}

Response:
{
  "_pageSize": 10,
  "_page": 1,
  "_total": 2,
  "items": [
    {
      "title": "Cadastro",
      "items": [
        {
          "title": "Como realizar um cadastro no Programa Dotz?",
          "description": "Dotz é a sua moeda para a vida render mais. Cada compra que você faz nos supermercados, postos de combustível, farmácias, cartão de crédito e lojas parceiras, rende Dotz. Depois, seus Dotz rendem produtos, passagens aéreas e mais um zilhão de coisas legais para você curtir momentos muito especiais. É grátis."
        },
        {
          "title": "Como acessar a Conta Dotz?",
          "description": "A Conta Dotz pode ser acessada a qualquer momento por meio do www.dotz.com.br ou por meio da Central de Atendimento Dotz. É possível acompanhar o saldo disponível em Dotz, atualizar os dados cadastrais, administrar os Adicionais e muito mais."
        }
      ]
    },
    {
      "title": "Sobre Dotz",
      "items": [
        {
          "title": "O que é o programa Dotz?",
          "description": "Dotz é a sua moeda para a vida render mais. Cada compra que você faz nos supermercados, postos de combustível, farmácias, cartão de crédito e lojas parceiras, rende Dotz. Depois, seus Dotz rendem produtos, passagens aéreas e mais um zilhão de coisas legais para você curtir momentos muito especiais. É grátis."
        },
        {
          "title": "O que é DZ?",
          "description": "Sigla utilizada nos diversos canais de comunicação da terminologia em Dotz."
        }
      ]
    }
  ]
}
 
postuat-api.dotzlabs.com/cms/v1/content/version/database/collection
curl --request POST \
  --url http://uat-api.dotzlabs.com/cms/v1/content/version/database/collection \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'POST',
  url: 'http://uat-api.dotzlabs.com/cms/v1/content/version/database/collection',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/cms/v1/content/version/database/collection")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Post.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "http://uat-api.dotzlabs.com/cms/v1/content/version/database/collection");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/cms/v1/content/version/database/collection"

headers = {'authorization': 'Authorization'}

response = requests.request("POST", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

version
string
required

Versão do conteúdo que será buscado.

database
string
required

Banco de dados do conteúdo que será buscado.

collection
string
required

Coleção do conteúdo que será buscado.

Body Params

_sort
string

Define o campo que será utilizado para ordenar a coleção.
O valor padrão para a coleção é o campo '_id'.

_sortOrder
int32

Define se o campo de ordenação será ordenado em ordem ascendente ou descendente.

_filter
string
_fields
array of objects

Campos que serão incluídos ou excluídos da busca.

name
value
_pageSize
int32
_page
int32

Headers

Authorization
string
required

access token

Response

Lista de objetos solicitados.

_pageSizeinteger
_pageinteger
_totalinteger
itemsarray

Bad Request

codestring
messagestring

Conflict

codestring
messagestring
Suggest Edits

FAQ

Conteúdo de perguntas mais frequentes.

 

Sobre a API CMS - Conteúdos

A API CMS utiliza a seguinte estrutura de árvore de objetos de acordo com a coleção do conteúdo:

{
	"_pageSize": 0,
	"_page": 0,
	"_total": 0,
	"items": [{
		"title": "",
		"order": 0,
		"icon": "",
		"items": [{
			"title": "",
			"description": ""
		}]
	}]
}

Descrição dos campos:

Campo
Descrição

title

Título do objeto de conteúdo. Ex: "Sobre a Dotz".

order

Ordem de visualização da lista de itens. Ex: "Em um combo box, o "order: 0" será o primeiro title a ser visualizado."

icon

Caminho do ícone deste conteúdo.

items[].title

Título do sub item. Ex: "O que é o programa Dotz?".

items[].description

Descrição do sub item do título. Ex: "Dotz é a sua moeda para a vida render mais.".

/Content/{version}/{database}/{collection}

Request:

POST /content/1/dotz/faq

{
    "_sort": "order",
    "_sortOrder": 0,
    "_pageSize": 50,
    "_page": 1
}

RESPONSE:
{
  "_pageSize": 50,
  "_page": 1,
  "_total": 1,
  "items": [
    {
      "title": "Sobre Dotz",
      "order": "0",
      "icon": "icon_name.png",
      "items": [
        {
          "title": "O que é o programa Dotz?",
          "description": "Dotz é a sua moeda para a vida render mais. Cada compra que você faz nos supermercados, postos de combustível, farmácias, cartão de crédito e lojas parceiras, rende Dotz. Depois, seus Dotz rendem produtos, passagens aéreas e mais um zilhão de coisas legais para você curtir momentos muito especiais. É grátis."
        }
      ]
    },
    {
      "title": "Cadastro",
      "order": "1",
      "icon": "icon_name.png",
      "items": [
        {
          "title": "Como realizar um cadastro no Programa Dotz?",
          "description": "Dotz é a sua moeda para a vida render mais. Cada compra que você faz nos supermercados, postos de combustível, farmácias, cartão de crédito e lojas parceiras, rende Dotz. Depois, seus Dotz rendem produtos, passagens aéreas e mais um zilhão de coisas legais para você curtir momentos muito especiais. É grátis."
        },
        {
          "title": "Como acessar a Conta Dotz?",
          "description": "A Conta Dotz pode ser acessada a qualquer momento por meio do www.dotz.com.br ou por meio da Central de Atendimento Dotz. É possível acompanhar o saldo disponível em Dotz, atualizar os dados cadastrais, administrar os Adicionais e muito mais."
        }
      ]
    }
  ]
}
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ \ 
     "_sort": "order", \ 
     "_sortOrder": 0, \ 
     "_pageSize": 50, \ 
     "_page": 1 \ 
 }' 'http://api.dotzlabs.com.br/cms/v1/content/1/dotz/faq'
Suggest Edits

Como Dotz Funciona

Conteúdo sobre Como a Dotz Funciona.

 

Sobre a API CMS - Conteúdos (Como Dotz Funciona)

A API CMS utiliza a seguinte estrutura de árvore de objetos de acordo com a coleção do conteúdo:

{
	"_pageSize": 0,
	"_page": 0,
	"_total": 0,
	"items": [{
		"title": "",
		"order": 0,
		"icon": "",
		"items": [{
			"title": "",
			"description": ""
		}]
	}]
}

Descrição dos campos:

Campo
Descrição

title

Título do objeto de conteúdo. Ex: "Como a Dotz Funciona".

order

Ordem de visualização da lista de itens. Ex: "Em um combo box, o "order: 0" será o primeiro title a ser visualizado."

icon

Caminho do ícone deste conteúdo.

items[].title

Título do sub item. Ex: "Aplicativo Dotz".

items[].description

Descrição do sub item do título. Ex: "De qualquer lugar, com conforto e
segurança, você pode consultar sua conta.".

/Content/{version}/{database}/{collection}

Request:

POST /content/1/dotz/ComoDotzFunciona

{
    "_sort": "order",
    "_sortOrder": 0,
    "_pageSize": 50,
    "_page": 1
}

RESPONSE:
{
  "_pageSize": 50,
  "_page": 1,
  "_total": 1,
  "items": [
    {
      "title": "Como Dotz Funciona",
      "order": "0",
      "icon": "icon_name.png",
      "items": [
        {
          "title": "Ganhe",
          "description": "Faça as compras que já faria e ganhe Dotz."
        }
      ]
    },
    {
      "title": "Ganhe mais rápido",
      "order": "1",
      "icon": "icon_name.png",
      "items": [
        {
          "title": "Ourocard",
          "description": "E você sabia que quem é cliente Banco do Brasil, usando o Ourocard, ganha Dotz duas vezes? Isso mesmo, ganha os Dotz do cartão mais os Dotz do parceiro."
        }
      ]
    },
    {
      "title": "Troque",
      "order": "2",
      "icon": "icon_name.png",
      "items": [
        {
          "title": "Produtos",
          "description": "Você pode trocar seus Dotz por eletrônicos, como TV e smartphone, ingressos de cinema, recarga para celular, passagens aéreas, vales-compras e até mesmo pagamento de contas!."
        }
      ]
    },
    {
      "title": "Programe-se",
      "order": "3",
      "icon": "icon_name.png",
      "items": [
        {
          "title": "Site Dotz",
          "description": "Você pode consultar seu saldo, o extrato,  os Dotz a vencer, montar sua lista de  troca e muito mais!"
        },
        {
          "title": "Aplicativo Dotz",
          "description": "De qualquer lugar, com conforto e  segurança, você pode consultar sua conta,  trocar seus Dotz e ainda localizar as lojas  parceiras mais próximas de você."
        }
      ]
    }
  ]
}
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ \ 
     "_sort": "order", \ 
     "_sortOrder": 0, \ 
     "_pageSize": 50, \ 
     "_page": 1 \ 
 }' 'http://api.dotzlabs.com.br/cms/v1/content/1/dotz/ComoDotzFunciona'
Suggest Edits

Política de Privacidade

Conteúdo sobre Política de Privacidade.

 

Sobre a API CMS - Conteúdos (Política de Privacidade)

A API CMS utiliza a seguinte estrutura de árvore de objetos de acordo com a coleção do conteúdo:

{
	"_pageSize": 0,
	"_page": 0,
	"_total": 0,
	"items": [{
		"title": "",
		"icon": "",
		"items": [{
			"title": "",
			"order": 0,
			"description": ""
		}]
	}]
}

Descrição dos campos:

Campo
Descrição

title

Título do objeto de conteúdo. Ex: "Política de Privacidade".

icon

Caminho do ícone deste conteúdo.

items[].title

Título do sub item. Ex: "Questionários Pesquisas e Dados Pessoais".

items[].order

Ordem de visualização da lista de itens. Ex: "Em um combo box, o "order: 0" será o primeiro title a ser visualizado."

items[].description

Descrição do sub item do título. Ex: "Oferecemos aos Participantes do Programa Dotz questionários opcionais, todavia, não forneceremos suas informações pessoais sem o seu prévio consentimento.".

/Content/{version}/{database}/{collection}

Request:

POST /content/1/dotz/politica

{
    "_sort": "order",
    "_sortOrder": 0,
    "_pageSize": 50,
    "_page": 1
}

RESPONSE:
{
  "_pageSize": 50,
  "_page": 1,
  "_total": 1,
  "items": [
    {
      "title": "Política de Privacidade",
      "icon": "icon_name.png",
      "items": [
        {
          "title": "Informações básicas",
          "order": "0",
          "description": "Para se tornar um Participante Dotz é necessário que informe: Nome completo; E-mail; Documento de indentificação (CPF, CNPJ ou Documento de Identificação de Estrangeiro); Número do telefone; Senha de acesso ; Data de nascimento; Sexo; CEP da residência; As informações coletadas durante o processo de inscrição são utilizadas para garantir sua identidade como participante do Programa Dotz."
        },
        {
          "title": "Questionários, Pesquisas e Dados pessoais",
          "order": "1",
          "description": "Oferecemos aos Participantes do Programa Dotz questionários opcionais, todavia, não forneceremos suas informações pessoais sem o seu prévio consentimento. Também solicitamos que nossos Participantes nos informem de suas preferências pessoais. As informações nestes questionários e as suas Preferências Pessoais serão utilizadas para desenvolver ofertas e promoções para melhor servir o nosso Participante Dotz. Ocasionalmente, junto com os nossos Parceiros, poderemos oferecer Dotz em troca do preenchimento de pesquisas e questionários."
        },
        {
          "title": "Informações sobre transações",
          "order": "2",
          "description": "Ao participar de promoções que ofereçam a moeda Dotz como recompensa, os Parceiros do Programa Dotz deverão nos enviar informações acerca das transações realizadas (e-mail do Participante, o número de Dotz adquiridos, data e período da transação),de forma que os Dotz possam ser creditados na Conta apropriada. Ocasionalmente, caso a transação seja selecionada pelo processo de auditoria periódica, retornaremos estas informações aos Parceiros que as ofereceram, a fim de confirmar a não ocorrência de fraudes na transação e se foi esta realizada corretamente. Nestes casos, o crédito dos Dotz pode sofrer uma extensão de até 10 dias úteis. Os Dotz são comprados e distribuídos pelos clientes parceiros do Programa Dotz, cabendo a este aprovar ou não sua realização."
        }
      ]
    }
  ]
}
  
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ \ 
     "_sort": "order", \ 
     "_sortOrder": 0, \ 
     "_pageSize": 50, \ 
     "_page": 1 \ 
 }' 'http://api.dotzlabs.com.br/cms/v1/content/1/dotz/Politica'
 

Tabela de erros do endpoint [POST] /content/{version}/{database}/{collection}:

Código HTTP
Código Erro
Mensagem de Erro

400

001

O valor de _pageSize deve estar entre 1 e 100.

400

002

_page deve ser maior que 0.

400

003

Ordenação (sortOrder) inválida.

400

004

Campos a serem retornados (includeFields) inválido.

400

005

Versão (version) não pode ser vazio.

400

006

Versão (version) inválida.

400

007

Versão (version) deve conter até 2 caracteres.

400

008

Coleção (collection) não pode ser vazio.

400

009

Coleção (collection) inválida.

400

010

Base de dados (database) não pode ser vazio.

400

011

Base de dados (database) inválido.

404

012

Base de dados (database) inexistente.

404

013

Versão (version) inexistente.

404

014

Coleção (collection) inexistente.

409

015

Parâmetros de filtro e/ou ordenação incompatíveis. ({0})

400

016

Filtro (filter) em formato inválido.

Suggest Edits

Currencies

 
Suggest Edits

/Currencies/{ProgramId}

Exemplo de requisição para consulta de um depósito:

Request:
GET /currencies/AQd9JDOqAOWBg4y

Response:
{
  "currencies": [
    {
      "programId": "mZo6ynX51XYlpR4",
      "exchangeRate": "1,0000" 
    },
    {
       "programId": "9Pp28W3GbO0kwBz",
       "exchangeRate": "0,0020"
    }              
  [       
}
 
getuat-api.dotzlabs.com/currency-exchange/v1/currencies/ProgramId
curl --request GET \
  --url http://uat-api.dotzlabs.com/currency-exchange/v1/currencies/ProgramId \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/currency-exchange/v1/currencies/ProgramId',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/currency-exchange/v1/currencies/ProgramId")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/currency-exchange/v1/currencies/ProgramId");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/currency-exchange/v1/currencies/ProgramId"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

ProgramId
string
required

Headers

Authorization
string
required

access token

Response

Dados de um deposito.

currenciesarray

Formato invalido do(s) parametro(s) de entrada.

codestring
messagestring

Permissao de acesso negada para essa operacao.

Registro não encontrado.

codestring
messagestring
Suggest Edits

/Currencies/transfers

 
getuat-api.dotzlabs.com/currency-exchange/v1/currencies/transfers
curl --request GET \
  --url http://uat-api.dotzlabs.com/currency-exchange/v1/currencies/transfers \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/currency-exchange/v1/currencies/transfers',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/currency-exchange/v1/currencies/transfers")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/currency-exchange/v1/currencies/transfers");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/currency-exchange/v1/currencies/transfers"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

TransferDateFrom
date-time
TransferDateTo
date-time
_pageSize
int32
_page
int32

Headers

Authorization
string
required

access token

Response

Success

_pageSizeinteger
_pageinteger
_totalinteger
itemsarray

Bad Request

codestring
messagestring
Suggest Edits

/Currencies/transfers

Exemplo:

POST /transfers
{
    "ProgramIdOrigin": "5",
    "ProgramIdDestination": "4",
    "Points": 2
}
 
postuat-api.dotzlabs.com/currency-exchange/v1/currencies/transfers
curl --request POST \
  --url http://uat-api.dotzlabs.com/currency-exchange/v1/currencies/transfers \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'POST',
  url: 'http://uat-api.dotzlabs.com/currency-exchange/v1/currencies/transfers',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/currency-exchange/v1/currencies/transfers")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Post.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "http://uat-api.dotzlabs.com/currency-exchange/v1/currencies/transfers");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/currency-exchange/v1/currencies/transfers"

headers = {'authorization': 'Authorization'}

response = requests.request("POST", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Body Params

programIdOrigin
string
programIdDestination
string
points
int32

Headers

Authorization
string
required

access token

Response

Operacao realizada com sucesso.

programIdOriginstring
programIdDestinationstring
pointsinteger

Formato invalido do(s) parametro(s) de entrada.

codestring
messagestring

Ocorreu um erro de negocio.

codestring
messagestring
Suggest Edits

Currencies

 

Tabela de erros do endpoint [GET] /currencies:

Código HTTP
Código Erro
Mensagem de Erro

400

001

ProgramId Inválido.

409

002

Program não encontrado.

Tabela de erros do endpoint [GET] /currencies/transfers:

Código HTTP
Código Erro
Mensagem de Erro

400

003

_pageSize deve ser maior que 0 e menor igual a 100.

400

004

_page deve ser maior que 0.

400

005

TransferDateFrom deve ser maior que 01/01/1753.

400

006

TransferDateTo deve ser maior que 01/01/1753.

Tabela de erros do endpoint [POST] /transfers:

400

007

ProgramIdOrigin Inválido.

400

008

ProgramIdDestination Inválido.

404

009

ProgramIdOrigin '{0}' não encontrado.

404

010

ProgramIdDestination '{0}'não encontrado.

409

011

User balance não é suficiente para fazer a troca.

409

012

Ocorreu um erro desconhecido na tentativa de fazer a troca.

409

013

A quantidade de pontos não é suficiente para efetuar a troca. A quantidade mínima é de '{0}' ponto(s).

409

014

ProgramIdOrigin e ProgramIdDestination Não pode ser o mesmo.

 
Suggest Edits

/Deposits/{Locator}

Exemplo de requisição para consulta de um depósito pelo localizador:

Request:
GET /deposits/DZ05658354

Response:
{
  "statusCode": 40000,
  "locator": "DZ05658354",
  "offerCode": "GDkqlEVZREMw0pj",
  "actualDate": "2017-06-09T12:22:05.96Z",
  "actualTimezone": 0,
  "memberIdentifierType": "CPF",
  "memberIdentifier": "489OD9YAlWQ3weZ",
  "points": 10,
  "purchaseValue": 0,
  "storeCode": "MATRIZ",
  "deviceCode": ""
}
 
getuat-api.dotzlabs.com/deposits/v1/deposits/Locator
curl --request GET \
  --url http://uat-api.dotzlabs.com/deposits/v1/deposits/Locator \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/deposits/v1/deposits/Locator',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/deposits/v1/deposits/Locator")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/deposits/v1/deposits/Locator");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/deposits/v1/deposits/Locator"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

Locator
string
required

Localizador.

Headers

Authorization
string
required

access token

Response

Dados de um depósito.

statusCodeinteger

Status de processamento.

locatorstring

Localizador.

offerCodestring

Código da mecânica.

actualDatestring

Data do depósito.

actualTimezoneinteger

Identificador da zona de tempo correspondente.

memberIdentifierTypestring

Tipo do documento.

memberIdentifierstring

Documento.

pointsinteger

Pontos.

purchaseValueinteger

Valor da compra.

storeCodestring

Código da loja.

deviceCodestring

Código do dispositivo.

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Registro não encontrado.

codestring
messagestring
Suggest Edits

/Deposits/{Locator}

Exemplo de requisição para estorno de um depósito:

Request:
DELETE /deposits/DZ827362

Response: (empty)
 
deleteuat-api.dotzlabs.com/deposits/v1/deposits/Locator
curl --request DELETE \
  --url http://uat-api.dotzlabs.com/deposits/v1/deposits/Locator \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'DELETE',
  url: 'http://uat-api.dotzlabs.com/deposits/v1/deposits/Locator',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/deposits/v1/deposits/Locator")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Delete.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "http://uat-api.dotzlabs.com/deposits/v1/deposits/Locator");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/deposits/v1/deposits/Locator"

headers = {'authorization': 'Authorization'}

response = requests.request("DELETE", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

Locator
string
required

Localizador.

Headers

Authorization
string
required

access token

Response

Operação realizada com sucesso.

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Registro não encontrado.

codestring
messagestring

Ocorreu um erro de negócio.

codestring
messagestring
Suggest Edits

/Deposits

Exemplo de requisição para consulta de depósitos:

Request:
GET /deposits?_limit=100&amp;_offset=1&amp;SentDateFrom=2017-06-01T20%3A21%3A18.200Z&amp;SentDateTo=2017-07-13T03%3A54%3A07.200Z

Response:
{
    "_pageSize": 100,
    "_page": 1,
    "items": [{
            "statusCode": 60005,
            "locator": "4280815",
            "offerCode": "1lrzwOdpmOGo50A",
            "actualDate": "2017-07-07T00:00:00Z",
            "actualTimezone": 0,
            "memberIdentifierType": "",
            "memberIdentifier": "02935529839",
            "points": 123400,
            "purchaseValue": 0,
            "storeCode": "MATRIZ",
            "deviceCode": null
        },
        {
            "statusCode": 10000,
            "locator": "af667849-1a90-4766-b473-3",
            "offerCode": "GDkqlEVZREMw0pj",
            "actualDate": "2017-07-04T17:24:28.647Z",
            "actualTimezone": 0,
            "memberIdentifierType": "",
            "memberIdentifier": "06338468647",
            "points": 4429,
            "purchaseValue": 5536,
            "storeCode": "MATRIZ",
            "deviceCode": null
        }
    ]
}
 
getuat-api.dotzlabs.com/deposits/v1/deposits
curl --request GET \
  --url http://uat-api.dotzlabs.com/deposits/v1/deposits \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/deposits/v1/deposits',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/deposits/v1/deposits")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/deposits/v1/deposits");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/deposits/v1/deposits"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

_pageSize
int32

Limite de transações por página.

_page
int32

Posição de paginação atual.

SentDateFrom
date-time

Data inicial. Restringe retorno a transações realizadas a partir desta data.

SentDateTo
date-time

Data final. Restringe retorno a transações realizadas após esta data.

Headers

Authorization
string
required

access token

Response

Lista de depósitos.

_pageSizeinteger
_pageinteger
_totalinteger
itemsarray

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring
Suggest Edits

/Deposits

Exemplo de requisição para criação de um ou mais depósitos:

Request:
POST /deposits
[{
    "locator": "DZ827362",
    "offerCode": "GDkqlEVZREMw0pj",
    "actualDate": "2017-07-07T00:00:00Z",
    "actualTimezone": 0,
    "memberIdentifierType": 0,
    "memberIdentifier": "02935529839",
    "points": 123400,
    "purchaseValue": 19050,
    "storeCode": "MATRIZ",
    "deviceCode": "0106"
}]

Response: (empty)
 
postuat-api.dotzlabs.com/deposits/v1/deposits
curl --request POST \
  --url http://uat-api.dotzlabs.com/deposits/v1/deposits \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'POST',
  url: 'http://uat-api.dotzlabs.com/deposits/v1/deposits',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/deposits/v1/deposits")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Post.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "http://uat-api.dotzlabs.com/deposits/v1/deposits");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/deposits/v1/deposits"

headers = {'authorization': 'Authorization'}

response = requests.request("POST", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Headers

Authorization
string
required

access token

Response

Operação realizada com sucesso.

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Ocorreu um erro de negócio.

codestring
messagestring
Suggest Edits

/Deposits/{Locator}/status

Exemplo de requisição para consulta de status de uma transação através do localizador:

Request:
GET /deposits/DZ05658354/status

Response:
{
  "locator": "DZ05658354",
  "statusCode": 40000
}
 
getuat-api.dotzlabs.com/deposits/v1/deposits/Locator/status
curl --request GET \
  --url http://uat-api.dotzlabs.com/deposits/v1/deposits/Locator/status \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/deposits/v1/deposits/Locator/status',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/deposits/v1/deposits/Locator/status")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/deposits/v1/deposits/Locator/status");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/deposits/v1/deposits/Locator/status"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

Locator
string
required

Localizador.

Headers

Authorization
string
required

access token

Response

Operação realizada com sucesso.

locatorstring

Localizador.

statusCodeinteger

Status da transação.

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Registro não encontrado.

codestring
messagestring
Suggest Edits

/Deposits/status

Exemplo de requisição para consulta do status de depósitos:

Request:
GET /deposits/status?_limit=100&amp;_offset=1&amp;SentDateFrom=2017-06-01&amp;SentDateTo=2017-07-02

Response:
{
    "_pageSize": 100,
    "_page": 1,
    "items":
    [
        {
            "locator": "F01/C058694",
            "statusCode": 20015,
            "description": "Estabelecimento não cadastrado"
        },
        {
            "locator": "FAKE-4480298",
            "statusCode": 40000,
            "description": "Transação realizada"
        }
    ]
}
 
getuat-api.dotzlabs.com/deposits/v1/deposits/status
curl --request GET \
  --url http://uat-api.dotzlabs.com/deposits/v1/deposits/status \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/deposits/v1/deposits/status',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/deposits/v1/deposits/status")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/deposits/v1/deposits/status");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/deposits/v1/deposits/status"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

_pageSize
int32

Limite de transações por página.

_page
int32

Posição de paginação atual.

SentDateFrom
date-time

Data inicial. Restringe retorno a transações realizadas a partir desta data.

SentDateTo
date-time

Data final. Restringe retorno a transações realizadas após esta data.

Headers

Authorization
string
required

access token

Response

Lista de status dos depósitos.

_pageSizeinteger
_pageinteger
_totalinteger
itemsarray

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring
Suggest Edits

/Offers

Exemplo de requisição para consulta de mecânicas:

Request:
GET offers?_limit=100&amp;_offset=1

Response:
{
    "_pageSize": 100,
    "_page": 1,
    "items": [{
            "offerId": "mZo6ynX51XYlpR4",
            "description": "Master"

        },
        {
            "offerId": "AQd9JDOqAOWBg4y",
            "description": "Bônus de perfil"
        }
    ]
}
 
getuat-api.dotzlabs.com/deposits/v1/offers
curl --request GET \
  --url http://uat-api.dotzlabs.com/deposits/v1/offers \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/deposits/v1/offers',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/deposits/v1/offers")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/deposits/v1/offers");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/deposits/v1/offers"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

_pageSize
int32

Limite de mecânicas por página.

_page
int32

Posição de paginação atual.

Headers

Authorization
string
required

access token

Response

Lista de mecânicas.

_pageSizeinteger
_pageinteger
_totalinteger
itemsarray

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Tabela de erros do endpoint [GET] /offers:

Código HTTP
Código Erro
Mensagem de Erro

400

001

O valor de _pageSize deve estar entre 1 e 100.

400

002

_page deve ser maior que 0.

 

Tabela de erros do endpoint [GET] /deposits:

Código HTTP
Código Erro
Mensagem de Erro

400

003

O valor de _pageSize deve estar entre 1 e 100.

400

004

_page deve ser maior que 0.

400

005

Data inicial (SentDateFrom) inválida.

400

006

Data final (SentDateTo) inválida.

Tabela de erros do endpoint [GET] /deposits/{Locator}:

Código HTTP
Código Erro
Mensagem de Erro

400

007

Localizador (Locator) não pode ser vazio.

404

008

Transação não encontrada.

404

009

Transação não encontrada.

Tabela de erros do endpoint [GET] /deposits/{Locator}/status:

Código HTTP
Código Erro
Mensagem de Erro

400

010

Localizador (Locator) não pode ser vazio.

404

011

Transação não encontrada.

404

012

Transação não encontrada.

Tabela de erros do endpoint [GET] /deposits/status:

Código HTTP
Código Erro
Mensagem de Erro

400

013

O valor de _pageSize deve estar entre 1 e 100.

400

014

_page deve ser maior que 0.

400

015

Data inicial (SentDateFrom) inválida.

400

016

Data final (SentDateTo) inválida.

Tabela de erros do endpoint [POST] /deposits:

Código HTTP
Código Erro
Mensagem de Erro

400

017

Localizador (Locator) não pode ser vazio.

400

018

Código da mecânica base (OfferCode) não pode ser vazio.

400

019

Documento (MemberIdentifier) não pode ser vazio.

400

020

Documento (MemberIdentifier) inválido. Número informado não corresponde a um CPF válido.

400

021

Documento (MemberIdentifier) inválido. Número informado não corresponde a um CNPJ válido.

400

022

Documento (MemberIdentifier) inválido. Número informado não corresponde a um cartão Dotz válido.

400

023

Pontos (Points) deve ser maior que 0.

400

024

Código da loja (StoreCode) não pode ser vazio.

400

025

Data do depósito (ActualDate) inválida.

400

026

Tipo de documento (MemberIdentifierType) inválido.

409

027

Já existe uma transação com o localizador informado.

409

028

Erro durante o processamento da transação {0}.

409

029

Erro ao processar a transação. (Descrição: {0})

400

030

Código da mecânica base (OfferCode) inválido.

Tabela de erros do endpoint [DELETE] /deposits:

Código HTTP
Código Erro
Mensagem de Erro

400

031

Localizador (Locator) não pode ser vazio.

404

032

Transação não encontrada.

409

033

Transação já estornada.

409

034

Estorno já solicitado para a transação.

 
Suggest Edits

/Devices

Exemplo de requisição para listagem dos dispositivos.

Request:
GET /devices

Response:
[
    {
        "id": "JCWDTYMD9J4JNM6T",
        "createdDate": "2017-06-30T02:59:59.9999635Z",
        "deviceType": 0,
        "platform": 0,
        "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36",
        "model": "Samsung Galaxy S4"
    },
    {
        "id": "F24U98VB33PB8PT5",
        "createdDate": "2017-06-30T02:59:59.99999Z",
        "deviceType": 0,
        "platform": 1,
        "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36",
        "model": "6S"
    }
]
 
getuat-api.dotzlabs.com/devices/v1/devices
curl --request GET \
  --url http://uat-api.dotzlabs.com/devices/v1/devices \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/devices/v1/devices',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/devices/v1/devices")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/devices/v1/devices");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/devices/v1/devices"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Headers

Authorization
string
required

access token

Response

Lista de dispositivos registrados para o usuário.

Suggest Edits

/Devices

Exemplo de requisição para criação/atualização.

Request:
POST /devices
{
    "deviceType": 0,
    "platform": 1,
    "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36",
    "model": "6S",
    "tokenPush":"eAtVjY...fFKvbCu8"
}
 
postuat-api.dotzlabs.com/devices/v1/devices
curl --request POST \
  --url http://uat-api.dotzlabs.com/devices/v1/devices \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'POST',
  url: 'http://uat-api.dotzlabs.com/devices/v1/devices',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/devices/v1/devices")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Post.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "http://uat-api.dotzlabs.com/devices/v1/devices");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/devices/v1/devices"

headers = {'authorization': 'Authorization'}

response = requests.request("POST", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Body Params

deviceType
int32

Tipo do dispositivo que está se registrando.

platform
int32

Plataforma do dispositivo que está se registrando.

userAgent
string

UserAgent que está sendo utilizado pelo dispositivo.

tokenPush
string

Token gerado pelo dispositivo para receber notificações futuras de push.

model
string

Modelo do dispositivo.

Headers

Authorization
string
required

access token

Response

Operação realizada com sucesso.

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Ocorreu um erro de negócio.

codestring
messagestring
Suggest Edits

Devices - Retornos

 
  • Tabela de erros do endpoint [GET] /devices:
Código HTTP
Código Erro
Mensagem de Erro

404

1

Usuário não encontrado.

Tabela de erros do endpoint [POST] /devices:

Código HTTP
Código Erro
Mensagem de Erro

404

2

Usuário não encontrado.

400

3

User Agent deve ser informado.

400

4

User Agent deve ter entre 5 a 1000 caracteres.

400

5

Token deve ser informado.

400

6

Token em formato inválido.

409

7

Notificação já cadastrada para outro usuário.

400

8

Modelo, se informado, deve ter no máximo 20 caracteres.

400

9

Plataforma do dispositivo não encontrado.

400

10

Identificador do dispositivo não encontrado.

Suggest Edits

/Member

Exemplo de requisição para obtenção dos dados com endereços de uma conta:

Request:
GET /member

Response:
{
    "personalInformation":
    {
        "id": "4e0WEYy1kgEmDln",
        "identifier": "00000000000",
        "identifierType": "CPF",
        "fullName": "Usuário Teste",
        "gender": 0,
        "email": "teste@dotz.com.br",
        "birthdate": "1990-01-21T16:21:14.817Z",
        "phoneNumberArea": 11,
        "phoneNumber": "111111111",
        "cellphoneNumberArea": 11,
        "cellphoneNumber": "999999999",
        "addresses":
        [
            {
                "id": "MKgLXArG51Ezjx6",
                "deliveryAddress": true,
                "streetName": "R HELOISA PAMPLONA",
                "alias": "Minha casa",
                "addressNumber": "107",
                "additionalInformation": "CASA",
                "referencePoint": "Carrefour",
                "city": "SAO CAETANO DO SUL",
                "countryCode": 55,
                "district": "FUNDACAO",
                "postalCode": "09520320",
                "state": "SP",
                "default": false
            },
            {   "id": "lrzwOdmlP923Go5",
                "deliveryAddress": false,
                "streetName": "Rua Heloisa Pamplona",
                "alias": "JULIANE AGRA DE BRITO",
                "addressNumber": "107",
                "additionalInformation": "Casa",
                "referencePoint": "Nao Informado",
                "city": "Sao Caetano do Sul",
                "countryCode": 55,
                "district": "Fundacao",
                "postalCode": "09520320",
                "state": "SP",
                "default": false
            }
        ]
    },
    "notifications":
    {
        "email": true,
        "mobilePush": true,
        "phoneCall": false,
        "sms": true
    }
}
 
getuat-api.dotzlabs.com/members/v1/member
curl --request GET \
  --url http://uat-api.dotzlabs.com/members/v1/member \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/members/v1/member',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/members/v1/member")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/members/v1/member");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/members/v1/member"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Headers

Authorization
string
required

access token

Response

Dados de um membro do programa.

personalInformationobject

Informações de membros.

personalInformation.idstring

Identificador do membro.

personalInformation.identifierstring

Identificador de pessoa.

personalInformation.identifierTypestring

Tipo de documento (CPF, CNPJ ou E-mail)

personalInformation.fullNamestring

Nome completo

personalInformation.genderinteger

Gênero. Pode ser 0 (masculino) ou 1 (feminino).

personalInformation.emailstring

E-mail

personalInformation.birthdatestring

Data de nascimento, no formato YYYY-MM-dd. Exemplo: 1990-09-18.

personalInformation.phoneNumberAreainteger

Código de área do telefone

personalInformation.phoneNumberstring

Número telefone

personalInformation.cellphoneNumberAreainteger

Código área do celular

personalInformation.cellphoneNumberstring

Número celular

personalInformation.addressesarray

Endereços

notificationsobject

Configuração de notificações.

notifications.emailboolean

Notificação por E-mail

notifications.mobilePushboolean

Notificação no App

notifications.phoneCallboolean

Notificação por ligação

notifications.smsboolean

Notificação por SMS

Suggest Edits

/Member/personalInformation

Exemplo de requisição para obtenção dos dados de uma conta:

Request:
GET /member/personalInformation

Response:
{
    "id": "Ad2mE96A2RlOPRj",
    "identifier": "00000000000",
    "identifierType": "CPF",
    "fullName": "Usuário Teste",
    "gender": 0,
    "email": "teste@dotz.com.br",
    "birthdate": "1990-01-21T16:21:14.817Z",
    "phoneNumberArea": 11,
    "phoneNumber": "111111111",
    "cellphoneNumberArea": 11,
    "cellphoneNumber": "999999999",
}
 
getuat-api.dotzlabs.com/members/v1/member/personalInformation
curl --request GET \
  --url http://uat-api.dotzlabs.com/members/v1/member/personalInformation \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/members/v1/member/personalInformation',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/members/v1/member/personalInformation")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/members/v1/member/personalInformation");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/members/v1/member/personalInformation"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Headers

Authorization
string
required

access token

Response

Dados de um membro do programa.

idstring

Identificador de pessoa.

identifierstring

Identificador de pessoa.

identifierTypestring

Tipo de registro.

fullNamestring

Nome Compleot.

genderinteger

Gênero. Pode ser 0 (masculino) ou 1 (feminino).

emailstring

E-mail.

birthdatestring

Data de nascimento.

phoneNumberAreainteger

Código de áres do telefone.

phoneNumberstring

Número do telefone.

cellPhoneNumberAreainteger

Código de áres do celular.

cellPhoneNumberstring

Número do celular.

Suggest Edits

/Member/personalInformation

Exemplo de requisição para atualizar dos dados de uma conta:

Request:
PUT /member/personalInformation
{
    "fullName": "Usuário Teste",
    "gender": 0,
    "birthdate": "1990-01-21T16:21:14.817Z",
    "phoneNumberArea": 11,
    "phoneNumber": "111111111",
    "cellphoneNumberArea": 11,
    "cellphoneNumber": "999999999",
}
 
putuat-api.dotzlabs.com/members/v1/member/personalInformation
curl --request PUT \
  --url http://uat-api.dotzlabs.com/members/v1/member/personalInformation \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'PUT',
  url: 'http://uat-api.dotzlabs.com/members/v1/member/personalInformation',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/members/v1/member/personalInformation")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Put.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PUT", "http://uat-api.dotzlabs.com/members/v1/member/personalInformation");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/members/v1/member/personalInformation"

headers = {'authorization': 'Authorization'}

response = requests.request("PUT", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Body Params

fullName
string
required

Nome completo.

gender
int32

Gênero. Pode ser 0 (masculino) ou 1 (feminino).

birthdate
date-time
required

Data de nascimento.

phoneNumberArea
int32
required

Código de áres do telefone.

phoneNumber
string
required

Número do telefone.

cellPhoneNumberArea
int32
required

Código de áres do celular.

cellPhoneNumber
string
required

Número do celular.

Headers

Authorization
string
required

access token

Response

Se a operação foi realizada com sucesso.

fullNamestring

Nome completo.

genderinteger

Gênero. Pode ser 0 (masculino) ou 1 (feminino).

birthdatestring

Data de nascimento.

phoneNumberAreainteger

Código de áres do telefone.

phoneNumberstring

Número do telefone.

cellPhoneNumberAreainteger

Código de áres do celular.

cellPhoneNumberstring

Número do celular.

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring
Suggest Edits

/Member/notifications

Exemplo de requisição para obtenção dos dados de uma conta:

Request:
GET /member/notifications

Response:
{
    "email": true,
    "mobilePush": true,
    "phoneCall": false
    "sms": true
}
 
getuat-api.dotzlabs.com/members/v1/member/notifications
curl --request GET \
  --url http://uat-api.dotzlabs.com/members/v1/member/notifications \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/members/v1/member/notifications',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/members/v1/member/notifications")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/members/v1/member/notifications");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/members/v1/member/notifications"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Headers

Authorization
string
required

access token

Response

Configuração de notificações de um membro do programa.

emailboolean

Notificação por E-mail

mobilePushboolean

Notificação no App

phoneCallboolean

Notificação por ligação

smsboolean

Notificação por SMS

Suggest Edits

/Member/notifications

Exemplo de requisição para obtenção dos dados de uma conta:

Request:
PUT /member/notifications
{
    "email": true,
    "mobilePush": true,
    "phoneCall": true
    "sms": true
}
 
putuat-api.dotzlabs.com/members/v1/member/notifications
curl --request PUT \
  --url http://uat-api.dotzlabs.com/members/v1/member/notifications \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'PUT',
  url: 'http://uat-api.dotzlabs.com/members/v1/member/notifications',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/members/v1/member/notifications")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Put.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PUT", "http://uat-api.dotzlabs.com/members/v1/member/notifications");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/members/v1/member/notifications"

headers = {'authorization': 'Authorization'}

response = requests.request("PUT", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Body Params

email
boolean
required

Notificação por E-mail

mobilePush
boolean
required

Notificação no App.

phoneCall
boolean
required

Notificação por ligação.

sms
boolean
required

Notificação por SMS.

Headers

Authorization
string
required

access token

Response

Se a operação foi realizada com sucesso.

emailboolean

Notificação por E-mail

mobilePushboolean

Notificação no App.

phoneCallboolean

Notificação por ligação.

smsboolean

Notificação por SMS.

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring
Suggest Edits

/Member/addresses

Exemplo de requisição para obtenção dos endereços de uma conta:

Request:
GET /member/addresses
[
    {
        "id": "MKgLXArG51Ezjx6",
        "deliveryAddress": true,
        "streetName": "R HELOISA PAMPLONA",
        "alias": "Minha casa",
        "addressNumber": "107",
        "additionalInformation": "CASA",
        "referencePoint": "Carrefour",
        "city": "SAO CAETANO DO SUL",
        "countryCode": 55,
        "district": "FUNDACAO",
        "postalCode": "09520320",
        "state": "SP",
        "default": false
    },
    {   "id": "lrzwOdmlP923Go5",
        "deliveryAddress": false,
        "streetName": "Rua Heloisa Pamplona",
        "alias": "JULIANE AGRA DE BRITO",
        "addressNumber": "107",
        "additionalInformation": "Casa",
        "referencePoint": "Nao Informado",
        "city": "Sao Caetano do Sul",
        "countryCode": 55,
        "district": "Fundacao",
        "postalCode": "09520320",
        "state": "SP",
        "default": false
    }
]
 
getuat-api.dotzlabs.com/members/v1/member/addresses
curl --request GET \
  --url http://uat-api.dotzlabs.com/members/v1/member/addresses \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/members/v1/member/addresses',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/members/v1/member/addresses")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/members/v1/member/addresses");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/members/v1/member/addresses"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Headers

Authorization
string
required

access token

Response

Endereços de um membro do programa.

Formato inválido do(s) paramêtro(s) de entrada.

Suggest Edits

/Member/addresses

Exemplo de requisição para criação de um endereço de entrega:

Request:
POST /member/addresses
 {
     "id": "MKgLXArG51Ezjx6",
     "deliveryAddress": true,
     "streetName": "R HELOISA PAMPLONA",
     "alias": "Minha casa",
     "addressNumber": "107",
     "additionalInformation": "CASA",
     "referencePoint": "Carrefour",
     "city": "SAO CAETANO DO SUL",
     "countryCode": 55,
     "district": "FUNDACAO",
     "postalCode": "09520320",
     "state": "SP",
     "default": false
 }
 
postuat-api.dotzlabs.com/members/v1/member/addresses
curl --request POST \
  --url http://uat-api.dotzlabs.com/members/v1/member/addresses \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'POST',
  url: 'http://uat-api.dotzlabs.com/members/v1/member/addresses',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/members/v1/member/addresses")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Post.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "http://uat-api.dotzlabs.com/members/v1/member/addresses");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/members/v1/member/addresses"

headers = {'authorization': 'Authorization'}

response = requests.request("POST", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Body Params

streetName
string
required

Nome do logradouro.

addressName
string
required

Nome do endereço.

addressNumber
string

Número.

additionalInformation
string

Complemento do endereço.

referencePoint
string

Ponto de Referência.

city
string
required

Cidade.

countryCode
int32

Código do país, atualmente é aceito apenas o valor 55.

district
string
required

Bairro.

postalCode
string
required

CEP. Deve ser enviado sem hífen, apenas números. Exemplo: 04534002, 04532012, entre outros.

state
string
required

Estado.

default
boolean

Se será ou não o endereço de entrega principal.

Headers

Authorization
string
required

access token

Response

Se a operação foi realizada com sucesso.

streetNamestring

Nome do logradouro.

addressNamestring

Nome do endereço.

addressNumberstring

Número.

additionalInformationstring

Complemento do endereço.

referencePointstring

Ponto de Referência.

citystring

Cidade.

countryCodeinteger

Código do país, atualmente é aceito apenas o valor 55.

districtstring

Bairro.

postalCodestring

CEP. Deve ser enviado sem hífen, apenas números. Exemplo: 04534002, 04532012, entre outros.

statestring

Estado.

defaultboolean

Se será ou não o endereço de entrega principal.

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Se houve a violação de alguma regra de negócio.

codestring
messagestring
Suggest Edits

/Member/addresses/{addressId}

Exemplo de requisição para atualizãção de um endereço de entrega:

Request:
PUT /member/addresses/yg7A32JvbQe3Jkd
 {
     "id": "MKgLXArG51Ezjx6",
     "deliveryAddress": true,
     "streetName": "R HELOISA PAMPLONA",
     "alias": "Minha casa",
     "addressNumber": "107",
     "additionalInformation": "CASA",
     "referencePoint": "Carrefour",
     "city": "SAO CAETANO DO SUL",
     "countryCode": 55,
     "district": "FUNDACAO",
     "postalCode": "09520320",
     "state": "SP",
     "default": false
 },
 
putuat-api.dotzlabs.com/members/v1/member/addresses/addressId
curl --request PUT \
  --url http://uat-api.dotzlabs.com/members/v1/member/addresses/addressId \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'PUT',
  url: 'http://uat-api.dotzlabs.com/members/v1/member/addresses/addressId',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/members/v1/member/addresses/addressId")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Put.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PUT", "http://uat-api.dotzlabs.com/members/v1/member/addresses/addressId");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/members/v1/member/addresses/addressId"

headers = {'authorization': 'Authorization'}

response = requests.request("PUT", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

addressId
string
required

Identificador do endereço.

Body Params

streetName
string
required

Nome da Rua.

addressName
string
required

Nome do endereço.

addressNumber
string

Número.

additionalInformation
string

Complemento do endereço.

referencePoint
string

Ponto de Referência.

city
string
required

Cidade

countryCode
int32

Código do país, atualmente é aceito apenas o valor 55.

district
string
required

Bairro

postalCode
string
required

CEP. Deve ser enviado sem hífen, apenas números. Exemplo: 04534002, 04532012, entre outros.

state
string
required

Estado

default
boolean

Se será ou não o endereço de entrega principal.

Headers

Authorization
string
required

access token

Response

Se a operação foi realizada com sucesso.

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Registro não encontrado.

codestring
messagestring

Se alguma regra de negócio foi violada.

codestring
messagestring
Suggest Edits

/Member/addresses/{addressId}

Exemplo de requisição para atualização de apenas um campo do endereço:

Request:
PATCH /member/addresses/yg7A32JvbQe3Jkd
{
    "district": "Vila Olímpia"
}
 
patchuat-api.dotzlabs.com/members/v1/member/addresses/addressId
curl --request PATCH \
  --url http://uat-api.dotzlabs.com/members/v1/member/addresses/addressId \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'PATCH',
  url: 'http://uat-api.dotzlabs.com/members/v1/member/addresses/addressId',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/members/v1/member/addresses/addressId")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Patch.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PATCH", "http://uat-api.dotzlabs.com/members/v1/member/addresses/addressId");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/members/v1/member/addresses/addressId"

headers = {'authorization': 'Authorization'}

response = requests.request("PATCH", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

addressId
string
required

Identificador do endereço.

Body Params

streetName
string

Descrição do logradouro.

addressName
string

Nome do endereço.

addressNumber
string

Número.

additionalInformation
string

Complemento do endereço.

referencePoint
string

Ponto de Referência.

city
string

Cidade.

countryCode
int32

Código do país, atualmente é aceito apenas o valor 55.

district
string

Bairro

postalCode
string

CEP. Deve ser enviado sem hífen, apenas números. Exemplo: 04534002, 04532012, entre outros.

state
string

Estado

default
boolean

Flag se é o endereço principal

Headers

Authorization
string
required

access token

Response

Se a operação foi realizada com sucesso.

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Se alguma regra de negócio foi violada.

codestring
messagestring
Suggest Edits

/Member/addresses/{AddressId}

Exemplo de requisição para apagar de um endereço de entrega:

Request:
DELETE /member/addresses/yg7A32JvbQe3Jkd
 
deleteuat-api.dotzlabs.com/members/v1/member/addresses/AddressId
curl --request DELETE \
  --url http://uat-api.dotzlabs.com/members/v1/member/addresses/AddressId \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'DELETE',
  url: 'http://uat-api.dotzlabs.com/members/v1/member/addresses/AddressId',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/members/v1/member/addresses/AddressId")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Delete.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "http://uat-api.dotzlabs.com/members/v1/member/addresses/AddressId");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/members/v1/member/addresses/AddressId"

headers = {'authorization': 'Authorization'}

response = requests.request("DELETE", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

AddressId
string
required

Identificador do endereço.

Headers

Authorization
string
required

access token

Response

Se a operação foi realizada com sucesso.

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Se o endereço não existir para o usuário.

codestring
messagestring
Suggest Edits

/Member/cellphonenumbers

Exemplo de requisição para obter lista de números de celulares do usuário:

Request:
GET /members/v1/member/cellphonenumbers
[
    {
        "id": "WNQDFQGB9MWEDYU",
        "alias": "Renato Monteiro",
        "carrierCode": 3,
        "countryCode": 55,
        "areaCode": 11,
        "cellphoneNumber": "964245742",
        "default": false
    },
    {
        "id": "NSST9ZWKBMC9UC9",
        "alias": "Ricardo Corrêa",
        "carrierCode": 3,
        "countryCode": 55,
        "areaCode": 15,
        "cellphoneNumber": "926114572",
        "default": true
    },
    {
        "id": "P82H6CB3MGMHYUK",
        "alias": "Vó",
        "carrierCode": 0,
        "countryCode": 55,
        "areaCode": 11,
        "cellphoneNumber": "994863246",
        "default": false
    }
]
 
getuat-api.dotzlabs.com/members/v1/member/cellphonenumbers
curl --request GET \
  --url http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Headers

Authorization
string
required

access token

Response

Success

Suggest Edits

/Member/cellphonenumbers

Exemplo de requisição para registrar um número de celular para o usuário:

Request:
POST /members/v1/member/cellphonenumbers
{
    "alias": "Ricardo Corrêa",
    "carrierCode": 3,
    "countryCode": 55,
    "areaCode": 15,
    "cellphoneNumber": "926114572",
    "default": true
}

Response:
{
    "id": "0E2OL9VCH27GSRCM"
}
 
postuat-api.dotzlabs.com/members/v1/member/cellphonenumbers
curl --request POST \
  --url http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'POST',
  url: 'http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Post.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers"

headers = {'authorization': 'Authorization'}

response = requests.request("POST", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Body Params

alias
string
required

Nome amigável, para fácil identificação do número de celular pelo usuário.

carrierCode
int32
required

Operadora do número de celular.

countryCode
int32

Código do país do número de celular,
se não informado será assumido por padrão o valor 55 (Brazil).

areaCode
int32
required

Código da área.

cellphoneNumber
string
required

Número de celular.

default
boolean

Se é o número padrão para ser usado para alguma funcionalidade,
se não informado será assumido por padrão o valor 'false'.

Headers

Authorization
string
required

access token

Response

Success

idstring

Identificador do registro criado.

Bad Request

codestring
messagestring

Conflict

codestring
messagestring
Suggest Edits

/Member/cellphonenumbers/{id}

Exemplo de requisição para alterar os dados de um número de celular já registrado:

Request:
PUT /members/v1/member/cellphonenumbers/0E2OL9VCH27GSRCM
{
    "alias": "Ricardo",
    "carrierCode": 3,
    "countryCode": 55,
    "areaCode": 15,
    "cellphoneNumber": "926114572",
    "default": true
}
 
putuat-api.dotzlabs.com/members/v1/member/cellphonenumbers/id
curl --request PUT \
  --url http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers/id \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'PUT',
  url: 'http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers/id',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers/id")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Put.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PUT", "http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers/id");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers/id"

headers = {'authorization': 'Authorization'}

response = requests.request("PUT", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

id
string
required

Identificador do número de celular registrado.

Body Params

alias
string
required

Nome amigável, para fácil identificação do número de celular pelo usuário.

carrierCode
int32
required

Operadora do número de celular.

countryCode
int32

Código do país do número de celular,
se não informado será assumido por padrão o valor 55 (Brazil).

areaCode
int32
required

Código da área.

cellphoneNumber
string
required

Número de celular.

default
boolean

Se é o número padrão para ser usado para alguma funcionalidade,
se não informado será assumido por padrão o valor 'false'.

Headers

Authorization
string
required

access token

Response

Success

Bad Request

codestring
messagestring

Not Found

codestring
messagestring

Conflict

codestring
messagestring
Suggest Edits

/Member/cellphonenumbers/{id}

Exemplo de requisição para remover um número de celular do usuário:

Request:
DELETE /members/v1/member/cellphonenumbers/0E2OL9VCH27GSRCM
 
deleteuat-api.dotzlabs.com/members/v1/member/cellphonenumbers/id
curl --request DELETE \
  --url http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers/id \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'DELETE',
  url: 'http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers/id',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers/id")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Delete.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers/id");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/members/v1/member/cellphonenumbers/id"

headers = {'authorization': 'Authorization'}

response = requests.request("DELETE", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

id
string
required

Identificador do número de celular do usuário.

Headers

Authorization
string
required

access token

Response

Success

Bad Request

codestring
messagestring

Not Found

codestring
messagestring

Conflict

codestring
messagestring

Tabela de erros do endpoint [PUT] /member/personalInformation:

Código HTTP
Código Erro
Mensagem de Erro

400

001

Nome deve ter no máximo 100 caracteres, nenhum número ou simbolo e and ao menos dois nomes (Primeiro e Último).

400

002

Idade deve estar entre 16 e 100 anos.

400

003

Código de área do telefone deve ser um valor entre 11 e 99.

400

004

Número de telefone deve conter apenas números e máximo de 8 caracteres.

400

005

Número de celular deve conter apenas números e máximo de 9 caracteres.

400

006

Código de área do celular deve ser um valor entre 11 e 99.

Tabela de erros do endpoint [PUT] /member/notifications:

Código HTTP
Código Erro
Mensagem de Erro

400

007

E-mail deve ser preenchido.

400

008

MobilePush deve ser preenchido.

400

009

PhoneCall deve ser preenchido.

400

010

Notificação não encontrada.

400

011

SMS deve ser selecionado.

Tabela de erros do endpoint [POST] /member/addresses:

Código HTTP
Código Erro
Mensagem de Erro

400

012

CEP inválido.

400

013

Cidade não pode ser nulo e deve conter no máximo 100 caracteres.

400

014

Bairro não pode ser nulo e deve conter no máximo 100 caracteres.

400

015

UF deve ser preenchido e conter 2 caracteres.

400

016

Descrição do logradouro deve ser preenchido e conter no máximo 300 caracteres.

400

017

Número deve ser preenchido e não pode ultrapassar 40 caracteres.

404

018

CEP não encontrado.

409

019

CEP não permitido.

Tabela de erros do endpoint [PATCH] /member/addresses/{addressId}:

Código HTTP
Código Erro
Mensagem de Erro

400

020

Código do País é inválido. Somente é aceito 55.

400

021

Descrição do logradouro, quando colocado na mensagem, deve ser preenchido e conter no máximo 300 caracteres.

400

022

Número, quando colocado na mensagem, deve ser preenchido e não pode ultrapassar 40 caracteres.

400

023

Cidade, quando colocado na mensagem, não pode ser nulo e deve conter no máximo 100 caracteres.

400

024

Código do País é inválido. Somente é aceito 55.

400

025

Bairro, quando colocado na mensagem, não pode ser nulo e deve conter no máximo 100 caracteres.

400

026

CEP, quando colocado na mensagem, deve ser informado.

400

027

CEP em formato inválido.

400

028

CEP não encontrado.

400

029

Estado, quando colocado na mensagem, não pode estar em branco.

400

030

Estado não é um valor válido.

404

031

Endereço não encontrado.

Tabela de erros do endpoint [PUT] /member/addresses/{addressId}:

Código HTTP
Código Erro
Mensagem de Erro

400

032

Bairro não pode ser nulo e deve conter no máximo 100 caracteres.

400

033

CEP inválido.

400

034

UF deve ser preenchido e conter 2 caracteres.

400

035

Descrição do logradouro deve ser preenchido e conter no máximo 300 caracteres.

400

036

Número deve ser preenchido e não pode ultrapassar 40 caracteres.

404

037

CEP não encontrado.

409

038

CEP não permitido.

400

039

Cidade não pode ser nulo e deve conter no máximo 100 caracteres.

400

040

Código do País é inválido. Somente é aceito 55.

404

041

Endereço não encontrado.

Tabela de erros do endpoint [DELETE] /member/addresses/{addressId}:

Código HTTP
Código Erro
Mensagem de Erro

400

042

Endereço não encontrado.

400

043

Requisição em formato inválido.

400

044

AddressId inválido.

Tabela de erros do endpoint [POST] /members/v1/member/cellphonenumbers:

Código HTTP
Código Erro
Mensagem de Erro

400

045

Alias deve ser informado.

400

046

Alias deve ter no mínimo 2 caracteres e no máximo 20 caracteres.

400

047

Código da operadora deve ser informado.

400

048

Código do país informado ({0}) é inválido.

400

049

Código da área deve ser informado.

400

050

Código da área informado ({0}) é inválido.

400

051

Número de celular deve ser informado.

400

052

Número de celular informado ({0}) é inválido.

400

053

Número de celular ({0}) já registrado.

409

054

Só é permitido um usuário ter no máximo 10 números de celulares registrados.

Tabela de erros do endpoint [PUT] /members/v1/member/cellphonenumbers/0E2OL9VCH27GSRCM:

Código HTTP
Código Erro
Mensagem de Erro

400

055

Identificador do número de celular deve ser informado.

400

056

Identificador do número de celular deve ser um hash de 15 caracteres.

404

057

Identificador do número de celular informado ({0}) não foi encontrado.

400

058

Alias deve ser informado.

400

059

Alias deve ter no mínimo 2 caracteres e no máximo 20 caracteres.

400

060

Código da operadora deve ser informado.

400

061

Código do país informado ({0}) é inválido.

400

062

Código da área deve ser informado.

400

063

Código da área informado ({0}) é inválido.

400

064

Número de celular deve ser informado.

400

065

Número de celular informado ({0}) é inválido.

409

066

Número de celular ({0}) já registrado.

409

067

Número de celular padrão não pode ser inativado, apenas pode ser ativado.

Tabela de erros do endpoint [DELETE] /members/v1/member/cellphonenumbers/0E2OL9VCH27GSRCM:

Código HTTP
Código Erro
Mensagem de Erro

400

068

Identificador do número de celular deve ser informado.

400

069

Identificador do número de celular deve ser um hash de 15 caracteres.

404

070

Identificador do número de celular informado ({0}) não foi encontrado.

409

071

Número de celular padrão não pode ser removido, é necessário tornar outro número de celular padrão para remover este registro.

Código HTTP
Código Erro
Mensagem de Erro

404

072

Membro não encontrado.

409

073

Não é possivel inserir nenhum endereço mais. Número máximo de cadastros atingido.

400

074

Alias deve ter no mínimo 2 caracteres e no máximo 20 caracteres.

400

075

Código de operadora {0} inválido.

400

076

Código de operadora {0} inválido.

400

077

Alias deve ter no mínimo 2 caracteres e no máximo 20 caracteres.

409

078

Número de celular {0} ({1}) já excluído.

 
Suggest Edits

/Products

Esta api retorna uma listagem de produtos destaques para uma localidade e a listagem de produtos exclusivos para o CPF informado em personalIdentifier

 
getuat-api.dotzlabs.com/offers/v1/products
curl --request GET \
  --url http://uat-api.dotzlabs.com/offers/v1/products
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/offers/v1/products' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/offers/v1/products")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/offers/v1/products");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/offers/v1/products"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

locationId
string

ID da localização

personalIdentifier
string

Informção do membro (e-mail ou cpf somente números por exemplo)

visibleOnlyOnStore
boolean

Se true, trará somente as ofertas que são exibidas quando o device estiver dentro/próximo da localidade

Response

Lista de ofertas e ofertas exclusivas.

productsarray

Products.

exclusiveProductsarray

Exclusives.

 
Suggest Edits

/Members/{Identifier}

Exemplo de requisição para consultar pontos de um cliente.:

Request:
GET /members/31398880400

Response:
{
    "balance": 10,
    "fullName": "31398880400 teste"
}
 
getuat-api.dotzlabs.com/pos/v1/members/Identifier
curl --request GET \
  --url http://uat-api.dotzlabs.com/pos/v1/members/Identifier \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/pos/v1/members/Identifier',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/pos/v1/members/Identifier")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/pos/v1/members/Identifier");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/pos/v1/members/Identifier"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

Identifier
string
required

Identificador do usuário (CPF)

Headers

Authorization
string
required

access token

Response

Success

balanceinteger
fullNamestring

Bad Request

codestring
messagestring

Not Found

codestring
messagestring
Suggest Edits

/Members/{Identifier}/balance

Exemplo de requisição para consultar pontos de um cliente.:

Request:
GET /members/31398880400/balance

Response:
{
    "balance": 10
}
 
getuat-api.dotzlabs.com/pos/v1/members/Identifier/balance
curl --request GET \
  --url http://uat-api.dotzlabs.com/pos/v1/members/Identifier/balance \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/pos/v1/members/Identifier/balance',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/pos/v1/members/Identifier/balance")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/pos/v1/members/Identifier/balance");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/pos/v1/members/Identifier/balance"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

Identifier
string
required

Identificador do usuário (CPF)

Headers

Authorization
string
required

access token

Response

Success

balanceinteger
Suggest Edits

Purchases

 
Suggest Edits

/Purchases/{StoreCode}

Exemplo de requisição para consultar operações de compra:

Request:
GET /pos/v1/purchases/Matriz?Locator=3165408069&amp;_page=1&amp;_pageSize=1

Response:
{
    "_pageSize": 1,
    "_page": 1,
    "_total": 1,
    "items": [
    {
        "locator": "3165408069",
        "storeCode": "Matriz",
        "deviceCode": "987654321",
        "purchaseDate": "2017-06-16T00:00:00Z",
        "memberIdentification": "75266902710",
        "employeeIdentification": "84772314946",
        "items": [
        {
            "sku": "654321",
            "ean": "123456",
            "quantity": 2,
            "unitPrice": 10.6,
            "itemPrice": 21.2,
            "supplierIdentification": "61506481000104",
            "name": "Produto Teste Paulistão",
            "discount": 5.63,
            "offerCode": "wqDm2l3mLO0NxYK",
            "points": 250
        }
        ],
        "transactionId": "59bc0156ecc4b50017035781",
        "description": null,
        "points": 500,
        "bonusPoints": 250,
        "totalPoints": 750,
        "purchaseValue": 50.55,
        "status": 1
    }
    ]
}
 
getuat-api.dotzlabs.com/pos/v1/purchases/StoreCode
curl --request GET \
  --url http://uat-api.dotzlabs.com/pos/v1/purchases/StoreCode \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/pos/v1/purchases/StoreCode',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/pos/v1/purchases/StoreCode")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/pos/v1/purchases/StoreCode");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/pos/v1/purchases/StoreCode"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

StoreCode
string
required

Código do estabelecimento

Query Params

PurchasedDateFrom
date-time

Data e hora de início do filtro (YYYY-MM-DDTHH:mm).

PurchasedDateTo
date-time

Data e hora de fim do filtro (YYYY-MM-DDTHH:mm).

Locator
string

Localizador (cupom fiscal, número do pedido, ticket da transação, outro...).

DeviceCode
string

Identificador do dispositivo.

_page
int32

Número da página.

_pageSize
int32

Número de registros de uma página.

Headers

Authorization
string
required

access token

Response

Lista de operações de compra e dos créditos gerados.

_pageSizeinteger
_pageinteger
_totalinteger
itemsarray

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Registro não encontrado.

codestring
messagestring
Suggest Edits

/Purchases

 
getuat-api.dotzlabs.com/pos/v1/purchases
curl --request GET \
  --url http://uat-api.dotzlabs.com/pos/v1/purchases \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'GET',
  url: 'http://uat-api.dotzlabs.com/pos/v1/purchases',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/pos/v1/purchases")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Get.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "http://uat-api.dotzlabs.com/pos/v1/purchases");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/pos/v1/purchases"

headers = {'authorization': 'Authorization'}

response = requests.request("GET", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Query Params

PurchasedDateFrom
date-time

Data e hora de início do filtro (YYYY-MM-DDTHH:mm).

PurchasedDateTo
date-time

Data e hora de fim do filtro (YYYY-MM-DDTHH:mm).

Locator
string

Localizador (cupom fiscal, número do pedido, ticket da transação, outro...).

DeviceCode
string

Identificador do dispositivo.

_page
int32

Número da página.

_pageSize
int32

Número de registros de uma página.

Headers

Authorization
string
required

access token

Response

Success

_pageSizeinteger
_pageinteger
_totalinteger
itemsarray

Bad Request

codestring
messagestring

Not Found

codestring
messagestring
Suggest Edits

/Purchases

Exemplo de requisição para criação de uma operação de compra:

Request:
POST /pos/v1/purchases
{
    "locator": "10",
    "storeCode": "MATRIZ",
    "deviceCode": "41",
    "purchaseDate": "2017-08-16T19:39:43.564Z",
    "shopperIdentification": "43574989881",
    "employeeIdentification": "43574989881",
    "calculatePoints": false,
    "offerCode": "GDkqlEVZREMw0pj",
    "points": 10,
    "items": [{
        "sku": "132312312",
        "ean": "0768421222301",
        "quantity": 2,
        "unitPrice": 8.0,
        "itemPrice": 16.0,
        "supplierIdentification": "43824418000126",
        "name": "ARROZ INTEGRAL",
        "discount": 0.0,
        "offerCode": "GDkqlEVZREMw0pj",
        "points": 1

    }],
    "purchaseValue": 16.0,
    "payments": [
        {
            "paymentType": 1,
            "bin": "",
            "amount": 16.00
        }
    ]
}

Response:
{
    "locator": "10",
    "transactionId": "43J4VEVK5MZXSXR6XGQLBMAHA4JB7JWC",
    "memberIdentification": "43574989881",
    "description": "Parabéns! Você ganhou Dotz em sua compra.",
    "points": 4,
    "bonusPoints": 10,
    "totalPoints": 14,
    "purchaseValue": 199.99
}
 
postuat-api.dotzlabs.com/pos/v1/purchases
curl --request POST \
  --url http://uat-api.dotzlabs.com/pos/v1/purchases \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'POST',
  url: 'http://uat-api.dotzlabs.com/pos/v1/purchases',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/pos/v1/purchases")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Post.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "http://uat-api.dotzlabs.com/pos/v1/purchases");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/pos/v1/purchases"

headers = {'authorization': 'Authorization'}

response = requests.request("POST", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Body Params

locator
string
required

Localizador (cupom fiscal, número do pedido, ticket da transação, outro...).

storeCode
string
required

Identificador do estabelecimento.

deviceCode
string
required

Identificador do dispositivo.

purchaseDate
date-time

Data e hora da transação de compra.
Ex: 2017-07-21T16:37:01.811Z

shopperIdentification
string

Identificador de um cliente (CPF - sem formatação).
O campo deve ser preenchido se o consumidor pediu pontos.

employeeIdentification
string

Identificador do funcionário que estava na frente do caixa (caso haja). (CPF - sem formatação).

calculatePoints
boolean

Se o chamador irá mandar os pontos calculados ou não.
Se for true, o API deverá calcular os pontos, se false, deve ser enviado pelo chamador.

offerCode
string
required

Identificador da mecânica.

points
int32

Quantidade de pontos que serão creditados.

items
array of objects

Itens da compra.

sku
ean
quantity
unitPrice
itemPrice
supplierIdentification
name
discount
offerCode
points
purchaseValue
double

Valor total da compra referente aos valores somados dos Itens

payments
array of objects

Dados de pagamento da compra.

paymentType
bin
amount

Headers

Authorization
string
required

access token

Response

Pontos creditados para o cliente pela operação de compra.

locatorstring

Localizador (cupom fiscal, número do pedido, ticket da transação, outro...).

transactionIdstring

Identificador do registro interno gerada.

memberIdentificationstring

Identificador pessoal de uma pessoa, pode ser CPF ou e-mail.

descriptionstring

Descritivo para ser impresso no cupom fiscal.

pointsinteger

Pontos ganhos.

bonusPointsinteger

Pontos de bônus.

totalPointsinteger

Total de pontos ganhos na operação (Points + BonusPoints).

purchaseValuenumber

Valor total da compra em R$ (Reais) referente aos valores somados dos Itens

Formato inválido do(s) paramêtro(s) de entrada.

codestring
messagestring

Ocorreu um erro de negócio.

codestring
messagestring
Suggest Edits

/Purchases/{locator}

Exemplo de requisição para estonar uma transação de compra:

Request:
DELETE /pos/v1/purchases/10
{
    "storeCode": "MATRIZ",
    "deviceCode": "41",
    "date": "2017-08-16"
}
 
deleteuat-api.dotzlabs.com/pos/v1/purchases/locator
curl --request DELETE \
  --url http://uat-api.dotzlabs.com/pos/v1/purchases/locator \
  --header 'authorization: Authorization'
var request = require("request");

var options = { method: 'DELETE',
  url: 'http://uat-api.dotzlabs.com/pos/v1/purchases/locator',
  headers: { authorization: 'Authorization' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("http://uat-api.dotzlabs.com/pos/v1/purchases/locator")

http = Net::HTTP.new(url.host, url.port)

request = Net::HTTP::Delete.new(url)
request["authorization"] = 'Authorization'

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "http://uat-api.dotzlabs.com/pos/v1/purchases/locator");
xhr.setRequestHeader("authorization", "Authorization");

xhr.send(data);
import requests

url = "http://uat-api.dotzlabs.com/pos/v1/purchases/locator"

headers = {'authorization': 'Authorization'}

response = requests.request("DELETE", url, headers=headers)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

locator
string
required

Localizador (cupom fiscal, número do pedido, ticket da transação, outro...).

Body Params

storeCode
string

Identificador do estabelecimento.

deviceCode
string

Identificador do dispositivo.

date
date-time

Data da transação (YYYY-MM-DD).

Headers

Authorization
string
required

access token

Response

Success

Bad Request

codestring
messagestring

Not Found

codestring
messagestring

Conflict

codestring
messagestring
Suggest Edits

PurchasePoints

 

Tabela de erros do endpoint [GET] /purchase:

Código HTTP
Código Erro
Mensagem de Erro

400

1

O valor de _pageSize deve estar entre 1 e 100.

400

2

_page deve ser maior que 0.

400

3

O Identificador da transação (locator) não pode ter mais do que 30 caracteres.

400

4

O identificador do dispositivo (DeviceCode) não pode ter mais do que 250 caracteres.

400

5

Período excede o limite de busca.

400

6

<