Webhooks
Usa estos recursos para controlar los Webhooks configurados en tus tiendas.
La siguiente tabla describe los diferentes contenidos de los recursos de Webhooks:
| Recurso | Descripción del Endpoint | |
|---|---|---|
GET webhook/{event} | Regresa los Webhooks configurados de todas las tiendas del cliente autenticado | |
PUT webhook/{event}/add-stores | Agrega tiendas al evento del webhook especificado | |
PUT webhook/{event}/change-url | Cambia la url para una lista de tiendas | |
POST webhook | Crea un nuevo Webhook para una lista de tiendas del cliente autenticado | |
DELETE webhook/{event}/remove-stores | Elimina stores del webhook especificado | |
PUT webhook/{event}/reset-secret | Reinicia el secret y genera uno nuevo al cliente autenticado | |
PUT webhook/{event}/change-status | Habilita o deshabilita Webhooks para una lista de tiendas | |
POST /clients/{clientId}/webhooks | Configura un webhook para una integración (Self-Onboarding) | |
DELETE /clients/{clientId}/webhooks | Elimina la configuración de webhook de una integración | |
GET /clients/{clientId}/webhooks | Lista todas las configuraciones de webhook de una integración |
GET webhook
Usa este endpoint para obtener los Webhooks configurados para tus tiendas.
URL del Endpoint
Utiliza esta URL para hacer una llamada con este endpoint:
https://{COUNTRY_DOMAIN}/api/v2/restaurants-integrations-public-api/webhook/{EVENT}
{COUNTRY_DOMAIN}: Este es tu dominio por país de Rappi. Mira la lista de dominios por país{EVENT}: Este es el nombre del evento y es opcional Mira la lista de eventos validos
Ejemplo de Llamada
Este es un ejemplo de una llamada API usando este endpoint:
GET https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/webhook
Este es un ejemplo de la llamada:
URL url = new URL("https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/webhook"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET"); connection.setRequestProperty("User-Agent", "Mozilla/5.0"); connection.setRequestProperty("Content-Type", "application/json"); connection.setRequestProperty("Accept", "application/json"); connection.setRequestProperty("x-authorization", "Bearer YOUR_TOKEN"); try (BufferedReader br = new BufferedReader( new InputStreamReader(connection.getInputStream(), StandardCharsets.UTF_8))) { StringBuilder response = new StringBuilder(); String responseLine; while ((responseLine = br.readLine()) != null) { response.append(responseLine.trim()); } System.out.println("Response body: " + response.toString()); } System.out.println("Response Code : " + connection.getResponseCode());
Propiedades del Endpoint
Este recurso tiene las siguientes propiedades:
| Formato de respuesta | JSON | |
| Requerimientos de autenticación | Token |
Parámetros
| Parámetro | Requerimiento | Descripción |
|---|---|---|
EVENTstring | opcional | Regresa únicamente el detalle del evento especificado |
Códigos de Respuesta
Estos son los posibles códigos de respuesta en este endpoint:
Ejemplo de Respuesta
Este es un ejemplo de la respuesta:
[ { "event": "event_1", "stores": [ { "store_id": "1000", "url": "http://testUrl/one", "state": "ENABLE" }, { "store_id": "10001", "url": "http://testUrl/one", "state": "ENABLE" } ] }, { "event": "event_2", "stores": [ { "store_id": "1000", "url": "http://testUrl/one", "state": "ENABLE" } ] } ]
Esta tabla describe los objetos dentro de la respuesta de ejemplo:
| Objeto en la respuesta | Descripción del objeto |
|---|---|
eventstring | Nombre del evento que dispara el webhook. |
storesstring | Lista de las tiendas donde se dispara el evento. |
store_idstring | Id de la tienda que dispara el evento |
urlstring | URL a la que se comunica el webhook. |
statestring | Estado del webhook. Opciones disponibles: ENABLE o DISABLE |
PUT webhook - Agregar Stores
Usa este endpoint para agregar tiendas a un webhook configurado por el cliente autenticado.
URL del Endpoint
Utiliza esta URL para hacer una llamada con este endpoint:
https://{COUNTRY_DOMAIN}/api/v2/restaurants-integrations-public-api/webhook/{EVENT}/add-stores
{COUNTRY_DOMAIN}: Este es tu dominio por país de Rappi. Mira la lista de dominios por país{EVENT}: Este es el nombre del evento Mira la lista de eventos validos
Propiedades del Endpoint
Este recurso tiene las siguientes propiedades:
| Formato de respuesta | JSON | |
| Requerimientos del body de la llamada | JSON | |
| Requerimientos de autenticación | Token |
Parámetros
| Parámetro | Requerimiento | Descripción |
|---|---|---|
eventstring | requerido | El nombre del evento del webhook a actualizar |
Códigos de Respuesta
Estos son los posibles códigos de respuesta en este endpoint:
Ejemplo de Llamada
Este es un ejemplo de una llamada API usando este endpoint:
PUT https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/webhook/NEW_ORDER/add-stores
Este es un ejemplo de la llamada:
[ { "url": "http://testDomain/webhook/data", "stores": ["1000", "1001"] } ]
URL url = new URL("https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/webhook/NEW_ORDER/add-stores"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("PUT"); connection.setRequestProperty("User-Agent", "Mozilla/5.0"); connection.setRequestProperty("Content-Type", "application/json"); connection.setRequestProperty("Accept", "application/json"); connection.setRequestProperty("x-authorization", "Bearer YOUR_TOKEN"); connection.setDoOutput(true); String jsonInputString = "[{\n" + " \"url\":\"http://testDomain/webhook/data\",\n" + " \"stores\":[\n" + " \"1000\",\n" + " \"1001\"\n" + " ]\n" + "}]"; try (OutputStream os = connection.getOutputStream()) { byte[] input = jsonInputString.getBytes(StandardCharsets.UTF_8); os.write(input, 0, input.length); } try (BufferedReader br = new BufferedReader( new InputStreamReader(connection.getInputStream(), StandardCharsets.UTF_8))) { StringBuilder response = new StringBuilder(); String responseLine; while ((responseLine = br.readLine()) != null) { response.append(responseLine.trim()); } System.out.println("Response body: " + response.toString()); } System.out.println("Response Code : " + connection.getResponseCode());
Esta tabla describe los atributos que el JSON de tu llamada requiere:
| Atributos | Requerimiento | Descripción |
|---|---|---|
urlstring | opcional | URL a la que se comunica el webhook. |
storesarray of strings | opcional | Lista de las tiendas donde se dispara el evento. |
Respuesta de ejemplo
Este es un ejemplo de la respuesta:
{ "event": "NEW_ORDER", "stores": [ { "store_id": "1000", "url": "http://testDomain/webhook/data", "state": "ENABLE" } ] }
Esta tabla describe los objetos dentro de la respuesta de ejemplo:
| Objeto en la respuesta | Descripción del objeto |
|---|---|
eventstring | Nombre del evento que dispara el webhook. |
storesstring | Lista de las tiendas donde se dispara el evento. |
store_idstring | Id de la tienda que dispara el evento |
urlstring | URL a la que se comunica el webhook. |
statestring | Estado del webhook. Opciones disponibles: ENABLE o DISABLE |
PUT webhook - Cambiar Url
Usa este endpoint para agregar tiendas a un webhook configurado por el cliente autenticado.
URL del Endpoint
Utiliza esta URL para hacer una llamada con este endpoint:
https://{COUNTRY_DOMAIN}/api/v2/restaurants-integrations-public-api/webhook/{event}/change-url
{COUNTRY_DOMAIN}: Este es tu dominio por país de Rappi. Mira la lista de dominios por país{EVENT}: Este es el nombre del evento Mira la lista de eventos validos
Propiedades del Endpoint
Este recurso tiene las siguientes propiedades:
| Formato de respuesta | JSON | |
| Requerimientos del body de la llamada | JSON | |
| Requerimientos de autenticación | Token |
Parámetros
| Parámetro | Requerimiento | Descripción |
|---|---|---|
eventstring | requerido | El nombre del evento del webhook a actualizar |
Códigos de Respuesta
Estos son los posibles códigos de respuesta en este endpoint:
Ejemplo de Llamada
Este es un ejemplo de una llamada API usando este endpoint:
PUT https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/webhook/NEW_ORDER/change-url
Este es un ejemplo de la llamada:
{ "url": "http://testDomain/webhook/data", "stores": ["1000", "1001"] }
URL url = new URL("https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/webhook/NEW_ORDER/change-url"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("PUT"); connection.setRequestProperty("User-Agent", "Mozilla/5.0"); connection.setRequestProperty("Content-Type", "application/json"); connection.setRequestProperty("Accept", "application/json"); connection.setRequestProperty("x-authorization", "Bearer YOUR_TOKEN"); connection.setDoOutput(true); String jsonInputString = "{\n" + " \"url\":\"http://testDomain/webhook/data\",\n" + " \"stores\":[\n" + " \"1000\",\n" + " \"1001\"\n" + " ]\n" + "}"; try (OutputStream os = connection.getOutputStream()) { byte[] input = jsonInputString.getBytes(StandardCharsets.UTF_8); os.write(input, 0, input.length); } try (BufferedReader br = new BufferedReader( new InputStreamReader(connection.getInputStream(), StandardCharsets.UTF_8))) { StringBuilder response = new StringBuilder(); String responseLine; while ((responseLine = br.readLine()) != null) { response.append(responseLine.trim()); } System.out.println("Response body: " + response.toString()); } System.out.println("Response Code : " + connection.getResponseCode());
Esta tabla describe los atributos que el JSON de tu llamada requiere:
| Atributos | Requerimiento | Descripción |
|---|---|---|
urlstring | requerido | URL a la que se comunica el webhook. |
storesarray of strings | requerido | Lista de las tiendas donde se dispara el evento. |
Respuesta de ejemplo
Este es un ejemplo de la respuesta:
{ "event": "NEW_ORDER", "stores": [ { "store_id": "1000", "url": "http://testDomain/webhook/data", "state": "ENABLE" } ] }
Esta tabla describe los objetos dentro de la respuesta de ejemplo:
| Objeto en la respuesta | Descripción del objeto |
|---|---|
eventstring | Nombre del evento que dispara el webhook. |
storesarray of Stores | Lista de las tiendas donde se dispara el evento. |
store_idstring | Id de la tienda que dispara el evento |
urlstring | URL a la que se comunica el webhook. |
statestring | Estado del webhook. Opciones disponibles: ENABLE o DISABLE |
POST webhook
Usa este endpoint para crear un webhook para tus tiendas.
URL del Endpoint
Utiliza esta URL para hacer una llamada con este endpoint:
https://{COUNTRY_DOMAIN}/api/v2/restaurants-integrations-public-api/webhook
{COUNTRY_DOMAIN}: Este es tu dominio por país de Rappi. Mira la lista de dominios por país.
Propiedades del Endpoint
Este recurso tiene las siguientes propiedades:
| Formato de respuesta | JSON | |
| Requerimientos del body de la llamada | JSON | |
| Requerimientos de autenticación | Token |
Parámetros
Este endpoint no permite parámetros adicionales.
Códigos de Respuesta
Estos son los posibles códigos de respuesta en este endpoint:
Ejemplo de Llamada
Este es un ejemplo de una llamada API usando este endpoint:
POST https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/webhook
Este es un ejemplo de la llamada:
{ "event": "test_event", "data": [ { "url": "http://testDomain/webhook/data", "stores": ["1000", "1001"] } ] }
URL url = new URL("https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/webhook"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("POST"); connection.setRequestProperty("User-Agent", "Mozilla/5.0"); connection.setRequestProperty("Content-Type", "application/json"); connection.setRequestProperty("Accept", "application/json"); connection.setRequestProperty("x-authorization", "Bearer YOUR_TOKEN"); connection.setDoOutput(true); String jsonInputString = "{\n" + " \"event\":\"test_event\",\n" + " \"data\": [ {" + " \"url\":\"http://testDomain/webhook/data\",\n" + " \"stores\":[\n" + " \"1000\",\n" + " \"1001\"\n" + " ]\n" + " } ]" + "}"; try (OutputStream os = connection.getOutputStream()) { byte[] input = jsonInputString.getBytes(StandardCharsets.UTF_8); os.write(input, 0, input.length); } try (BufferedReader br = new BufferedReader( new InputStreamReader(connection.getInputStream(), StandardCharsets.UTF_8))) { StringBuilder response = new StringBuilder(); String responseLine; while ((responseLine = br.readLine()) != null) { response.append(responseLine.trim()); } System.out.println("Response body: " + response.toString()); } System.out.println("Response Code : " + connection.getResponseCode());
Esta tabla describe los atributos que el JSON de tu llamada requiere:
| Atributo | Requerimiento | Descripción |
|---|---|---|
eventstring | requerido | Nombre del evento que dispara el webhook. |
dataarray of Object | requerido | Contiene los atributos del webhook a configurar |
urlstring | requerido | URL a la que se comunica el webhook. |
storesarray of strings | opcional | Lista de las tiendas donde se dispara el evento. Si no envías este atributo, se aplica a todas las tiendas el cliente autenticado. |
Ejemplo de Respuesta
Este es un ejemplo de la respuesta:
{ "event": "test_1", "stores": [ { "url": "https://localhost:8080/test", "store_id": "1000", "state": "ENABLE" }, { "url": "https://localhost:8080/test", "store_id": "1001", "state": "ENABLE" } ], "secret": "TEST_SECRET" }
Esta tabla describe los objetos dentro de la respuesta de ejemplo:
| Objeto en la respuesta | Descripción del objeto |
|---|---|
eventstring | Nombre del evento que dispara el webhook. |
storesarray of strings | Lista de las tiendas donde se dispara el evento. |
urlstring | URL a la que se comunica el webhook. |
store_idstring | Id de la tienda que dispara el evento |
statestring | Estado del webhook. Opciones disponibles: ENABLE o DISABLE |
secretstring | Secret Key para crear la firma de seguridad de cada evento webhook. |
DELETE webhook
Usa este endpoint para eliminar tiendas de un webhook.
URL del Endpoint
Usa esta URL para hacer llamadas con este endpoint:
https://{COUNTRY_DOMAIN}/api/v2/restaurants-integrations-public-api/webhook/{EVENT}/remove-stores
{COUNTRY_DOMAIN}: Este es tu dominio por país de Rappi. Mira la lista de dominios por país{EVENT}: Este es el nombre del evento Mira la lista de eventos validos
Propiedades del Endpoint
Este recurso tiene las siguientes propiedades:
| Formato de respuesta | JSON | |
| Requerimientos del body de la llamada | JSON | |
| Requerimientos de autenticación | Token |
Parámetros
| Parámetro | Requerimiento | Descripción |
|---|---|---|
eventstring | requerido | El nombre del evento del webhook a actualizar |
Códigos de Respuesta
Estos son los posibles códigos de respuesta en este endpoint:
Ejemplo de Llamada
Este es un ejemplo de una llamada API usando este endpoint:
DELETE https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/webhook/NEW_ORDER/remove-stores
Este es un ejemplo de la llamada:
{ "stores": ["1000"] }
URL url = new URL("https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/webhook/NEW_ORDER/remove-stores"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("DELETE"); connection.setRequestProperty("User-Agent", "Mozilla/5.0"); connection.setRequestProperty("Content-Type", "application/json"); connection.setRequestProperty("Accept", "application/json"); connection.setRequestProperty("x-authorization", "Bearer YOUR_TOKEN"); connection.setDoOutput(true); String jsonInputString = "{\n" + " \"stores\":[\n" + " \"1000\"\n" + " ]\n" + "}"; try (OutputStream os = connection.getOutputStream()) { byte[] input = jsonInputString.getBytes(StandardCharsets.UTF_8); os.write(input, 0, input.length); } try (BufferedReader br = new BufferedReader( new InputStreamReader(connection.getInputStream(), StandardCharsets.UTF_8))) { StringBuilder response = new StringBuilder(); String responseLine; while ((responseLine = br.readLine()) != null) { response.append(responseLine.trim()); } System.out.println("Response body: " + response.toString()); } System.out.println("Response Code : " + connection.getResponseCode());
Esta tabla describe los atributos que el JSON de tu llamada requiere:
| Atributos | Requerimiento | Descripción |
|---|---|---|
storesarray of strings | opcional | Lista de las tiendas donde se eliminará el webhook |
Ejemplo de Respuesta
Este es un ejemplo de la respuesta:
{ "stores": ["1000"], "message": "Store settings removed successfully." }
Esta tabla describe los objetos dentro de la respuesta de ejemplo:
| Objeto en la respuesta | Descripción del objeto |
|---|---|
storesarray of strings | Lista de las tiendas donde se dispara el evento. |
messagestring | Mensaje del resultado de la llamada. |
PUT webhook reset secret
Usa este endpoint para reiniciar el secret y crear uno nuevo para el aliado autenticado.
URL del Endpoint
Utiliza esta URL para hacer una llamada con este endpoint:
https://{COUNTRY_DOMAIN}/api/v2/restaurants-integrations-public-api/webhook/{EVENT}/reset-secret
{COUNTRY_DOMAIN}: Este es tu dominio por país de Rappi. Mira la lista de dominios por país{EVENT}: Este es el nombre del evento Mira la lista de eventos validos
Propiedades del Endpoint
Este recurso tiene las siguientes propiedades:
| Formato de respuesta | JSON | |
| Requerimientos del body de la llamada | JSON | |
| Requerimientos de autenticación | Token |
Parámetros
| Parámetro | Requerimiento | Descripción |
|---|---|---|
eventstring | requerido | El nombre del evento del webhook a actualizar |
Códigos de Respuesta
Estos son los posibles códigos de respuesta en este endpoint:
Ejemplo de Llamada
Este es un ejemplo de una llamada API usando este endpoint:
PUT https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/webhook/NEW_ORDER/reset-secret
Este es un ejemplo de la llamada:
URL url = new URL("https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/webhook/NEW_ORDER/reset-secret"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("PUT"); connection.setRequestProperty("User-Agent", "Mozilla/5.0"); connection.setRequestProperty("Content-Type", "application/json"); connection.setRequestProperty("Accept", "application/json"); connection.setRequestProperty("x-authorization", "Bearer YOUR_TOKEN"); connection.setDoOutput(true); try (BufferedReader br = new BufferedReader( new InputStreamReader(connection.getInputStream(), StandardCharsets.UTF_8))) { StringBuilder response = new StringBuilder(); String responseLine; while ((responseLine = br.readLine()) != null) { response.append(responseLine.trim()); } System.out.println("Response body: " + response.toString()); } System.out.println("Response Code : " + connection.getResponseCode());
Ejemplo de Respuesta
Este es un ejemplo de la respuesta:
{ "event": "NEW_ORDER", "stores": [ { "store_id": "1000", "url": "http://localhost", "state": "ENABLE" } ], "secret": "NEW_SECRET" }
Esta tabla describe los objectos dentro de la respuesta de ejemplo:
| Objeto en la respuesta | Descripción del objeto |
|---|---|
eventstring | Nombre del evento que dispara el webhook. |
storesarray of strings | Lista de las tiendas donde se dispara el evento. |
store_idstring | Id de la tienda |
urlstring | URL a la que se comunica el webhook. |
statestring | Estado del webhook. Opciones disponibles: ENABLE o DISABLE |
secretstring | Secret Key para crear la firma de seguridad de cada evento webhook. |
PUT webhook change status
Usa este endpoint para cambiar la disponibilidad de un webhook existente.
URL del Endpoint
Utiliza esta URL para hacer una llamada con este endpoint:
https://{COUNTRY_DOMAIN}/api/v2/restaurants-integrations-public-api/webhook/{EVENT}/change-status
{COUNTRY_DOMAIN}: Este es tu dominio por país de Rappi. Mira la lista de dominios por país{EVENT}: Este es el nombre del evento Mira la lista de eventos validos
Propiedades del Endpoint
Este recurso tiene las siguientes propiedades:
| Formato de respuesta | JSON | |
| Requerimientos del body de la llamada | JSON | |
| Requerimientos de autenticación | Token |
Parámetros
Este endpoint no permite parámetros adicionales.
Códigos de Respuesta
Estos son los posibles códigos de respuesta en este endpoint:
Ejemplo de Llamada
Este es un ejemplo de una llamada API usando este endpoint:
PUT https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/webhook/NEW_ORDER/change-status
Este es un ejemplo de la llamada:
{ "stores": { "enable": ["1001"], "disable": ["1000"] } }
URL url = new URL("https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/webhook/NEW_ORDER/change-status"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("PUT"); connection.setRequestProperty("User-Agent", "Mozilla/5.0"); connection.setRequestProperty("Content-Type", "application/json"); connection.setRequestProperty("Accept", "application/json"); connection.setRequestProperty("x-authorization", "Bearer YOUR_TOKEN"); connection.setDoOutput(true); String jsonInputString = "{\"stores\": {\"enable\": [\"1001\"],\"disable\": [\"1000\" ] } }"; try (OutputStream os = connection.getOutputStream()) { byte[] input = jsonInputString.getBytes(StandardCharsets.UTF_8); os.write(input, 0, input.length); } try (BufferedReader br = new BufferedReader( new InputStreamReader(connection.getInputStream(), StandardCharsets.UTF_8))) { StringBuilder response = new StringBuilder(); String responseLine; while ((responseLine = br.readLine()) != null) { response.append(responseLine.trim()); } System.out.println("Response body: " + response.toString()); } System.out.println("Response Code : " + connection.getResponseCode());
Esta tabla describe los atributos que el JSON de tu llamada requiere:
| Atributos | Requerimiento | Descripción |
|---|---|---|
storesObject | requerido | Objeto que contiene las listas de tiendas a habilitar o deshabilitar |
enablearray of strings | opcional | Lista de tiendas a habilitar |
disablearray of strings | opcional | Lista de tiendas a deshabilitar |
Ejemplo de Respuesta
Este es un ejemplo de la respuesta:
{ "event": "NEW_ORDER", "stores": [ { "store_id": "1001", "url": "http://localhost", "state": "ENABLE" }, { "store_id": "1000", "url": "http://localhost", "state": "ENABLE" } ] }
Esta tabla describe los objetos dentro de la respuesta de ejemplo:
| Objeto en la respuesta | Descripción del objeto |
|---|---|
eventstring | Nombre del evento que dispara el webhook. |
storesarray of Stores | Lista de las tiendas donde se dispara el evento. |
store_idstring | Id de la tienda que dispara el webhook |
urlstring | URL a la que se comunica el webhook. |
statestring | Nueva disponibilidad definida en la llamada. |
Configuración de webhooks de integración
Utilice estos endpoints para configurar webhooks a nivel de integración. A diferencia de los webhooks por tienda, los webhooks de integración aplican a todas las tiendas de una integración y se configuran una sola vez.
La siguiente tabla describe los endpoints de webhooks de integración:
| Recurso de API | Descripción del Endpoint |
|---|---|
POST /clients/{clientId}/webhooks | Configura una URL de webhook para todas las tiendas de una integración |
DELETE /clients/{clientId}/webhooks | Elimina la configuración de webhook para un evento |
GET /clients/{clientId}/webhooks | Lista todas las configuraciones de webhook de una integración |
POST integration webhook
Utilice este endpoint para configurar una URL de webhook para un evento de integración. Crea o actualiza la configuración del webhook. El único evento soportado en este momento es STORE_PROVISIONING_STATUS.
URL del Endpoint
https://{COUNTRY_DOMAIN}/api/v2/restaurants-integrations-public-api/clients/{clientId}/webhooks
{COUNTRY_DOMAIN}: Es su dominio de país de Rappi. Ver la lista de dominios de país.
{clientId}: Su client ID (el claim azp de su JWT de integrador, por ejemplo, your-client-id).
Propiedades del Endpoint
| Formato de respuesta | JSON |
| Autenticación requerida | Bearer integrator JWT (Auth0) |
Parámetros
| Parámetro | Descripción |
|---|---|
{clientId} | Path param. Su client ID (claim azp del JWT de integrador) |
Cuerpo de la Solicitud
| Atributo | Requerido | Descripción |
|---|---|---|
eventstring | requerido | El evento a configurar (por ejemplo, STORE_PROVISIONING_STATUS) |
urlstring | requerido | El endpoint HTTPS que recibirá los eventos de webhook |
secretstring | opcional | Secret personalizado para validación de firma HMAC. Si se omite, no se enviará firma con los payloads del webhook |
Códigos de Estado
Ejemplo de Solicitud
POST https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/clients/your-client-id/webhooks
Este es un ejemplo de la solicitud:
{ "event": "STORE_PROVISIONING_STATUS", "url": "https://your-endpoint.com/rappi/events", "secret": "optional-custom-secret" }
Ejemplo de Respuesta "Creado 201"
Este es un ejemplo de la respuesta "Creado 201":
{ "clientId": "your-client-id", "event": "STORE_PROVISIONING_STATUS", "url": "https://your-endpoint.com/rappi/events", "state": true }
Esta tabla describe los objetos contenidos en el ejemplo de respuesta:
| Objeto | Descripción |
|---|---|
clientIdstring | Su client ID (claim azp de su JWT de integrador) |
eventstring | El nombre del evento configurado |
urlstring | La URL del webhook que recibirá los eventos |
stateboolean | Si el webhook está activo (true/false). Nota: esto difiere de los webhooks por tienda, que utilizan los valores string ENABLE/DISABLE. |
Ejemplo de Respuesta "No autorizado 401"
Este es un ejemplo de la respuesta "No autorizado 401":
{ "message": "Not a valid token" }
| Objeto | Descripción |
|---|---|
messagestring | Mensaje de error descriptivo |
DELETE integration webhook
Utilice este endpoint para eliminar la configuración de webhook para un evento específico de una integración.
URL del Endpoint
https://{COUNTRY_DOMAIN}/api/v2/restaurants-integrations-public-api/clients/{clientId}/webhooks
Propiedades del Endpoint
| Formato de respuesta | Ninguno |
| Autenticación requerida | Bearer integrator JWT (Auth0) |
Parámetros
| Parámetro | Descripción |
|---|---|
{clientId} | Path param. Su client ID (claim azp del JWT de integrador) |
event | Query param. Nombre del evento a eliminar |
Códigos de Estado
Ejemplo de Solicitud
DELETE https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/clients/your-client-id/webhooks?event=STORE_PROVISIONING_STATUS
GET integration webhooks
Utilice este endpoint para listar todas las configuraciones de webhook de una integración.
URL del Endpoint
https://{COUNTRY_DOMAIN}/api/v2/restaurants-integrations-public-api/clients/{clientId}/webhooks
Propiedades del Endpoint
| Formato de respuesta | JSON |
| Autenticación requerida | Bearer integrator JWT (Auth0) |
Parámetros
| Parámetro | Descripción |
|---|---|
{clientId} | Path param. Su client ID (claim azp del JWT de integrador) |
Códigos de Estado
Ejemplo de Solicitud
GET https://api.dev.rappi.com/api/v2/restaurants-integrations-public-api/clients/your-client-id/webhooks
Ejemplo de Respuesta "Exitoso 200"
Este es un ejemplo de la respuesta "Exitoso 200":
[ { "clientId": "your-client-id", "event": "STORE_PROVISIONING_STATUS", "url": "https://your-endpoint.com/rappi/events", "state": true } ]
Esta tabla describe los objetos contenidos en el ejemplo de respuesta:
| Objeto | Descripción |
|---|---|
clientIdstring | Su client ID (claim azp de su JWT de integrador) |
eventstring | El nombre del evento configurado |
urlstring | La URL del webhook que recibe los eventos |
stateboolean | Si el webhook está activo (true/false). Nota: esto difiere de los webhooks por tienda, que utilizan los valores string ENABLE/DISABLE. |
