Criar e Consultar CD

Para a criação de CD será necessário informar uma serie de informações como o código do CD, endereço , horário, telefone, etc, mas a baixo será possivel visualizar o body para ficar mais claro.

Como criar uma CD via API:

Para criar um CD, será necessário utilizar o método POST e a seguinte endpoint:

https://api.skyhub.com.br/rehub/stores

Request Body:

{
"store": {
"code": "loja1",
"name": "Loja 1",
"open_hours": "Seg-Sex: 09:00 às 20:30, Sáb: 09:00 às 18:00, Dom: 09:00 às 14:00",
"phone": "(11) 3454-3258",
"address": {
"street": "R. Fidêncio Ramos",
"number": "302",
"detail": "2° andar",
"neighborhood": "Vila Olímpia",
"city": "São Paulo",
"region": "SP",
"post_code": 1233416,
"reference": "Próximo ao Shopping Vila Olímpia"
},
"email": "loja1@email.com",
"latitude": -23.594721,
"longitude": -46.686015,
"max_delivery_distance": 1.2,
"schedules": {
"monday": {
"start": "08:00",
"end": "16:00"
},
"tuesday": {
"start": "08:00",
"end": "16:00"
},
"wednesday": {
"start": "08:00",
"end": "16:00"
},
"thursday": {
"start": "08:00",
"end": "16:00"
},
"friday": {
"start": "08:00",
"end": "16:00"
},
"saturday": {
"start": "08:00",
"end": "12:00"
},
"sunday": {
"start": null,
"end": null
}
},
"properties": [
"CONFIRM_STOCK",
"AME_FLASH"
]
}
}

Como podemos observar no body acima, pode criar algumas duvidas, por exemplo:

code: se refere ao código da warehouse.

name: nome da warehouse ou do ponto de retirada

open_hours: Horário de funcionamento

properties: possíveis valores [PICK_UP_STORE, CONFIRM_STOCK, AME_FLASH, EXPRESS_DELIVERY, EXPEDITION]

  • PICK_UP_STORE:

    • tipo de contrato que trabalha. Retirada do pedido por parte do cliente.

  • CONFIRM_STOCK:

    • Confirma estoque? Sim ou Não

  • EXPEDITION:

    • A loja expede? sim ou não

    Neste caso o envio é feito pela loja.

  • EXPRESS_DELIVERY

    • A loja faz entrega expressa. A entrega será feita via motoboy, mas por conta da loja

  • AME_FLASH

    • A loja usa a forma de entrega Ame Flash.

Example Request:

curl --location --request POST 'https://api.skyhub.com.br/rehub/stores' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiR............................pXVCJy3ZagAECk' \
--header 'Content-type: application/json' \
--data-raw '{
"store": {
"code": "loja1",
"name": "Loja 1",
"open_hours": "Seg-Sex: 09:00 às 20:30, Sáb: 09:00 às 18:00, Dom: 09:00 às 14:00",
"phone": "(11) 3454-3258",
"address": {
"street": "R. Fidêncio Ramos",
"number": "302",
"detail": "2° andar",
"neighborhood": "Vila Olímpia",
"city": "São Paulo",
"region": "SP",
"post_code": 1233416,
"reference": "Próximo ao Shopping Vila Olímpia"
},
"email": "loja1@email.com",
"latitude": -23.594721,
"longitude": -46.686015,
"max_delivery_distance": 1.2,
"schedules": {
"monday": {
"start": "08:00",
"end": "16:00"
},
"tuesday": {
"start": "08:00",
"end": "16:00"
},
"wednesday": {
"start": "08:00",
"end": "16:00"
},
"thursday": {
"start": "08:00",
"end": "16:00"
},
"friday": {
"start": "08:00",
"end": "16:00"
},
"saturday": {
"start": "08:00",
"end": "12:00"
},
"sunday": {
"start": null,
"end": null
}
},
"properties": [
"CONFIRM_STOCK",
"AME_FLASH"
]
}
}'

AME_FLASH e EXPRESS_DELIVERY são referentes ao contrato SHIP_FROM_STORE

Não é possivel trabalhar com AME_FLASH e EXPRESS_DELIVERY simultaneamente. Será um ou outro.

Request Headers

Name

Type

Required

Description

Example

Content-type

String

Required

application/json

Authorization

String

Required

Bearer eyJhbGciOiJIUzI1NiR............................pXVCJy3ZagAECk

x-accountmanager-key

String

Required

Código identificador da sua Integração

SUAXACCOUNT

Responses:

201 - Created

400 - Bad request

Como consultar um CD:

Nesta rota, será possível consultar todos os CDs que a loja possui.

Para consultar os CDs, é necessário utilizar o método GET e a endpoint a baixo:

https://api.skyhub.com.br/rehub/stores

Example Request:

curl --location --request GET 'https://api.skyhub.com.br/rehub/stores' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiR............................pXVCJy3ZagAECk' \
--header 'Content-type: application/json'

Request Headers

Name

Type

Required

Description

Example

Content-type

String

Required

application/json

Authorization

String

Required

Bearer eyJhbGciOiJIUzI1NiR............................pXVCJy3ZagAECk

x-accountmanager-key

String

Required

Código identificador da sua Integração

SUAXACCOUNT

Responses:

200 - OK

{
"store": {
"name": "Loja 1",
"open_hours": "Seg-Sex: 09:00 às 20:30, Sáb: 09:00 às 18:00, Dom: 09:00 às 14:00",
"phone": "(11) 3454-3258",
"address": {
"street": "R. Fidêncio Ramos",
"number": "302",
"detail": "2° andar",
"neighborhood": "Vila Olímpia",
"city": "São Paulo",
"region": "SP",
"post_code": 1233416,
"reference": "Próximo ao Shopping Vila Olímpia"
},
"email": "loja1@email.com",
"latitude": -23.594721,
"longitude": -46.686015,
"max_delivery_distance": 1.2,
"schedules": {
"monday": {
"start": "08:00",
"end": "16:00"
},
"tuesday": {
"start": "08:00",
"end": "16:00"
},
"wednesday": {
"start": "08:00",
"end": "16:00"
},
"thursday": {
"start": "08:00",
"end": "16:00"
},
"friday": {
"start": "08:00",
"end": "16:00"
},
"saturday": {
"start": "08:00",
"end": "12:00"
},
"sunday": {
"start": null,
"end": null
}
},
"properties": [
"CONFIRM_STOCK"
]
}
}

Como consultar um CD especifica:

Uma vez que a loja possui muitos CDs ou gostaria de verificar se ela foi cadastrada, é possível consultar especificamente, de acordo com o código que ela foi criada no campo "code".

Para efetuar a consulta é necessário utilizar o método GET e seguinte endpoint:

https://api.skyhub.com.br/rehub/stores/{code}

Example Request:

curl --location --request GET 'https://api.skyhub.com.br/rehub/stores/{code}' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiR............................pXVCJy3ZagAECk' \
--header 'Content-type: application/json'

Request Headers

Name

Type

Required

Description

Example

Content-type

String

Required

application/json

Authorization

String

Required

Bearer eyJhbGciOiJIUzI1NiR............................pXVCJy3ZagAECk

x-accountmanager-key

String

Required

Código identificador da sua Integração

SUAXACCOUNT

Responses:

200 - OK

curl --location --request PUT 'https://api.skyhub.com.br/rehub/stores/{code}' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiR............................pXVCJy3ZagAECk' \
--header 'Content-type: application/json' \
--data-raw '{
"store": {
"name": "Loja 1",
"open_hours": "Seg-Sex: 09:00 às 20:30, Sáb: 09:00 às 18:00, Dom: 09:00 às 14:00",
"phone": "(11) 3454-3258",
"address": {
"street": "R. Fidêncio Ramos",
"number": "302",
"detail": "2° andar",
"neighborhood": "Vila Olímpia",
"city": "São Paulo",
"region": "SP",
"post_code": 1233416,
"reference": "Próximo ao Shopping Vila Olímpia"
},
"email": "loja1@email.com",
"latitude": -23.594721,
"longitude": -46.686015,
"max_delivery_distance": 1.2,
"schedules": {
"monday": {
"start": "08:00",
"end": "16:00"
},
"tuesday": {
"start": "08:00",
"end": "16:00"
},
"wednesday": {
"start": "08:00",
"end": "16:00"
},
"thursday": {
"start": "08:00",
"end": "16:00"
},
"friday": {
"start": "08:00",
"end": "16:00"
},
"saturday": {
"start": "08:00",
"end": "12:00"
},
"sunday": {
"start": null,
"end": null
}
},
"properties": [
"CONFIRM_STOCK"
]
}
}'

404 - Not Found

Status do CD:

Cada CD criada pode ser ativada e inativada via API. Por exemplo:

A loja não quer mais que o produto seja vendido por determinado CD, desta forma ele pode inativar.

Caso decida utilizar o cd novamente, basta ativa-la.

Para que tanto a ativação quanto a inativação ocorram, é necessário utilizar o método POST e a seguinte Endpoint:

https://api.skyhub.com.br/rehub/stores/{code}/statuses

No campo {code} será necessário informar o código do CD

Example body:

{
"statuses": [
{
"platform": "B2W",
"status": "active"
}
]
}

Os possíveis valores a serem informado em "status" é:

  • active: para ativar

  • inactive: para inativar

Example Request

curl --location --request POST 'https://api.skyhub.com.br/stores/{code}/statuses' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiR............................pXVCJy3ZagAECk' \
--header 'Content-type: application/json' \
--data-raw '{
"statuses": [
{
"platform": "B2W",
"status": "active"
}
]
}'

Request Headers

Name

Type

Required

Description

Example

Content-type

String

Required

application/json

Authorization

String

Required

Bearer eyJhbGciOiJIUzI1NiR............................pXVCJy3ZagAECk

x-accountmanager-key

String

Required

Código identificador da sua Integração

SUAXACCOUNT

204 - No content (success)

400 - Bad request

404 - Not found

422 - Unprocessable entity

Como consultar estoque por produto:

Para consultar o estoque de determinado sku, é necessário efetuar o método GET e a seguinte endpoint:

https://api.skyhub.com.br/rehub/products/{sku}/store_stocks

Na consulta acima será listado o estoque de todas os CDs do sku informado na endpoint.

Example Request:

curl --location --request GET 'https://api.skyhub.com.br/rehub/products/{sku}/store_stocks' \
--header 'Authorization: application/json' \
--header 'Content-type: Bearer eyJhbGciOiJIUzI1NiR............................pXVCJy3ZagAECk'

Responses:

200 - OK

{
"store_stocks": [
{
"store_code": "18",
"sku_code": "sku-001",
"qty": 200,
"cross_docking": 3
},
{
"store_code": "L001",
"sku_code": "sku-001",
"qty": 2,
"cross_docking": 0
},
{
"store_code": "998",
"sku_code": "sku-001",
"qty": 0,
"cross_docking": 15
}
]
}

Como consultar estoque:

Para consultar o estoque de um determinado SKU em seus respectivos cds, é necessário utilizar o método GET e a seguinte endpoint.

https://api.skyhub.com.br/rehub/products/{sku}/store_stocks?store_code={store_code}

Como é possível observar, será necessário incluir a query "store_code", que será, o código do CD.

Example Request:

curl --location --request GET 'https://api.skyhub.com.br/rehub/products/{sku}/store_stocks?store_code={store_code}' \
--header 'Authorization: application/json' \
--header 'Content-type: Bearer eyJhbGciOiJIUzI1NiR............................pXVCJy3ZagAECk'

Request Headers:

Name

Type

Required

Description

Example

Content-type

String

Required

application/json

Authorization

String

Required

Bearer eyJhbGciOiJIUzI1NiR............................pXVCJy3ZagAECk

x-accountmanager-key

String

Required

Código identificador da sua Integração

SUAXACCOUNT