Produto Simples
Existem algumas diferenças na atualização de produtos simples e variáveis, nesta página mostraremos como alterar produtos simples
PUT - Atualizando um produto simples
A atualização de informações é realizada através do método PUT, mantendo o mesmo header e conservando o atributo que deverá ser alterado.
Para realizar a atualização, é preciso utilizar o método PUT no mesmo endpoint de produtos acrescido do código SKU do produto simples conforme abaixo:
https://api.skyhub.com.br/products/{SKU}
Request headers:
X-User-Email
email_de_usuario
X-Api-Key
token_de_integracao de sua conta SkyHub
X-Accountmanager-key
token_account único de cada Plataforma/ERP
Accept
application/json
Content-Type
application/json
Request body:
{
"product": {
"Atributo": "Novo Valor"
}
}
O objeto product deve ser preservado na request, caso contrário um erro será retornado na tentativa de atualizar o produto.
Example request:
No exemplo abaixo, estamos alterando somente o nome do produto, então todos os demais atributos foram retirados da requisição, para facilitar o entendimento.
curl --location --request PUT 'https://api.skyhub.com.br/products/{SKU}' \
--header 'X-User-Email: email_de_usuario' \
--header 'x-Api-Key: token_de_integracao de sua conta SkyHub' \
--header 'x-accountmanager-key: token_account único de cada Plataforma/ERP' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"product": {
"name": "Nome Atualizado do Produto"
}
}'
Response esperado:
204 [Success] - No content
Para a atualização de imagens é necessário atentar-se a URL indexada: Para realizar alterações nas imagens de um produto é preciso encaminhar uma nova URL, ou seja, não é possível reutilizar a URL previamente enviada; somente com URLs diferentes a nova imagem será refletida pelo marketplace.
[Ver Comunicado: Envio de Imagens para o Marketplace]
Como atualizar preço e estoque
Assim como quaisquer atualizações em produtos, para alterações nos campos de preço (price e promotional_price) e estoque deve ser utilizado o método PUT no /products/{SKU}.
A seguir temos exemplos de requisições para as atualizações de preço e estoque para produtos simples:
Atualização de preço:
curl --location -g --request PUT 'https://api.skyhub.com.br/products/{SKU}' \
--header 'X-User-Email: email_de_usuario' \
--header 'x-Api-Key: token_de_integracao de sua conta SkyHub' \
--header 'x-accountmanager-key: token_account único de cada Plataforma/ERP' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"product": {
"price": 100.00,
"promotional_price": 80.00
}
}'
Atualização de estoque:
curl --location -g --request PUT 'https://api.skyhub.com.br/products/{SKU}' \
--header 'X-User-Email: email_de_usuario' \
--header 'x-Api-Key: token_de_integracao de sua conta SkyHub' \
--header 'x-accountmanager-key: token_account único de cada Plataforma/ERP' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"product": {
"qty": 1000
}
}'
Atualização de preço e estoque:
curl --location -g --request PUT 'https://api.skyhub.com.br/products/{SKU}' \
--header 'X-User-Email: email_de_usuario' \
--header 'x-Api-Key: token_de_integracao de sua conta SkyHub' \
--header 'x-accountmanager-key: token_account único de cada Plataforma/ERP' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"product": {
"qty": 1000,
"price": 100.00,
"promotional_price": 80.00
}
}'
Como atualizar o atributo crossdocking
O crossdocking é o atributo responsável pela definição do prazo do item, isto é, ele representa o tempo que o seller leva para fabricar o produto após o pagamento do pedido ter sido aprovado.
O atributo crossdocking deve vir na raiz do produto, assim como preço, estoque e outros.
A seguir temos um exemplo de requisição para atualização do atributo crossdocking:
curl --location --request PUT 'https://api.skyhub.com.br/products/{SKU}' \
--header 'X-User-Email: email_de_usuario' \
--header 'x-Api-Key: token_de_integracao de sua conta SkyHub' \
--header 'x-accountmanager-key: token_account único de cada Plataforma/ERP' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"product": {
"crossdocking": "3"
}
}'
Criação de variação em produtos simples
Quando desejar tornar um Produto Simples em Produto Variável, é necessário enviar no body a estrutura de um Produto Variável, com o Array 'variations' especificando as variações a serem criadas e também o 'variation_attributes' especificando os atributos variantes.
IMPORTANTE:
Só indicamos a criação de variações em produtos simples enquanto o SKU não tiver conectado ao Marketplace.
E se o produto já estiver conectado?
Se um produto simples já estiver conectado e uma nova variação é enviada no produto, automaticamente será excluída a oferta do produto simples no Marketplace.
O produto só será criado novamente no Marketplace desta vez como variável, quando o parceiro realizar uma nova conexão do produto.
curl --location -g --request PUT 'https://api.skyhub.com.br/products/{SKU}' \
--header 'X-User-Email: email_de_usuario' \
--header 'x-Api-Key: token_de_integracao de sua conta SkyHub' \
--header 'x-accountmanager-key: token_account único de cada Plataforma/ERP' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"product": {
"sku": "foo", // String
"name": "foo", // String
"description": "foo", // String
"status": "enabled", // String
"price": 0.0, // Integer
"promotional_price": 0.0, // Integer
"crossdocking": '0" // String
"cost": 0, // Integer
"brand": "foo", // String
"weight": 0, // Integer
"height": 0, // Integer
"width": 0, // Integer
"length": 0, // Integer
"variations": [ //Exemplo de Variação
{
"sku": "foo-1",
"qty": 0,
"crossdocking": '0" // String
"status": "enabled" // String
"ean": "foo", // String
"specifications": [
{ // Atributo de categoria - preenchimento livre
"id": "id do atributo",
"value": "Texto livre"
},
{ // Atributo de categoria - valores pré-determinados
"id": "id do atributo",
"idValue": "id da opção selecionável"
}
]
}
]
}
}'
Last updated