Anexos do produto
Altera os dados de um anexo para download de um produto, como manual ou ficha técnica, e apaga anexos.
Um anexo é um arquivo que o cliente pode baixar na página do produto: manual em PDF, ficha técnica, certificado, tabela de medidas. A plataforma não guarda o arquivo no anexo: ela guarda o nome, a URL (file_url) do arquivo já enviado, o tamanho e o tipo. A contagem de downloads é mantida pela vitrine.
Estas duas rotas agem sobre um anexo pelo id dele. Para listar os anexos de um produto e para criar um novo, use as rotas GET e POST /api/v1/admin/products/{id}/attachments. Exigem o privilégio manage_catalog.
Alterar um anexo
/api/v1/admin/attachments/{attachmentId}AdminAlterar os dados de um anexo
Atualiza o anexo e devolve o registro novo. As regras de gravação são mistas, e é isso que costuma surpreender:
file_name,file_url,file_sizeemime_typesó mudam se você enviar um valor não vazio (efile_sizemaior que 0).descriptionepositionsão sempre regravados. Se você não os enviar, a descrição vira vazia e a posição vira0.
Por isso, ao alterar só o nome, reenvie também a description e a position atuais.
Parâmetros de caminho
attachmentIduuidobrigatórioCorpo da requisição
file_namestringmanual.pdf. Vazio mantém o atual.file_urlstringfile_sizeintegermime_typestringapplication/pdf. Vazio mantém o atual.descriptionstringpositionintegerResposta
Campos da resposta
iduuidproduct_iduuidfile_namestringfile_urlstringfile_sizeintegermime_typestringdescriptionstringpositionintegerdownload_countintegercreated_atstringupdated_atstringApagar um anexo
/api/v1/admin/attachments/{attachmentId}AdminApagar um anexo
Remove o anexo do produto e fecha o espaço na ordem: os anexos com posição maior sobem uma posição. Sem corpo.
Parâmetros de caminho
attachmentIduuidobrigatórioErros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 400 | Corpo do PUT que não é JSON. | {"error":"invalid request body","detail":"..."} |
| 401 | Sem token ou token expirado. | {"error":"invalid or expired token"} |
| 403 | Sem manage_catalog. | {"error":"insufficient privileges","required":"manage_catalog"} |
| 404 | Nenhum anexo com esse id. | {"error":"attachment not found"} |
| 500 | Falha ao gravar, ou {attachmentId} que não é UUID. | {"error":"failed to update attachment","detail":"..."} |