# Lista os produtos de uma compra Retorna os produtos de uma compra. Endpoint: GET /api/v3/purchases/{purchaseId}/items Version: 3.0.0 Security: OAuth2 ## Header parameters: - `CPlug-Company-Id` (number, required) Id da Empresa (Company). Você pode localizar os IDs das empresas no _endpoint_ de listagem de empresas. Example: 12 - `Idempotency-Key` (string, required) UUID aleatório gerado por você. Nós utilizamos esse header para evitar duplicidade de registros, ou seja, caso você não tenha recebido a resposta de alguma requisição e mandar o mesmo UUID, nós não duplicaremos o registro. ## Query parameters: - `items_id` (string) Filtra pelos IDs dos produtos. Pode passar mais de um ID numérico separado por virgula. Example: "1,2,3" - `search` (string) Filtra pelas principais propriedades do produto, incluindo name, sku, e description. Example: "Celular" - `categories_id` (string) Filtra pelos IDs das categorias. Pode passar mais de um ID numérico separado por virgula. Example: "1,2,3" - `barcode` (string) Filtra pelo código de barra do produto. Example: "1502298184770" ## Path parameters: - `purchaseId` (integer, required) ID da compra. ## Response 200 fields (application/json): - `data` (object) - `data.items` (array) Representa a lista de produtos. - `data.items.id` (integer) Id único da relação entre o item e a compra Obs: Se estiver atualizando este item, este campo deve ser enviado. Example: 123 - `data.items.item_id` (integer) Id único do item Example: 456 - `data.items.amount` (number) quantidade Example: 5 - `data.items.unitary_cost_value` (object) Valor do custo unitário do item. - `data.items.unitary_cost_value.amount` (number, required) Valor expresso como um número decimal das principais unidades monetárias Example: 99.95 - `data.items.unitary_cost_value.currency` (string, required) Código de moeda de 3 letras conforme definido pela ISO-4217 Example: "BRL" - `data.items.total_value` (object) Valor total do item. É a multiplicação da quantidade pelo valor unitário deste item. Fórmula: total_value = amount * unitary_value - `data.items.unitary_sale_value` (object) Valor de venda do item. Só deve ser enviado caso queira alterar o preço de venda e se na configuração do ERP está habilitado esta opção. - `data.items.expiration_date` (string) Data de validado do item. Example: "2025-01-14" - `data.items.stock` (object) Representa um estoque. - `data.items.stock.id` (integer) ID único do estoque Example: 1 - `data.items.stock.name` (string) Nome do estoque Example: "Estoque padrão" - `data.items.status` (object) Representa um status. - `data.items.status.id` (integer) ID único do status Example: 1 - `data.items.status.name` (string) Nome do status Example: "Aberto" - `data.items.status_detail` (object) Representa o detalhe do status. - `data.items.status_detail.id` (integer) ID único do detalhe do status Example: 37 - `data.items.status_detail.name` (string) Nome do detalhe do status Example: "Aguardando fornecedor" - `data.items.arrival_forecast_date` (string) Previsão de entrega do item. Example: "2025-03-14" - `data.items.attributes` (array) Lista de atributos deste item nesta compra. - `data.items.attributes.attribute_id` (integer) ID único do atributo do item. Example: 2 - `data.items.attributes.name` (string) Nome do atributo do item. Example: "Cor" - `data.items.attributes.options` (array) Lista de opções de um atributo. - `data.items.attributes.options.id` (integer) Id único da relação entre a opção e a compra. Obs: Se estiver atualizando esta opção, este campo deve ser enviado. Example: 789 - `data.items.attributes.options.option_id` (integer) Id único da opção Example: 147 - `data.items.attributes.options.name` (string) Nome da opção. Example: "Branca" - `meta` (object) Representa as informações de Metadado da paginação da listagem. - `meta.current_page` (integer, required) Página atual na paginação. Example: 1 - `meta.last_page` (integer, required) Quantidade total de páginas. Example: 10 - `meta.per_page` (integer, required) Quantidade de resultados por página. Example: 20 - `meta.total` (integer, required) Quantidade total de itens. Example: 200 ## Response 400 fields (application/json): - `code` (string, required) Código de erro. Example: "missing_headers" - `message` (string) Descrição do erro. Example: "error message" - `meta` (array) Dados adicionais sobre o erro. ## Response 422 fields (application/json): - `code` (string, required) Código de erro. Example: "uneditable_entity" - `message` (string) Descrição do erro. Example: "description error" - `meta` (array) Dados adicionais sobre o erro. - `meta.field` (string, required) Nome do campo no qual existe um erro de validação. Example: "name" - `meta.validations` (array) - `meta.validations.type` (string, required) Tipo da validação aplicada. Example: "Required" - `meta.validations.value` (array) Tipo de valor aplicável (esse campo pode ser vazio). ## Response 401 fields ## Response 404 fields