### GET /payment-methods Source: https://api-docs.erp.olist.com/api-reference/formas-de-pagamento/listar-formas-de-pagamento Retrieves a list of all available payment methods configured in the system. ```APIDOC ## GET /payment-methods ### Description Fetch a list of all payment methods currently active or available in the ERP system. ### Method GET ### Endpoint /payment-methods ### Parameters #### Query Parameters - **limit** (integer) - Optional - Number of records to return. - **offset** (integer) - Optional - Number of records to skip. ### Request Example GET /payment-methods?limit=10 ### Response #### Success Response (200) - **id** (string) - Unique identifier for the payment method. - **name** (string) - Display name of the payment method. - **active** (boolean) - Status of the payment method. #### Response Example { "payment_methods": [ { "id": "credit_card", "name": "Credit Card", "active": true } ] } ``` -------------------------------- ### GET /produtos/{idProduto}/kit Source: https://api-docs.erp.olist.com/api-reference/produtos/obter-produto-kit Retrieves the kit structure for a specific product by its ID. ```APIDOC ## GET /produtos/{idProduto}/kit ### Description Retrieves the list of products that compose a kit, including the quantity of each item. ### Method GET ### Endpoint /produtos/{idProduto}/kit ### Parameters #### Path Parameters - **idProduto** (integer) - Required - The unique identifier of the product kit. ### Request Example GET /produtos/12345/kit ### Response #### Success Response (200) - **produto** (object) - The product details (id, sku, descricao, tipo). - **quantidade** (number) - The quantity of this item in the kit. #### Response Example [ { "produto": { "id": 5678, "sku": "SKU-001", "descricao": "Componente A", "tipo": "P" }, "quantidade": 2.0 } ] ``` -------------------------------- ### GET /categorias/todas Source: https://api-docs.erp.olist.com/api-reference/categorias/listar-%C3%A1rvore-de-categorias Recupera a estrutura hierárquica de todas as categorias disponíveis no ERP. ```APIDOC ## GET /categorias/todas ### Description Retorna a árvore completa de categorias, incluindo identificadores, descrições e subcategorias (filhas). ### Method GET ### Endpoint /categorias/todas ### Parameters #### Path Parameters - Nenhum #### Query Parameters - Nenhum #### Request Body - Nenhum ### Request Example GET /categorias/todas Authorization: Bearer ### Response #### Success Response (200) - **id** (integer) - Identificador da categoria - **descricao** (string) - Nome da categoria - **filhas** (array) - Lista de categorias filhas #### Response Example { "id": 123456789, "descricao": "Camisetas", "filhas": [ { "id": 987654321, "descricao": "Camisetas Masculinas", "filhas": [] } ] } ``` -------------------------------- ### GET /produtos/{idProduto} Source: https://api-docs.erp.olist.com/api-reference/produtos/obter-produto Retrieves detailed information about a specific product by its unique identifier. ```APIDOC ## GET /produtos/{idProduto} ### Description Retrieves the full details of a product, including its category, brand, dimensions, and status, based on the provided product ID. ### Method GET ### Endpoint /produtos/{idProduto} ### Parameters #### Path Parameters - **idProduto** (integer) - Required - The unique identifier of the product. ### Request Example GET https://api.tiny.com.br/public-api/v3/produtos/12345 ### Response #### Success Response (200) - **descricaoComplementar** (string) - Additional product description. - **tipo** (string) - Product type (K, S, V, F, M). - **situacao** (string) - Product status (A, I, E). - **ncm** (string) - NCM code. - **gtin** (string) - GTIN/EAN code. #### Response Example { "id": 12345, "descricao": "Produto Exemplo", "situacao": "A", "tipo": "S" } ``` -------------------------------- ### GET /produtos - Listar produtos Source: https://api-docs.erp.olist.com/api-reference/produtos/listar-produtos Retrieves a list of products with various filtering and pagination options. ```APIDOC ## GET /produtos ### Description Retrieves a list of products with various filtering and pagination options. ### Method GET ### Endpoint /produtos ### Parameters #### Query Parameters - **nome** (string) - Optional - Pesquisa por nome parcial ou completo do produto - **codigo** (string) - Optional - Pesquisa pelo código do produto - **gtin** (integer) - Optional - Pesquisa através do código GTIN do produto - **situacao** (string) - Optional - Pesquisa com base na situação informada (A - Ativo, I - Inativo, E - Excluido) - **dataCriacao** (string) - Optional - Pesquisa através da data de criação do produto (e.g., '2023-01-01 10:00:00') - **dataAlteracao** (string) - Optional - Pesquisa através da data de última alteração do produto (e.g., '2023-01-01 10:00:00') - **idListaPreco** (integer) - Optional - Filtra produtos que estão cadastrados na lista de preços informada. Quando informado, retorna apenas produtos que possuem preço definido nesta lista. - **limit** (integer) - Optional - Limite da paginação (default: 100) - **offset** (integer) - Optional - Offset da paginação (default: 0) ### Request Example ```json { "example": "GET /produtos?nome=Exemplo&situacao=A&limit=10" } ``` ### Response #### Success Response (200) - **itens** (array) - List of products matching the criteria. - **paginacao** (object) - Pagination details. #### Response Example ```json { "itens": [ { "id": 123, "sku": "SKU123", "descricao": "Nome do Produto Exemplo", "tipo": "S", "situacao": "A" } ], "paginacao": { "totalRegistros": 100, "limit": 10, "offset": 0 } } ``` #### Error Responses - **400**: Bad Request - **401**: Unauthorized - **403**: Forbidden - **404**: Not Found - **500**: Internal Server Error - **503**: Service Unavailable ``` -------------------------------- ### Listar árvore de categorias via OpenAPI Source: https://api-docs.erp.olist.com/api-reference/categorias/listar-%C3%A1rvore-de-categorias Definição do endpoint GET /categorias/todas utilizando a especificação OpenAPI 3.0.0. Este esquema descreve a estrutura de resposta esperada, incluindo o modelo de dados para categorias e o tratamento de erros. ```yaml paths: /categorias/todas: get: tags: - Categorias summary: Listar árvore de categorias operationId: ListarArvoreCategoriasAction responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ListarArvoreCategoriasModelResponse' security: - bearerAuth: [] ``` -------------------------------- ### Installment Model Source: https://api-docs.erp.olist.com/api-reference/ordem-de-servi%C3%A7o/criar-ordem-de-servi%C3%A7o Defines the structure for payment installments. ```APIDOC ## Installment Model ### Description Represents a single installment record for a payment plan. ### Parameters #### Request Body - **dias** (integer) - Optional - Number of days until the installment is due. - **data** (string) - Optional - The specific due date in YYYY-MM-DD format. - **valor** (number) - Optional - The monetary value of the installment. - **observacoes** (string) - Optional - Additional notes regarding the installment. ### Request Example { "dias": 30, "data": "2024-01-01", "valor": 150.50, "observacoes": "First installment" } ``` -------------------------------- ### Error Handling Example Source: https://api-docs.erp.olist.com/api-reference/pedidos/gerar-ordem-de-produ%C3%A7%C3%A3o-do-pedido An example of an error response from the API. ```APIDOC ## Error Handling ### Example Error Response ```json { "example": "O campo código é obrigatório" } ``` ``` -------------------------------- ### GET /info - Get Company Account Information Source: https://api-docs.erp.olist.com/api-reference/dados-da-empresa/obter-informa%C3%A7%C3%B5es-da-conta-da-empresa Retrieves detailed information about the company's account, including legal and trading names, tax identification numbers, contact details, and address. ```APIDOC ## GET /info ### Description Retrieves detailed information about the company's account, including legal and trading names, tax identification numbers, contact details, and address. ### Method GET ### Endpoint /info ### Parameters #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **razaoSocial** (string) - The legal name of the company. - **cpfCnpj** (string) - The company's tax identification number (CPF/CNPJ). - **fantasia** (string) - The company's trade name. - **enderecoEmpresa** (object) - The company's address details. - **endereco** (string) - Street name. - **numero** (string) - Street number. - **complemento** (string) - Apartment or suite number. - **bairro** (string) - Neighborhood. - **municipio** (string) - City. - **cep** (string) - Postal code. - **uf** (string) - State or province. - **pais** (string) - Country. - **fone** (string) - Company phone number. - **email** (string) - Company email address. - **inscricaoEstadual** (string) - State registration number. - **regimeTributario** (integer) - Tax regime of the company. Possible values: 1 (Simples Nacional), 2 (Simples Nacional Excesso Receita), 3 (Regime Normal), 4 (Mei). #### Response Example ```json { "razaoSocial": "EXEMPLO LTDA", "cpfCnpj": "12.345.678/0001-90", "fantasia": "EXEMPLO ERP", "enderecoEmpresa": { "endereco": "Rua Exemplo", "numero": "123", "complemento": "Sala 10", "bairro": "Centro", "municipio": "São Paulo", "cep": "01000-000", "uf": "SP", "pais": "Brasil" }, "fone": "(11) 99999-9999", "email": "contato@exemplo.com.br", "inscricaoEstadual": "123.456.789.012", "regimeTributario": 1 } ``` #### Error Response (400, 401, 403, 404, 500, 503) - **mensagem** (string) - General error message. - **detalhes** (array) - Specific error details. - **campo** (string) - The field that caused the error. - **mensagem** (string) - Specific error message for the field. #### Error Response Example ```json { "mensagem": "Ocorreram erros de validação", "detalhes": [ { "campo": "codigo", "mensagem": "O campo código é obrigatório" } ] } ``` ``` -------------------------------- ### POST /categorias Source: https://api-docs.erp.olist.com/api-reference/categorias/criar-categoria-de-produto Cria uma nova categoria de produto no sistema. Permite definir uma descrição, categoria pai e subcategorias filhas. ```APIDOC ## POST /categorias ### Description Cria uma nova categoria de produto no sistema. Opcionalmente, pode-se definir uma categoria pai e uma lista de categorias filhas para criar uma estrutura hierárquica. ### Method POST ### Endpoint /categorias ### Parameters #### Request Body - **descricao** (string) - Required - Descrição da categoria. - **idCategoriaPai** (integer) - Optional - Identificador da categoria pai. - **filhas** (array) - Optional - Lista de categorias filhas (objetos com descrição e sub-filhas). ### Request Example { "descricao": "Camisetas", "idCategoriaPai": 123, "filhas": [ { "descricao": "Camisetas Masculinas", "filhas": [] } ] } ### Response #### Success Response (200) - **id** (integer) - Identificador da categoria criada. #### Response Example { "id": 123456 } ``` -------------------------------- ### POST /listas-precos - Create Price List Source: https://api-docs.erp.olist.com/api-reference/lista-de-pre%C3%A7os/criar-lista-de-pre%C3%A7os Creates a new price list in the Olist ERP system. You can define a description, an overall discount or markup percentage, and specific item prices that override the general rule. ```APIDOC ## POST /listas-precos ### Description Creates a new price list with an optional description, markup/discount percentage, and specific item prices. ### Method POST ### Endpoint /listas-precos ### Parameters #### Request Body - **descricao** (string) - Optional - Description of the price list. - **acrescimoDesconto** (number) - Optional - Percentage for markup (positive) or discount (negative). - **itens** (array) - Optional - List of specific item pricing rules. - **idProduto** (integer) - Optional - Product identifier. - **preco** (number) - Optional - Price for the product in this list. - **precoPromocional** (number) - Optional - Promotional price for the product. ### Request Example ```json { "descricao": "Promoção de Verão", "acrescimoDesconto": -5.0, "itens": [ { "idProduto": 12345, "preco": 99.90, "precoPromocional": 89.90 } ] } ``` ### Response #### Success Response (200) - **id** (integer) - Identifier of the created price list. #### Response Example ```json { "id": 101 } ``` ``` -------------------------------- ### OpenAPI Specification for Get Invoice by ID Source: https://api-docs.erp.olist.com/api-reference/notas/obter-nota-fiscal This OpenAPI definition outlines the GET request for retrieving an invoice. It specifies the 'idNota' path parameter and the expected JSON response structure including tax and financial details. ```yaml paths: /notas/{idNota}: get: tags: - Notas summary: Obter nota fiscal operationId: ObterNotaFiscalAction parameters: - name: idNota in: path description: Identificador da nota fiscal required: true schema: type: integer responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ObterNotaFiscalModelResponse' security: - bearerAuth: [] ``` -------------------------------- ### Payment Models Source: https://api-docs.erp.olist.com/api-reference/ordem-de-servi%C3%A7o/criar-ordem-de-servi%C3%A7o Definitions for payment methods, categories, and installment structures. ```APIDOC ## POST /ordem-servico/pagamento ### Description Defines the payment structure for a service order. ### Method POST ### Request Body - **formaRecebimento** (object) - Required - Payment receipt method - **meioPagamento** (object) - Required - Payment medium - **parcelas** (array) - Optional - List of installments - **categoria** (object) - Required - Payment category ``` -------------------------------- ### NotaFiscalParcelaModelResponse Source: https://api-docs.erp.olist.com/api-reference/notas/obter-nota-fiscal Model representing a payment installment within a fiscal note. ```APIDOC ## NotaFiscalParcelaModelResponse ### Description Details of a payment installment associated with a fiscal note. ### Properties - **dias** (integer) - The number of days until the installment is due. - **data** (string) - The due date of the installment (format: YYYY-MM-DD). - **valor** (number) - The value of the installment. - **observacoes** (string) - Any observations related to the installment. - **idFormaPagamento** (string) - The identifier for the payment method. - **idMeioPagamento** (string) - The identifier for the payment means. ``` -------------------------------- ### PUT /produtos/{idProduto}/kit Source: https://api-docs.erp.olist.com/api-reference/produtos/atualizar-kit-do-produto Updates the kit configuration for a specific product by providing a list of items and their quantities. ```APIDOC ## PUT /produtos/{idProduto}/kit ### Description Updates the kit composition for a given product. This endpoint replaces the existing kit structure with the provided list of items. ### Method PUT ### Endpoint /produtos/{idProduto}/kit ### Parameters #### Path Parameters - **idProduto** (integer) - Required - The unique identifier of the product kit to be updated. #### Request Body - **items** (array) - Required - A list of objects containing the product details and quantity. - **produto** (object) - Required - The product object. - **id** (integer) - Required - The ID of the component product. - **tipo** (string) - Optional - The type of the product (P for Product, S for Service). - **quantidade** (float) - Required - The quantity of the component product in the kit. ### Request Example [ { "produto": { "id": 12345, "tipo": "P" }, "quantidade": 2.0 } ] ### Response #### Success Response (204) - No content returned upon successful update. #### Error Response (400) - **mensagem** (string) - General error message. - **detalhes** (array) - Specific field validation errors. ``` -------------------------------- ### GET /pedidos Source: https://api-docs.erp.olist.com/api-reference/pedidos/listar-pedidos Retrieves a list of orders with various filtering options. ```APIDOC ## GET /pedidos ### Description Retrieves a list of orders with various filtering options. ### Method GET ### Endpoint /pedidos ### Parameters #### Query Parameters - **numero** (integer) - Optional - Pesquisa por número do pedido - **nomeCliente** (string) - Optional - Pesquisa por nome do cliente - **codigoCliente** (string) - Optional - Pesquisa por código do cliente - **cpfCnpj** (string) - Optional - Pesquisa por CPF/CNPJ do cliente - **dataInicial** (string) - Optional - Pesquisa através da data de criação do pedido - **dataFinal** (string) - Optional - Pesquisa através da data de criação do pedido - **dataAtualizacao** (string) - Optional - Pesquisa através da data de atualização do pedido - **situacao** (enum) - Optional - Pesquisa com base na situação informada. Possible values: 8 (Dados Incompletos), 0 (Aberta), 3 (Aprovada), 4 (Preparando Envio), 1 (Faturada), 7 (Pronto Envio), 5 (Enviada), 6 (Entregue), 2 (Cancelada), 9 (Nao Entregue) - **numeroPedidoEcommerce** (string) - Optional - Pesquisa por número do pedido no e-commerce - **idVendedor** (integer) - Optional - Pesquisa por id do vendedor - **marcadores** (array) - Optional - Pesquisa por marcadores - **origem** (string) - Optional - Pesquisa por origem do pedido - **orderBy** (string) - Optional - Field to order the results by - **limit** (integer) - Optional - Maximum number of results to return - **offset** (integer) - Optional - Number of results to skip ### Response #### Success Response (200) - **itens** (array) - List of orders matching the criteria. - **paginacao** (object) - Pagination information. #### Error Response - **400** - Bad Request - **401** - Unauthorized - **403** - Forbidden - **404** - Not Found - **500** - Internal Server Error - **503** - Service Unavailable ``` -------------------------------- ### GET /orders Source: https://api-docs.erp.olist.com/api-reference/pedidos/listar-pedidos Retrieve a list of orders from the Olist ERP system. ```APIDOC ## GET /orders ### Description Retrieves a paginated list of orders associated with the authenticated account. ### Method GET ### Endpoint /orders ### Parameters #### Query Parameters - **page** (integer) - Optional - The page number to retrieve. - **limit** (integer) - Optional - The number of records per page. - **status** (string) - Optional - Filter orders by their current status. ### Request Example GET /orders?page=1&limit=20 ### Response #### Success Response (200) - **orders** (array) - A list of order objects. - **total** (integer) - Total number of orders found. #### Response Example { "orders": [ { "id": "ORD-12345", "status": "shipped", "total": 99.90 } ], "total": 1 } ``` -------------------------------- ### Product Data Models Source: https://api-docs.erp.olist.com/api-reference/produtos/listar-produtos Overview of product-related schemas including pricing and inventory details. ```APIDOC ## Product Data Models ### Description Defines the core components for product management, including pricing structures and inventory location tracking. ### Components - **PrecoProdutoResponseModel**: Contains pricing information (preco, precoPromocional, precoCusto, precoCustoMedio). - **EstoqueListagemResponseModel**: Contains inventory location details. ### Pricing Example { "preco": 100.0, "precoPromocional": 90.0, "precoCusto": 50.0, "precoCustoMedio": 55.0 } ``` -------------------------------- ### Get Expedition Labels OpenAPI Spec Source: https://api-docs.erp.olist.com/api-reference/expedi%C3%A7%C3%A3o/obter-etiquetas-de-uma-expedi%C3%A7%C3%A3o-dentro-de-um-agrupamento OpenAPI 3.0 specification for the GET /expedicao/{idAgrupamento}/expedicao/{idExpedicao}/etiquetas endpoint. This spec defines how to request expedition labels using grouping and expedition IDs, including request parameters, response schemas for success and errors, and security requirements. ```yaml openapi: 3.0.0 info: title: Olist ERP API v3 description: >- Documentação completa: https://api-docs.erp.olist.com version: '3.1' servers: - url: https://api.tiny.com.br/public-api/v3 security: [] paths: /expedicao/{idAgrupamento}/expedicao/{idExpedicao}/etiquetas: get: tags: - Expedição summary: Obter etiquetas de uma expedição dentro de um agrupamento operationId: ObterEtiquetasExpedicaoAgrupamentoAction parameters: - $ref: >- #/components/parameters/get_expedicao_idAgrupamento_expedicao_idExpedicao_etiquetas_idAgrupamento - $ref: >- #/components/parameters/get_expedicao_idAgrupamento_expedicao_idExpedicao_etiquetas_idExpedicao responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ObterEtiquetasResponseModel' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' '401': description: Unauthorized '403': description: Forbidden '404': description: Not Found '500': description: Internal Server Error '503': description: Service Unavailable security: - bearerAuth: [] components: parameters: get_expedicao_idAgrupamento_expedicao_idExpedicao_etiquetas_idAgrupamento: name: idAgrupamento in: path description: Identificador do agrupamento required: true schema: type: integer get_expedicao_idAgrupamento_expedicao_idExpedicao_etiquetas_idExpedicao: name: idExpedicao in: path description: Identificador da expedição required: true schema: type: integer schemas: ObterEtiquetasResponseModel: title: ' ' description: ' ' properties: urls: type: array items: type: string type: object ErrorDTO: title: ' ' description: ' ' properties: mensagem: description: Mensagem de erro geral type: string example: Ocorreram erros de validação detalhes: description: Detalhes específicos do erro type: array items: $ref: '#/components/schemas/ErrorDetailDTO' example: - campo:codigo mensagem: O campo código é obrigatório nullable: true type: object ErrorDetailDTO: title: ' ' description: ' ' properties: campo: description: Campo que gerou o erro type: string example: codigo mensagem: description: Mensagem de erro específica do campo type: string example: O campo código é obrigatório type: object securitySchemes: bearerAuth: type: http scheme: Bearer ``` -------------------------------- ### PUT /produtos/{idProduto}/fabricado Source: https://api-docs.erp.olist.com/api-reference/produtos/atualizar-produto-fabricado Atualiza a estrutura de um produto fabricado, definindo seus componentes e etapas de produção. ```APIDOC ## PUT /produtos/{idProduto}/fabricado ### Description Atualiza a estrutura de produção de um produto existente, permitindo definir os componentes (produtos) e as etapas necessárias para a fabricação. ### Method PUT ### Endpoint /produtos/{idProduto}/fabricado ### Parameters #### Path Parameters - **idProduto** (integer) - Required - Identificador único do produto a ser atualizado. #### Request Body - **produtos** (array) - Optional - Lista de produtos que compõem a estrutura de produção. - **etapas** (array) - Optional - Lista de etapas de produção. ### Request Example { "produtos": [ { "produto": { "id": 123, "tipo": "P" }, "quantidade": 1.0 } ], "etapas": ["Montagem", "Acabamento"] } ### Response #### Success Response (204) - No Content #### Error Response (400) - **mensagem** (string) - Mensagem de erro geral. - **detalhes** (array) - Lista de erros específicos por campo. ``` -------------------------------- ### Purchase Order Models Source: https://api-docs.erp.olist.com/api-reference/ordem-de-compra/criar-ordem-de-compra Definitions for purchase order items and payment installments. ```APIDOC ## Purchase Order Models ### Description These models define the structure for items within a purchase order and the associated payment installments. ### Request Body (OrdemCompraItemModelRequest) - **produto** (object) - Required - Reference to ProdutoRequestModel - **quantidade** (float) - Optional - Quantity of the item - **valor** (float) - Optional - Unit value of the item - **informacoesAdicionais** (string) - Optional - Additional notes - **aliquotaIPI** (float) - Optional - IPI tax rate - **valorICMS** (float) - Optional - ICMS tax value ### Request Body (OrdemCompraParcelaModelRequest) - **dias** (integer) - Required - Days for payment term - **dataVencimento** (string) - Required - Due date (YYYY-MM-DD) - **valor** (float) - Required - Installment value - **meioPagamento** (string) - Optional - Payment method code (e.g., 17 for Pix, 15 for Boleto) ### Response #### Error Response (ErrorDetailDTO) - **campo** (string) - Field that caused the error - **mensagem** (string) - Specific error message ``` -------------------------------- ### Create Price List (OpenAPI Specification) Source: https://api-docs.erp.olist.com/api-reference/lista-de-pre%C3%A7os/criar-lista-de-pre%C3%A7os This OpenAPI 3.0 specification defines the endpoint for creating a price list. It includes the request body schema for specifying price list details like description, discounts, and item-specific pricing, as well as response schemas for success and error scenarios. The endpoint requires Bearer authentication. ```yaml openapi: 3.0.0 info: title: Olist ERP API v3 description: >- Documentação completa: https://api-docs.erp.olist.com version: '3.1' servers: - url: https://api.tiny.com.br/public-api/v3 security: [] paths: /listas-precos: post: tags: - Lista de Preços summary: Criar lista de preços operationId: CriarListaDePrecosAction requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CriarListaPrecoRequestModel' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/CriarListaPrecoResponseModel' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ErrorDTO' '401': description: Unauthorized '403': description: Forbidden '404': description: Not Found '500': description: Internal Server Error '503': description: Service Unavailable security: - bearerAuth: [] components: schemas: CriarListaPrecoRequestModel: title: ' ' description: ' ' allOf: - $ref: '#/components/schemas/CriarAtualizarListaPrecoRequestModel' - required: - descricao properties: {} type: object CriarListaPrecoResponseModel: title: ' ' description: ' ' type: object allOf: - properties: id: description: Identificador da lista de preços criada type: integer type: object ErrorDTO: title: ' ' description: ' ' properties: mensagem: description: Mensagem de erro geral type: string example: Ocorreram erros de validação detalhes: description: Detalhes específicos do erro type: array items: $ref: '#/components/schemas/ErrorDetailDTO' example: - campo:codigo mensagem: O campo código é obrigatório nullable: true type: object CriarAtualizarListaPrecoRequestModel: title: ' ' description: ' ' type: object allOf: - properties: descricao: description: Descrição da lista de preços type: string nullable: true acrescimoDesconto: description: >- Percentual de acréscimo ou desconto (valores positivos para acréscimo, negativos para desconto) type: number format: float nullable: true itens: description: Lista de produtos com preços específicos (exceções) type: array items: $ref: '#/components/schemas/ItemListaPrecoRequestModel' type: object ErrorDetailDTO: title: ' ' description: ' ' properties: campo: description: Campo que gerou o erro type: string example: codigo mensagem: description: Mensagem de erro específica do campo type: string example: O campo código é obrigatório type: object ItemListaPrecoRequestModel: title: ' ' description: ' ' type: object allOf: - properties: idProduto: description: Identificador do produto type: integer nullable: true preco: description: Preço do produto na lista type: number format: float nullable: true precoPromocional: description: Preço promocional do produto na lista type: number format: float nullable: true type: object securitySchemes: bearerAuth: type: http scheme: Bearer ``` -------------------------------- ### GET /separacao/{idSeparacao} Source: https://api-docs.erp.olist.com/api-reference/separa%C3%A7%C3%A3o/obter-separa%C3%A7%C3%A3o Retrieves the details of a specific separation record by its ID. ```APIDOC ## GET /separacao/{idSeparacao} ### Description Retrieves detailed information about a specific separation process using its unique identifier. ### Method GET ### Endpoint /separacao/{idSeparacao} ### Parameters #### Path Parameters - **idSeparacao** (integer) - Required - The unique identifier of the separation record. ### Request Example GET /separacao/12345 ### Response #### Success Response (200) - **id** (integer) - Separation ID - **situacao** (integer) - Status of separation (1: Aguardando, 2: Separada, 3: Embalada, 4: Em separação) - **cliente** (object) - Customer details - **itens** (array) - List of items in the separation #### Response Example { "id": 12345, "situacao": 2, "dataCriacao": "2023-10-27T10:00:00Z" } ``` -------------------------------- ### POST /produtos Source: https://api-docs.erp.olist.com/api-reference/produtos/criar-produto Creates a new product in the Olist ERP system. Supports different product types such as simple, kits, and products with variations. ```APIDOC ## POST /produtos ### Description Creates a new product record. Depending on the 'tipo' field, additional data such as variations, kit components, or production details may be required. ### Method POST ### Endpoint /produtos ### Parameters #### Request Body - **sku** (string) - Required - Unique identifier for the product. - **descricao** (string) - Required - Product name or description. - **tipo** (string) - Required - Product type: K (Kit), S (Simples), V (Com Variacoes), F (Fabricado), M (Materia Prima). - **estoque** (object) - Optional - Stock information. - **variacoes** (array) - Optional - List of product variations (required if tipo = 'V'). - **kit** (array) - Optional - List of kit components (required if tipo = 'K'). ### Request Example { "sku": "PROD-001", "descricao": "Camiseta Algodão", "tipo": "S" } ### Response #### Success Response (200) - **id** (string) - The unique ID of the created product. - **sku** (string) - The SKU of the created product. #### Response Example { "id": "12345", "sku": "PROD-001" } ``` -------------------------------- ### Retrieve Kit Product via OpenAPI Source: https://api-docs.erp.olist.com/api-reference/produtos/obter-produto-kit This OpenAPI specification defines the GET request for the /produtos/{idProduto}/kit endpoint. It details the response models for successful retrieval and potential error scenarios including authentication requirements. ```yaml paths: /produtos/{idProduto}/kit: get: tags: - Produtos summary: Obter produto kit operationId: ObterProdutoKitAction responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/ProdutoKitResponseModel' security: - bearerAuth: [] ``` -------------------------------- ### GET /formas-envio/{idFormaEnvio} Source: https://api-docs.erp.olist.com/api-reference/logistica/obter-forma-de-envio Retrieves details of a specific shipping method by its ID. ```APIDOC ## GET /formas-envio/{idFormaEnvio} ### Description Retrieves details of a specific shipping method using its unique identifier. ### Method GET ### Endpoint /formas-envio/{idFormaEnvio} ### Parameters #### Path Parameters - **idFormaEnvio** (integer) - Required - The unique identifier of the shipping method. ### Request Example (No request body for GET requests) ### Response #### Success Response (200) - **id** (integer) - The unique identifier of the shipping method. - **gatewayLogistico** (object) - Information about the logistics gateway. - **formasFrete** (array) - List of associated shipping forms, can be null. - **nome** (string) - The name of the shipping method, can be null. - **tipo** (string) - The type of shipping method (e.g., 0 - Sem Frete, 1 - Correios, 2 - Transportadora). #### Response Example ```json { "id": 123, "gatewayLogistico": { ... }, "formasFrete": [ ... ], "nome": "Correios", "tipo": "1" } ``` #### Error Response (400, 401, 403, 404, 500, 503) - **mensagem** (string) - General error message. - **detalhes** (array) - Specific error details, can be null. #### Error Response Example ```json { "mensagem": "Bad Request", "detalhes": [ { "campo": "idFormaEnvio", "mensagem": "Invalid ID format" } ] } ``` ``` -------------------------------- ### POST /produtos Source: https://api-docs.erp.olist.com/api-reference/produtos/criar-produto Endpoint for creating a new product in the ERP system, supporting complex structures like variations, SEO, and production details. ```APIDOC ## POST /produtos ### Description Creates a new product record in the system. This endpoint accepts nested objects for prices, dimensions, taxation, SEO, and supplier information. ### Method POST ### Endpoint /produtos ### Request Body - **ncm** (string) - Optional - NCM code of the product - **gtin** (string) - Optional - Global Trade Item Number - **marca** (object) - Optional - Brand information - **categoria** (object) - Optional - Category information - **precos** (object) - Optional - Pricing details - **dimensoes** (object) - Optional - Physical dimensions - **seo** (object) - Optional - SEO metadata (titulo, descricao, keywords, slug) ### Request Example { "ncm": "12345678", "gtin": "07891234567890", "marca": { "id": 1 }, "seo": { "titulo": "Product Title", "slug": "product-title" } } ### Response #### Success Response (200) - **id** (integer) - The generated product ID - **codigo** (string) - The product code - **descricao** (string) - Product description #### Response Example { "id": 101, "codigo": "PROD-001", "descricao": "Sample Product" } ``` -------------------------------- ### GET /expedicao/{idAgrupamento}/etiquetas Source: https://api-docs.erp.olist.com/api-reference/expedi%C3%A7%C3%A3o/obter-etiquetas-de-um-agrupamento-de-expedi%C3%A7%C3%A3o Recupera uma lista de URLs de etiquetas para um determinado agrupamento de expedição. ```APIDOC ## GET /expedicao/{idAgrupamento}/etiquetas ### Description Este endpoint retorna as URLs das etiquetas geradas para um agrupamento de expedição específico identificado pelo seu ID. ### Method GET ### Endpoint /expedicao/{idAgrupamento}/etiquetas ### Parameters #### Path Parameters - **idAgrupamento** (integer) - Required - Identificador único do agrupamento de expedição. ### Request Example GET /expedicao/12345/etiquetas ### Response #### Success Response (200) - **urls** (array of strings) - Lista contendo as URLs das etiquetas. #### Response Example { "urls": [ "https://api.tiny.com.br/etiquetas/12345_1.pdf", "https://api.tiny.com.br/etiquetas/12345_2.pdf" ] } ``` -------------------------------- ### Supporting Models Source: https://api-docs.erp.olist.com/api-reference/ordem-de-servi%C3%A7o/atualizar-ordem-de-servi%C3%A7o Supporting models for categories, parts, payment installments, and payment methods. ```APIDOC ## CategoriaRequestModel ### Description Model representing a category. ### Method N/A (Model Definition) ### Endpoint N/A (Model Definition) ### Parameters #### Request Body - **id** (integer) - Optional - The ID of the category. ### Request Example ```json { "id": 10 } ``` ## PecaOrdemServicoRequestModel ### Description Model representing a part used in an Order Service. ### Method N/A (Model Definition) ### Endpoint N/A (Model Definition) ### Parameters #### Request Body - **produto** (ProdutoRequestModel) - Required - Details of the product. - **quantidade** (number) - Optional - The quantity of the part. - **valorUnitario** (number) - Optional - The unit price of the part. - **unidade** (string) - Optional - The unit of measure for the part. - **porcentagemDesconto** (number) - Optional - The percentage discount applied to the part. ### Request Example ```json { "produto": {"id": 101}, "quantidade": 2, "valorUnitario": 25.00, "unidade": "kg", "porcentagemDesconto": 5 } ``` ## ParcelaModelRequest ### Description Model representing a payment installment request. ### Method N/A (Model Definition) ### Endpoint N/A (Model Definition) ### Parameters #### Request Body - **formaRecebimento** (FormaRecebimentoRequestModel) - Required - The payment method for the installment. ### Request Example ```json { "dataVencimento": "2023-12-31", "valor": 100.00, "formaRecebimento": {"id": 1} } ``` ## FormaRecebimentoRequestModel ### Description Model representing a payment reception method. ### Method N/A (Model Definition) ### Endpoint N/A (Model Definition) ### Parameters #### Request Body - **id** (integer) - Optional - The ID of the payment reception method. ### Request Example ```json { "id": 1 } ``` ## MeioPagamentoRequestModel ### Description Model representing a payment channel. ### Method N/A (Model Definition) ### Endpoint N/A (Model Definition) ### Parameters #### Request Body - **id** (integer) - Optional - The ID of the payment channel. ### Request Example ```json { "id": 2 } ``` ``` -------------------------------- ### Arquivar ou desarquivar assunto via OpenAPI Source: https://api-docs.erp.olist.com/api-reference/crm/arquivar-ou-desarquivar-assunto Definição do endpoint OpenAPI para a operação de arquivamento de assuntos. Requer autenticação Bearer e um corpo de requisição contendo o booleano 'arquivado'. ```yaml paths: /crm/assuntos/{idAssunto}/arquivar: put: tags: - CRM summary: Arquivar ou desarquivar assunto operationId: ArquivarCrmAssuntoAction parameters: - name: idAssunto in: path required: true schema: type: integer requestBody: required: true content: application/json: schema: type: object properties: arquivado: type: boolean responses: '204': description: No Content ```