DriveB

27. Peças e Preços

Este módulo permite consultar peças, seus preços, sinônimos e demais informações relacionadas.


Obter uma peça por ID

Retorna os dados de uma peça específica.

Endpoint: /api/parts/{id}

Método: GET

Parâmetros:

  • id (path, obrigatório) — Identificador da peça.

Response body:

{
"id": 0,
"displayName": "string",
"interFieldValues": [
{
"interFieldNameId": 0,
"translatableEntityId": 0,
"interFieldName": {
"id": null,
"featureName": null,
"fieldName": null,
"localeId": null,
"locale": null
},
"value": "string"
}
],
"partCode": "string",
"manufacturerId": 0,
"categoryId": 0,
"partManufacturer": "string",
"category": {
"id": 0,
"displayName": "string",
"interFieldValues": [
{
"interFieldNameId": null,
"translatableEntityId": null,
"interFieldName": null,
"value": null
}
]
},
"measurementUnit": "string",
"pnErpCode": "string",
"ncmErpCode": "string",
"materialOrigin": "string",
"itaCode": "string"
}

Consultar preços da peça por oficina

Retorna o preço de uma peça para uma oficina específica.

Endpoint: /api/parts/{partId}/car-workshops/{carWorkshopId}/prices

Método: GET

Parâmetros:

  • partId (path, obrigatório) — Identificador da peça.
  • carWorkshopId (path, obrigatório) — Identificador da oficina.
  • serviceRequestId (query, obrigatório) — Identificador da solicitação de serviço.

Response body:

{
"regionVariableId": 0,
"regionId": 0,
"clientPrice": 0,
"carworkshopPrice": 0,
"intermediationFee": 0,
"admFee": 0,
"driveBMargin": 0,
"codeCurrency": "string",
"currencyId": 0,
"tag": "string",
"isDefault": true,
"tire": true
}

Consultar sinônimos de uma peça

Retorna os sinônimos cadastrados para uma peça.

Endpoint: /api/parts/{id}/synonyms

Método: GET

Parâmetros:

  • id (path, obrigatório) — Identificador da peça.

Response body:

[
{
"id": 0,
"translatableEntityId": 0,
"value": "string"
}
]

Consultar preço padrão da peça

Retorna o preço padrão da peça para a moeda informada.

Endpoint: /api/parts/{id}/default-price

Método: GET

Parâmetros:

  • id (path, obrigatório) — Identificador da peça.
  • currencyCode (query, obrigatório) — Código da moeda.

Response body:

{
"regionVariableId": 0,
"regionId": 0,
"clientPrice": 0,
"carworkshopPrice": 0,
"intermediationFee": 0,
"admFee": 0,
"driveBMargin": 0,
"codeCurrency": "string",
"currencyId": 0,
"tag": "string",
"isDefault": true,
"tire": true
}

Pesquisar peças

Pesquise peças pelo fabricante, nome ou código da peça.

Endpoint: /api/parts/search

Método: GET

Parâmetros:

  • partSearchFilterDTO (query, obrigatório) — Filtros utilizados na pesquisa.

Response body:

[
{
"partId": 0,
"partCode": "string",
"partName": "string",
"searchName": "string",
"partManufacturerId": 0,
"partManufacturerName": "string",
"measurementUnit": "string",
"pnErpCode": "string",
"tire": true
}
]

Listar campos internacionais

Retorna todos os campos internacionais cadastrados para peças.

Endpoint: /api/parts/inter-field-names

Método: GET

Parâmetros:

  • Este endpoint não recebe parâmetros.

Response body:

[
{
"id": 0,
"featureName": "string",
"fieldName": "string",
"localeId": 0,
"locale": {
"id": 0,
"code": "string",
"description": "string",
"displayName": "string"
}
}
]

Pesquisar peças com filtros

Pesquise peças utilizando os filtros informados.

Endpoint: /api/parts/filters

Método: GET

Parâmetros:

  • partFilterDTO (query, obrigatório) — Filtros utilizados na pesquisa.
  • page (query, obrigatório) — Informações de paginação.

Response body:

{
"totalElements": 0,
"totalPages": 0,
"size": 0,
"content": [
{
"id": 0,
"displayName": "string",
"interFieldValues": [],
"partCode": "string",
"manufacturerId": 0,
"categoryId": 0,
"partManufacturer": "string",
"category": {
"id": null,
"displayName": null,
"interFieldValues": null
},
"measurementUnit": "string",
"pnErpCode": "string",
"ncmErpCode": "string",
"materialOrigin": "string",
"itaCode": "string"
}
],
"number": 0,
"sort": {
"empty": true,
"sorted": true,
"unsorted": true
},
"pageable": {
"offset": 0,
"sort": {
"empty": true,
"sorted": true,
"unsorted": true
},
"pageNumber": 0,
"unpaged": true,
"paged": true,
"pageSize": 0
},
"numberOfElements": 0,
"first": true,
"last": true,
"empty": true
}