Requests
Ao realizar requisições a API utilize o formato JSON no corpo das requisições. Para fazer uma solicitação adequada no formato JSON, forneça Content-Type: application/json no cabeçalho da requisição HTTP. A API utiliza os verbos HTTP para cada ação:
Método | Descrição |
---|---|
GET | Usado para recuperar recursos |
POST | Usado para criar recursos |
PUT | Usado para alterar/substituir recursos |
DELETE | Usado para deletar recursos |
URL
Nossa API está disponivel no endereço https://api-hom.smarkets.com.br/api/v1.0.
Códigos de Status HTTP
Status Codes usados na API do Marketplace:
Código de Status | Nome | Descrição |
---|---|---|
200 | Success | Requisição realizada |
400 | Bad Request | Requisição realizada |
401 | Unauthorized | Token de acesso inválido |
403 | Forbidden | Requisição não permitida |
404 | Not Found | Recurso indisponível |
415 | Unsupported Media Type | Recurso não ativado |
429 | Too Many Requests | Limite de requisições excedido |
500 | Internal Server Error | Método inválido |
501 | Not Implemented | Funcionalidade inexistente |
503 | Service Unavailable | Manutenção agendada |
Autenticação
O acesso as APIs da Plataforma Smarkets é feito através da criação de um token de autorização de requisição, único por requisição. Toda aplicação que deseja se conectar a plataforma recebe um client_id e um secret, através dessas duas informações que serão gerados os tokens de autorização.
client_id | Identificador único de uma empresa na plataforma |
secret | Palavra chave única de uma empresa na plataforma utilizada durante o processo de codificação de token para requisição |
Um token de autorização a API válido deve ser gerado seguindo as seguintes diretivas:
-
1. Um JSON contendo client_id de sua empresa e timestamp deve
ser codificado em Base64.
{"client_id":1,"timestamp":"1555449236"}
//Base64 JSON: eyJjbGllbnRfaWQiOjEsInRpbWVzdGFtcCI6IjE1NTU0NDkyMzYifQ==
-
2. O secret de sua empresa deve ser codificado em Base64.
//secret: qUQXzKyKuTfxh5ga5bnY5Vr4v9BhzPMN
//Base64 secret: cVVRWHpLeUt1VGZ4aDVnYTViblk1VnI0djlCaHpQTU4=
-
3. Utilizando o algoritmo HMACSHA256, codifique o resultado do passo 1, utilizando como secret key o
resultado do passo 2.
//access_token: 7f6035ad75db15ab5d7b864f6b523354273ed84bc7a4589e43b90d7abbd054e1
- 4. O resultado do passo anterior é seu token de acesso.
Seu access_token deve ser usado para realizar requisições a endpoints da API. Para usar o token, construa uma requisição HTTPS normal e inclua um cabeçalho Authorization com o valor Bearer access_token, client_Id e timestamp utilizados na criação do access_token.
Exemplo de requisição:
GET /1.0/pedidos HTTP/1.1
Host: api.smarkets.com.br
Content-Type: application/json
Authorization: Bearer 7f6035ad75db15ab5d7b864f6b523354273ed84bc7a4589e43b90d7abbd054e1
client_Id: 1
timestamp: 1555449236