Pular para o conteúdo
ShopentlyLearn

Alterar dados da loja

Use a API para alterar dados da sua loja, como a descrição ou o preço de um produto.

Alterar campos específicos

Para alterar a descrição de um produto, não é preciso enviar todos os seus dados. Na solicitação PATCH, inclua os campos que deseja alterar e os demais campos obrigatórios da operação. Os outros dados permanecem iguais.

Campo omitido
O valor permanece igual.
null
Enviar null remove o valor, se o campo permitir. Confira a descrição da operação.
Texto vazio
"" representa um texto vazio. É diferente de null, e nem todo campo aceita esse valor.

Neste exemplo, removemos a descrição do produto em alemão. O nome e as descrições nos outros idiomas permanecem iguais.

PATCH/api/v1/products/example?locale=de

Requisição cURL

curl --disable --globoff --fail-with-body --silent --show-error \
  --proto '=https' --connect-timeout 5 --max-time 30 \
  --request PATCH \
  --url 'https://shop.onshopently.com/api/v1/products/example?locale=de' \
  --header 'Authorization: Bearer EXAMPLE_ACCESS_TOKEN' \
  --header 'Idempotency-Key: example-product-clear-translation' \
  --header 'Content-Type: application/json' \
  --data-raw '{"description":null,"expected_version":1}'

Resposta

{
  "data": {
    "deleted": false,
    "id": "example",
    "version": 2
  },
  "meta": {
    "request_id": "example"
  }
}

Se você não receber uma resposta

A falta de resposta não significa necessariamente que a alteração não foi salva. A conexão pode ter sido interrompida depois que a alteração foi feita.

Ao salvar dados, adicione o cabeçalho Idempotency-Key com um valor único. Se não receber uma resposta e repetir a mesma alteração, use a mesma chave, URL, método e conteúdo da solicitação.

Se a API já tiver um resultado salvo para essa solicitação, ela o retornará sem executar a alteração novamente. Use uma nova chave para uma alteração diferente.

Reutilizar uma chave para outra requisição produz idempotency.key_reused.

Se alguém alterar os mesmos dados

Busque os dados atuais antes de alterá-los. Se a operação exigir expected_version, informe nesse campo a versão recebida.

Se alguém tiver alterado os dados nesse intervalo, a API recusará a gravação. Busque-os novamente e confira se a alteração planejada ainda é adequada. Só então envie uma nova solicitação com a versão atual.

Alterar um preço também pode exigir a versão do preço, da variante ou da tabela de preços. Consulte os campos necessários na descrição da operação.