API de especificaciones de la unidad
Comenzando
El API de Especificaciones de la Unidad proporciona información técnica para una unidad específica basada en su Número de Identificación del Vehículo (VIN).
En el contexto del concesionario, el API de Especificaciones de la Unidad permite al concesionario acceder a información técnica clave directamente en su DMS.
El concesionario puede solicitar información sobre cualquier unidad BRP utilizando el VIN de la unidad, incluso si la unidad no está en el inventario del concesionario.
¿Dónde comenzar? ¡Léeme primero!
Antes de comenzar a trabajar en este API, debe leer las siguientes secciones si aún no las ha revisado:
Información técnica
Características
Tipo de API | Tipo DSP | Versión DCP | Complejidad |
|---|---|---|---|
Obtener datos de BRP | DMS | V3 - Internacional | Bajo |
Enviar datos a BRP | CRM | V4 - Norteamérica | Un poco más |
Transacción con BRP | | | Algo más |
Autenticación
La API está usando Autenticación de Aplicaciones.
Necesitas un token de acceso válido antes de llamar a esta API, o tienes que llamar a la API de Autenticación de Aplicaciones para obtener uno.
¡El token de acceso es válido por 30 minutos! (1799 segundos)
URL Base
Prueba | https://qa-cloud-api.brp.com/dcp/<v3 o v4> |
|---|---|
Producción | https://cloud-api.brp.com/dcp/<v3 o v4> |
Recurso: Especificaciones de Unidad
El Especificaciones de la Unidad recurso contiene la información técnica de una unidad específica.
Representación JSON
{
"serial_no": "2BPSAAKX2KV000006",
"model_year": 2019,
"model_number": "000AAKX00",
"model_name": "SM EXPEDITION LE 900 ACE-E SY/B/B 1",
"model_code": "",
"brands": [
"SKIDOO"
],
"product_line": "SNO",
"product_type": "10",
"manufacturer_name": "Bombardier Recreational Products Inc.",
"color_code_description": "",
"max_no_of_passengers": null,
"engine_code": "900_ACE",
"engine_code_description": "900 ACE",
"engine_displacement": 899,
"engine_power": null,
"no_of_cylinders": 3,
"gross_weight_vehicle_rating": null,
"net_weight": 253.107,
"weight_unit": "KG",
"inventory_type": "Stock",
"status": [
"At_customer_site"
],
"last_change_date": "2022-11-10T20:34:15Z"
}Propiedades
Todos los campos numéricos con decimales usan el punto(.) como separador decimal. La coma (,) NO es compatible como separador decimal.
Property | Type | Definition | Notes |
|---|---|---|---|
serial_no | string | Serial number of the unit | Max Length:50 |
model_number | string | Model number | Max Length:50 |
model_name † | string | Model name/description | Max Length:255 |
model_year | number | Model year of the unit | Integer yyyy |
model_code | string | Model code | Max Length:50 |
brands | List of strings | Code that uniquely identifies the product brand. See the Brands table below. |
|
product_line | string | Code that uniquely identifies the product line. See the Product Lines table below. | Max Length: 3 |
product_type | string | Code that uniquely identifies product type. See the Product Types table below. | Max Length: 5 |
manufacturer_name | string | Name of the manufacturer | Max Length:255 |
color_code_description | string | The colour description | Max Length:50 |
max_no_of_passengers | number | Maximum number of passengers defined by the manufacturer |
|
engine_code | string | Engine code | Max Length:50 |
engine_code_description | string | Engine code description | Max Length:255 |
no_of_cylinders | number | Number of cylinders in the engine |
|
engine_displacement | number | The volume displaced by each piston, moving from bottom dead center to top dead center. This is for all pistons in total. This value is expressed in cubic centimetres. |
|
engine_power | number | Engine power in horsepower |
|
gross_weight_vehicle_rating | number | It represents the maximum operating weight/mass of a vehicle specified by the manufacturer. (kg) |
|
net_weight | number | Net weight of the product. | Precision: 0.001 |
weight_unit | string | Weight unit of measure. One of:
| Max Length: 3 |
inventory_type | string | One of:
| |
status | list of strings | List of status / events attached to the unit. Possible values are:
Empty array if the information is not available. | |
last_change_date | date-time | Last date and time at which the status has changed, in ISO 8601 UTC format. | Format: YYYY-MM-DDTHH:MM:SSZ
|
Las propiedades marcadas con una daga (†) se devuelven en el idioma solicitado.
Tenga en cuenta que la last_change_date puede ser null ya que existe la posibilidad de que no haya cambios en la propiedad status.
Marcas
Código | Valor |
|---|---|
SKIDOO | Ski-Doo |
SEADOO | Sea-Doo |
LYNX | Lynx |
CANAM | Can-Am |
Líneas de productos
Clave | Valor | Marca |
|---|---|---|
2WV | Vehículos de dos ruedas | Can-Am En Carretera |
3WV | Vehículos de tres ruedas | Can-Am En Carretera |
ATV | Vehículos todo terreno | Can-Am Fuera de Carretera |
OE | Motores fuera de borda | Sea-Doo |
PTN | Barcos pontón | Sea-Doo |
PWC | Motos acuáticas | Sea-Doo |
SNO | Motos de nieve | Ski-Doo |
SSV | Vehículos Side-by-Side | Can-Am Fuera de Carretera |
Tipos de producto
Clave | Valor |
|---|---|
10 | Vehículo |
20 | Motor |
30 | Piezas |
40 | Accesorios |
50 | Ropa |
60 | Licencias y Juego |
80 | Manuales |
90 | Remolque |
100 | Reconstruido |
110 | Aceites y Químicos |
NA | Cuando no hay coincidencia de lo anterior (Indefinido) |
Limitaciones y Restricciones
Formato de Número
Todos los campos numéricos con decimales usan el punto(.) como separador decimal. La coma (,) NO es compatible como separador decimal.
Referencia de API
curl --location 'https://cloud-api.brp.com/dcp/v4/unit/3JBLGAR15GJ000100/specifications?language=en-US' \
--header 'Dealer-Number: 0000700304' \
--header 'Authorization: Bearer 'REPLACE_ME' Tablas de referencia
Idiomas
Idioma en el código de idioma ISO (ISO-639-1 + ISO 3166-1)
Formato: xx-XX
xx: código de idioma en minúsculas
XX: código de país en mayúsculas
Valores de código de idioma admitidos
Código | Idioma |
|---|---|
de | Alemán |
en | Inglés |
es | Español |
fi | Finés |
fr | Francés |
it | Italiano |
nl | Neerlandés |
no | Noruego |
pt | Portugués (Brasil) |
sv | Sueco |
Cómo hacerlo
Esta sección proporciona información sobre cómo obtener resultados específicos con la API.
Obtener especificaciones de la unidad
Get la información técnica de una unidad en el entorno de producción.
curl --location 'https://cloud-api.brp.com/dcp/v4/unit/3JBLWPP10EJ000558/specifications?language=de-DE' \
--header 'Dealer-Number: 0000701404' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' Manejo de Errores
Esta sección presenta varios escenarios de llamadas incorrectas o inapropiadas que resultan en mensajes de error y resultados inadecuados.
400 Solicitud Incorrecta
El código de estado 400 generalmente se observa durante el desarrollo y la integración y no debería recibirse durante las operaciones normales. La respuesta devuelta contiene la información necesaria para corregir el problema.
Muchos problemas pueden causar un código de estado 400; los más comunes se enumeran en la tabla a continuación.
Respuesta | Resolución |
|---|---|
Falta el número VIN en la ruta. {
"status": "400",
"id": "rrt-074faba1d0796ac77-c-ea-24394-1768654-1",
"title": "solicitud_incorrecta",
"meta": {
"service": "00",
"detail": "Ruta no encontrada."
}
} | Asegúrese de que el VIN esté añadido a la ruta. |
Falta el número de concesionario en la cabecera. {
"status": "400",
"id": "rrt-07cdd77f98c381924-d-ea-22528-1563912-1",
"title": "solicitud_incorrecta",
"meta": {
"service": "01",
"detail": "fallo en la validación de la solicitud",
"payload": {
"details": [
{
"message": "El parámetro de cabecera 'Dealer-Number' es obligatorio en la ruta '/unit/{VIN}/specifications' pero no se encontró en la solicitud.: []"
}
]
}
}
} | Añada el parámetro de cabecera Dealer-Number con un número de concesionario válido. |
Se devuelve si el formato del idioma no es válido. {
"status": "400",
"id": "rrt-07cdd77f98c381924-d-ea-22528-1564213-1",
"title": "solicitud_incorrecta",
"meta": {
"service": "01",
"detail": "fallo en la validación de la solicitud",
"payload": {
"details": [
{
"message": "La expresión regular ECMA 262 \"^[a-z]{2}-[A-Z]{2}$\" no coincide con la cadena de entrada \"XX-AA\": []"
}
]
}
}
} | El formato válido del idioma es el siguiente Formato: xx-XX xx: código de idioma en minúsculas XX: código de país en mayúsculas Debe introducirse un formato de idioma válido para obtener una respuesta adecuada. |
Se devuelve si el parámetro no es válido {
"status": "400",
"id": "rrt-07783bca845d5...",
"title": "solicitud_incorrecta",
"meta": {
"service": "01",
"detail": "fallo en la validación de la solicitud",
"errors": {
"details": [
{
"message": "el parámetro de consulta es inesperado : lang: []"
}
]
}
}
} | Lang es un parámetro no válido. Debe utilizarse el parámetro Language para obtener una respuesta válida. |
401 No autorizado
El código de estado de error 401 No autorizado se devuelve cuando intentas llamar a la API con un access_token expirado.
Debes obtener un nuevo access_token con una llamada a la API de Autenticación de Aplicaciones.
El código de estado de error 401 No autorizado también se devuelve si no solicitaste acceso a la API creando un ticket en el Jira de DCP.
Cuando estés listo para comenzar a trabajar en una API, debes crear un ticket de certificación en Jira, como se describe en la sección Actividades de Certificación con Jira.
Si ya comenzaste a trabajar en una API y perdiste el acceso, crea un ticket de soporte como se describe en la sección Abrir un Ticket de Soporte.
404 No encontrado
El código de estado 404 No encontrado se devuelve cuando no se encuentra el VIN.
{
"status": "404",
"id": "rrt-07cdd77f98c381924-d-ea-22528-1563968-1.1",
"title": "not_found",
"meta": {
"service": "02",
"detail": "No record was found for the serial number A1B2C3"
}
}El concesionario puede haber cometido un error al introducir el VIN, o la unidad no es un producto BRP o es demasiado antigua.
Debe informar del error al usuario para que pueda intentarlo de nuevo.
Requisitos DSP
Requisitos funcionales
ID | Tipo | Requisito |
|---|---|---|
1 | Obligatorio | Cuando la API devuelve el código de estado 404 No Encontrado, el error debe mostrarse en la interfaz de usuario. |
2 | Obligatorio | El distribuidor debe poder visualizar las especificaciones de una unidad basándose en el número de serie (VIN) de la unidad. |
Actividades de Certificación
Esta sección presenta todas las actividades y validaciones de certificación que deben completarse para certificar la API.
Aseguramiento de la calidad
Las pruebas enumeradas en la tabla a continuación deben realizarse con éxito en el entorno de pruebas antes de que pueda comenzar la fase piloto del distribuidor.
ID | Prueba | Resultado esperado |
|---|---|---|
1 | Obtener las especificaciones técnicas para el VIN 3JBLGAP60MJ000001 (ATV) usando el idioma de su concesionario | La información técnica se muestra en la interfaz de usuario. |
2 | Obtener las especificaciones técnicas para el VIN YDV00054F021 (PWC) usando el idioma de su concesionario | La información técnica se muestra en la interfaz de usuario. |
3 | Obtener las especificaciones técnicas para el VIN 2BXNBDD10MV000013 (3WV) usando el idioma de su concesionario | La información técnica se muestra en la interfaz de usuario. |
4 | Obtener las especificaciones técnicas para el VIN 3JBVXAV27MK000001 (SSV) usando el idioma de su concesionario | La información técnica se muestra en la interfaz de usuario. |
5 | Obtener las especificaciones técnicas para el VIN YH2LLGNC9NR000595 (SNO) usando el idioma de su concesionario | La información técnica se muestra en la interfaz de usuario. |
6 | Obtener las especificaciones técnicas para el VIN YH2STML51LR0001 (SNO) usando el idioma de su concesionario | El código de estado 404 No Encontrado es devuelto y usted muestra el error en la interfaz de usuario. |
Piloto de concesionarios
La tabla a continuación describe los parámetros y validaciones del piloto de concesionarios.
Parámetro | Valor |
|---|---|
Entorno | Producción |
Número de concesionarios | 1 a 3 |
Duración | 1 semana |
Validación 1 | Pida a los concesionarios solicitar la información técnica de una unidad por cada línea de producto. Capture la pantalla con la información mostrada y envíela al equipo DCP. |
Postman
Esta sección describe lo que está disponible en Postman para explorar la API.
Entornos
Un entorno de Postman está disponible para probar la API de Especificaciones de Unidad. Este entorno de Postman contiene variables utilizadas por las consultas y configuradas para conectarse al entorno de prueba.
Colecciones
La colección DMS - Especificaciones de Unidad incluye ejemplos de llamadas a la API para obtener información del vehículo.