openapi: 3.0.3 info: title: API Version 3 coverage webhooks API version: 3.0.0 description: "This is the documentation for the public api *(version 3)* of 99minutos. [https://www.99minutos.com/.](https://www.99minutos.com/.EnvironmentAPI)\n\n# First Steps\n\n1. Create an account in the sandbox website: [https://delivery-git-sandbox-99minutos.vercel.app/](https://delivery-git-sandbox-99minutos.vercel.app/)\n2. Go to Developers section\n3. On API Keys V3 section click on `Generar`\n4. After this the `client_id` and `client_secret` will be displayed\n \n\nUse the credentials to generate access tokens as shown below in the endpoint `create access token`\n\nFollow the same process in production.\n\n## Environments\n\n| **Environment** | **Website** | **API url** |\n| --- | --- | --- |\n| Sandbox | [https://delivery-git-sandbox-99minutos.vercel.app/](https://delivery-git-sandbox-99minutos.vercel.app/) | [https://sandbox.99minutos.com](https://sandbox.99minutos.com) |\n| Production | [https://envios.99minutos.com/developers](https://envios.99minutos.com/developers) | [https://delivery.99minutos.com](https://delivery.99minutos.com) |\n\n`Each environment has an independent set of credentials`" servers: - url: https://delivery.99minutos.com description: Produccion - url: https://sandbox.99minutos.com description: Sandbox Environment tags: - name: webhooks paths: /api/v3/webhooks: post: summary: '' operationId: post-api-v3-webhooks responses: '200': $ref: '#/components/responses/ConfigResponse' description: "Submit a new webhook configuration. You can set 2 settings at most.\n\nwebhook notification example:\n\n```json\n{\n \"StatusName\": \"stored\", // Current status of the order, the complete list of events at the tracking endpoint, are sent in camelCase.\n \"TrackingId\": \"2139671481\", // Identifier generated by 99minutos\n \"InternalKey\": \"SOME_ID\", // Identifier sent by the customer\n \"Events\": [ // List of events through which the shipment has transited in ascending order \n {\n \"StatusCode\": \"1002\",\n \"StatusName\": \"confirmed\",\n \"Data\": {\n \"comment\": \"NEW_ORDER_CONFIRMED\", // Additional event information\n \"evidence\": [] // Evidence of transition, applies only to delivery events, failed delivery attempts and pickup.\n },\n \"CreatedAt\": \"2023-01-02 23:55:39\" // UTC Time\n },\n {\n \"StatusCode\": \"2003\",\n \"StatusName\": \"collected\",\n \"Data\": {\n \"comment\": \"Recolectada por el veloz Don Veloz N/A 99m B 2eeb2a6\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-03 20:12:43\"\n },\n {\n \"StatusCode\": \"3001\",\n \"StatusName\": \"stored\",\n \"Data\": {\n \"comment\": \"En estación MX5 por módulo de inducción\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-03 22:20:02\"\n },\n {\n \"StatusCode\": \"3004\",\n \"StatusName\": \"onLinehaul\",\n \"Data\": {\n \"comment\": \"En camino a estación Tultitlán desde estación Pantaco por jhon.doe el número de orden 2139671481\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-04 01:13:46\"\n },\n {\n \"StatusCode\": \"3001\",\n \"StatusName\": \"stored\",\n \"Data\": {\n \"comment\": \"En estación MX0 por módulo de inducción\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-04 04:17:42\"\n },\n {\n \"StatusCode\": \"3002\",\n \"StatusName\": \"onContainer\",\n \"Data\": {\n \"comment\": \"Contenerizado en la estación MX0 en el contenedor VQA-319 en el finger F1\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-04 06:28:12\"\n },\n {\n \"StatusCode\": \"3003\",\n \"StatusName\": \"chargedToVehicle\",\n \"Data\": {\n \"comment\": \"Subida al line haul del veloz Jhon Doe con las placas LA37321 en la estacion MX0 dentro del contenedor VQA-319\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-05 05:13:24\"\n },\n {\n \"StatusCode\": \"3004\",\n \"StatusName\": \"onLinehaul\",\n \"Data\": {\n \"comment\": \"Despachado de la estación MX0 hacia la estación MCH2, en el line haul del veloz Jhon Doe con las placas LA37321 en el contenedor VQA-319\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-05 06:31:29\"\n },\n {\n \"StatusCode\": \"3001\",\n \"StatusName\": \"stored\",\n \"Data\": {\n \"comment\": \"En estación final MCH2 por módulo de inducción\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-05 16:37:06\"\n },\n {\n \"StatusCode\": \"4001\",\n \"StatusName\": \"onRoadToDelivery\",\n \"Data\": {\n \"comment\": \"Asignada a entrega en la estación al veloz Jhon. Ruta: 49b91331-2be0-2fd4-9b25-1accc772f937\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-05 16:01:40\"\n },\n {\n \"StatusCode\": \"4002\",\n \"StatusName\": \"delivered\",\n \"Data\": {\n \"comment\": \"Titular - Carlos Ramirez | <>\",\n \"evidence\": [\n \"https://copilot-image-proxy-qndxoltwga-uc.a.run.app/view/62b6fec1836a6321a5ca5a4a.jpeg\", // url to the photo of the evidences\n \"https://copilot-image-proxy-qndxoltwga-uc.a.run.app/view/63b1fec1b030b63f06db10a5.jpeg\",\n \"https://copilot-image-proxy-qndxoltwga-uc.a.run.app/view/62b1fab2b031b63d01da31b7.jpeg\"\n ]\n },\n \"CreatedAt\": \"2023-01-05 16:45:54\"\n }\n // You can have n events until delivery or return.\n ]\n}\n```" security: - AuthJWT: [] tags: - webhooks requestBody: $ref: '#/components/requestBodies/Config' get: summary: '' operationId: get-api-v3-webhooks responses: '200': $ref: '#/components/responses/ConfigGetResponse' description: "Get webhooks configurations\n\nwebhook notification example:\n\n```json\n{\n \"StatusName\": \"stored\", // Current status of the order, the complete list of events at the tracking endpoint, are sent in camelCase.\n \"TrackingId\": \"2139671481\", // Identifier generated by 99minutos\n \"InternalKey\": \"SOME_ID\", // Identifier sent by the customer\n \"Events\": [ // List of events through which the shipment has transited in ascending order \n {\n \"StatusCode\": \"1002\",\n \"StatusName\": \"confirmed\",\n \"Data\": {\n \"comment\": \"NEW_ORDER_CONFIRMED\", // Additional event information\n \"evidence\": [] // Evidence of transition, applies only to delivery events, failed delivery attempts and pickup.\n },\n \"CreatedAt\": \"2023-01-02 23:55:39\" // UTC Time\n },\n {\n \"StatusCode\": \"2003\",\n \"StatusName\": \"collected\",\n \"Data\": {\n \"comment\": \"Recolectada por el veloz Don Veloz N/A 99m B 2eeb2a6\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-03 20:12:43\"\n },\n {\n \"StatusCode\": \"3001\",\n \"StatusName\": \"stored\",\n \"Data\": {\n \"comment\": \"En estación MX5 por módulo de inducción\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-03 22:20:02\"\n },\n {\n \"StatusCode\": \"3004\",\n \"StatusName\": \"onLinehaul\",\n \"Data\": {\n \"comment\": \"En camino a estación Tultitlán desde estación Pantaco por jhon.doe el número de orden 2139671481\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-04 01:13:46\"\n },\n {\n \"StatusCode\": \"3001\",\n \"StatusName\": \"stored\",\n \"Data\": {\n \"comment\": \"En estación MX0 por módulo de inducción\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-04 04:17:42\"\n },\n {\n \"StatusCode\": \"3002\",\n \"StatusName\": \"onContainer\",\n \"Data\": {\n \"comment\": \"Contenerizado en la estación MX0 en el contenedor VQA-319 en el finger F1\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-04 06:28:12\"\n },\n {\n \"StatusCode\": \"3003\",\n \"StatusName\": \"chargedToVehicle\",\n \"Data\": {\n \"comment\": \"Subida al line haul del veloz Jhon Doe con las placas LA37321 en la estacion MX0 dentro del contenedor VQA-319\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-05 05:13:24\"\n },\n {\n \"StatusCode\": \"3004\",\n \"StatusName\": \"onLinehaul\",\n \"Data\": {\n \"comment\": \"Despachado de la estación MX0 hacia la estación MCH2, en el line haul del veloz Jhon Doe con las placas LA37321 en el contenedor VQA-319\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-05 06:31:29\"\n },\n {\n \"StatusCode\": \"3001\",\n \"StatusName\": \"stored\",\n \"Data\": {\n \"comment\": \"En estación final MCH2 por módulo de inducción\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-05 16:37:06\"\n },\n {\n \"StatusCode\": \"4001\",\n \"StatusName\": \"onRoadToDelivery\",\n \"Data\": {\n \"comment\": \"Asignada a entrega en la estación al veloz Jhon. Ruta: 49b91331-2be0-2fd4-9b25-1accc772f937\",\n \"evidence\": []\n },\n \"CreatedAt\": \"2023-01-05 16:01:40\"\n },\n {\n \"StatusCode\": \"4002\",\n \"StatusName\": \"delivered\",\n \"Data\": {\n \"comment\": \"Titular - Carlos Ramirez | <>\",\n \"evidence\": [\n \"https://copilot-image-proxy-qndxoltwga-uc.a.run.app/view/62b6fec1836a6321a5ca5a4a.jpeg\", // url to the photo of the evidences\n \"https://copilot-image-proxy-qndxoltwga-uc.a.run.app/view/63b1fec1b030b63f06db10a5.jpeg\",\n \"https://copilot-image-proxy-qndxoltwga-uc.a.run.app/view/62b1fab2b031b63d01da31b7.jpeg\"\n ]\n },\n \"CreatedAt\": \"2023-01-05 16:45:54\"\n }\n // You can have n events until delivery or return.\n ]\n}\n```" security: - AuthJWT: [] tags: - webhooks /api/v3/webhooks/{webhook_id}: parameters: - schema: type: string format: uuid example: 4c136c4a-cdf6-4b37-879e-f0c4a1082856 name: webhook_id in: path required: true description: Webhook uuid patch: summary: '' operationId: patch-api-v3-webhooks-webhook_id responses: '200': $ref: '#/components/responses/ConfigResponse' description: "Update webhook configuration. You can update headers or/and status_rules.\n\nwebhook notification example:\n\n```json\n{\n \"headers\": {\n \"Content-Type\": \"application/json\" // Change the headers\n },\n \"status_rules\": {\n \"status_version\": 2, // Change status version\n \"allowed_status_names\": [\n \"delivered\" // Change the allowed status names\n ]\n }\n}\n```" tags: - webhooks security: - AuthJWT: [] delete: summary: '' operationId: delete-api-v3-webhooks-webhook_id responses: '200': $ref: '#/components/responses/DeleteConfigResponse' description: Delete webhook config by id tags: - webhooks security: - AuthJWT: [] /api/v3/webhooks/evidences/{tracking_id}: parameters: - schema: type: string example: 9107062174 name: tracking_id in: path required: true description: Tracking id get: summary: '' operationId: get-api-v3-webhooks-evidences-by-tracking-id responses: '200': $ref: '#/components/responses/Notification' description: Get evidences by trackingId security: - AuthJWT: [] tags: - webhooks components: securitySchemes: AuthJWT: type: http scheme: bearer bearerFormat: JWT