Synupv1
Crear clave
v1Recursos/Review Invites

Review Invites

Busque y gestione los destinatarios de sus campañas de invitación a reseñas.

Busca destinatarios por nombre, correo electrónico o teléfono en las campañas de invitación a reseñas de su agencia.

Buscar destinatarios

get/api/v1/review-invites
review-invite:read
Parámetros de consulta
querystringobligatorio
Texto de búsqueda, comparado con el nombre, el correo electrónico y el teléfono. Obligatorio.
limitintegeropcional
Máximo de resultados a devolver, de 1 a 100. El valor predeterminado es 25.
Respuesta
dataobjectopcional
recipientsarray of objectopcional
Los destinatarios que coinciden.
idstringopcional
Identificador único del destinatario.
namestringopcional
El nombre del destinatario, o vacío si no se indicó.
emailstringopcional
La dirección de correo electrónico del destinatario, o vacío si no se indicó.
phonestringopcional
El número de teléfono del destinatario, o vacío si no se indicó.
sourcestringopcional
De dónde proviene este destinatario, p. ej. manual, csv, crm.
contactTypestringopcional
Uno de: Customer, Lead, Prospect, Contact.
statusstringopcional
Estado de entrega actual de este destinatario.
campaignIdstringopcional
ID de la campaña a la que pertenece este destinatario.
campaignNamestringopcional
Nombre de la campaña a la que pertenece este destinatario.
locationIdstringopcional
ID de la ubicación para la que es la campaña, o null.
locationLabelstringopcional
Nombre visible de esa ubicación, o vacío cuando no se puede resolver.
alreadyMessagedbooleanopcional
Si ya se le ha enviado un mensaje a este destinatario. Una vez que es true, su correo electrónico y teléfono ya no se pueden cambiar.
countnumberopcional
Número total de destinatarios que coinciden con la búsqueda.
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
get/api/v1/review-invites
Su clave de API
query *
limit
{
  "data": {
    "recipients": [
      {
        "id": "cm_recip_1",
        "name": "Jordan Lee",
        "email": "jordan@example.com",
        "phone": "",
        "source": "manual",
        "contactType": "Customer",
        "status": "pending",
        "campaignId": "cm_campaign_1",
        "campaignName": "Spring Checkup Follow-up",
        "locationId": "cm_loc_1",
        "locationLabel": "Acme Dental — Downtown · Austin",
        "alreadyMessaged": false
      }
    ],
    "count": 1
  }
}
v1Recursos/Review Invites/postAgregar destinatarios a una campaña

Agrega uno o más destinatarios a una campaña de invitación a reseñas, deduplicados tanto dentro del propio lote como frente a todos los que ya están en la campaña. Advertencia — esto puede desencadenar un envío real de mensajes: si la campaña de destino ya está lanzada con el envío automático activado, los destinatarios recién agregados se encolan y se les envía de inmediato, a su dirección de correo electrónico o número de teléfono real.

Agregar destinatarios a una campaña

post/api/v1/review-invites
review-invite:write
Cuerpo de la solicitud
campaignIdstringobligatorio
La campaña a la que agregar destinatarios. Obligatorio.
recipientsarray of objectobligatorio
Los destinatarios a agregar. Obligatorio, no vacío.
namestringopcional
Nombre del destinatario.
emailstringopcional
Dirección de correo electrónico del destinatario.
phonestringopcional
Número de teléfono del destinatario.
sourcestringopcional
De dónde proviene este destinatario. El valor predeterminado es manual.
contactTypestring (Customer | Lead | Prospect | Contact)opcional
Uno de: Customer, Lead, Prospect, Contact. El valor predeterminado es Customer.
channelstringopcional
Por qué canal enviar el mensaje a este destinatario (p. ej. email, sms), u omítalo para usar la combinación predeterminada de la campaña.
smsConsentobjectopcional
Declaración de consentimiento SMS para este lote. Obligatoria para que se pueda enviar un SMS a cualquier destinatario del lote — las filas agregadas sin ella se omiten para el envío por SMS.
bystringopcional
Nombre o identificador de la persona que declara que se obtuvo el consentimiento para este lote.
Respuesta
dataobjectopcional
countnumberopcional
Número de destinatarios realmente agregados.
duplicatesnumberopcional
Número de filas del propio lote de la solicitud que duplicaban otra fila del mismo lote.
alreadyPresentnumberopcional
Número de filas que se omitieron porque ese correo electrónico o teléfono ya estaba en esta campaña.
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
404El recurso no se encontró, o no pertenece a su agencia.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
post/api/v1/review-invites
Su clave de API
Cuerpo de la solicitud*
{
  "data": {
    "count": 1,
    "duplicates": 0,
    "alreadyPresent": 0
  }
}
v1Recursos/Review Invites/postActualizar un destinatario

Corrige el nombre, correo electrónico, teléfono o tipo de contacto de un destinatario. El correo electrónico y el teléfono quedan bloqueados una vez que se ha enviado un mensaje a ese destinatario — cambiar cualquiera de los dos después de un envío devuelve un 409, ya que los acuses de recibo y las respuestas están vinculados a la dirección realmente usada.

Actualizar un destinatario

post/api/v1/review-invites/update
review-invite:write
Cuerpo de la solicitud
recipientIdstringobligatorio
El destinatario a actualizar. Obligatorio.
namestringopcional
Nuevo nombre.
emailstringopcional
Nueva dirección de correo electrónico. Se rechaza con un 409 si ya se le envió un mensaje a este destinatario.
phonestringopcional
Nuevo número de teléfono. Se rechaza con un 409 si ya se le envió un mensaje a este destinatario.
contactTypestring (Customer | Lead | Prospect | Contact)opcional
Nuevo tipo de contacto: Customer, Lead, Prospect o Contact.
Respuesta
dataobjectopcional
idstringopcional
Identificador único del destinatario.
namestringopcional
El nombre del destinatario, o vacío si no se indicó.
emailstringopcional
La dirección de correo electrónico del destinatario, o vacío si no se indicó.
phonestringopcional
El número de teléfono del destinatario, o vacío si no se indicó.
contactTypestringopcional
Uno de: Customer, Lead, Prospect, Contact.
statusstringopcional
Estado de entrega actual de este destinatario.
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
404El recurso no se encontró, o no pertenece a su agencia.
409La solicitud entra en conflicto con el estado actual del recurso — por ejemplo, cambiar el correo electrónico o el teléfono de un destinatario al que ya se le ha enviado un mensaje, o una invitación de equipo que ya fue aceptada (o que aún no ha sido aceptada).
422A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
post/api/v1/review-invites/update
Su clave de API
Cuerpo de la solicitud*
{
  "data": {
    "id": "cm_recip_1",
    "name": "Jordan Lee",
    "email": "jordan@example.com",
    "phone": null,
    "contactType": "Customer",
    "status": "pending"
  }
}
v1Recursos/Review Invites/getListar campañas

Enumera las campañas de invitación a reseñas de una ubicación, de la más reciente a la más antigua.

Listar campañas

get/api/v1/review-invites/campaigns
review-invite:read
Parámetros de consulta
locationIdstringobligatorio
La ubicación cuyas campañas se van a listar. Obligatorio.
pageintegeropcional
Número de página, empezando en 0. El valor predeterminado es 0.
statusstring (all | draft | launched | stopped | archived)opcional
Filtrar por estado. El valor predeterminado es all.
Respuesta
dataobjectopcional
campaignsarray of unknownopcional
Las campañas que coinciden.
totalnumberopcional
Número total de campañas que coinciden con los filtros.
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
404El recurso no se encontró, o no pertenece a su agencia.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
get/api/v1/review-invites/campaigns
Su clave de API
locationId *
page
status
{
  "data": {
    "rows": [
      {
        "id": "cm_campaign_1",
        "name": "Spring Checkup Follow-up",
        "type": "email_sms",
        "collectMode": "directory",
        "status": "draft",
        "archived": false,
        "locationLabel": "Acme Dental — Downtown · Austin",
        "emailsSent": 0,
        "smsSent": 0,
        "repliesCount": 0,
        "clickRate": null,
        "followUpSent": 0,
        "autoSend": true,
        "yelpCompliant": true,
        "staticUrl": null
      }
    ],
    "total": 1
  }
}
v1Recursos/Review Invites/postCrear una campaña

Crea una nueva campaña de invitación a reseñas como borrador. locationId es obligatorio; el resto se puede configurar ahora o más tarde con el endpoint de actualización. Use el endpoint de acción para publicarla una vez configurada — esto por sí solo no envía nada.

Crear una campaña

post/api/v1/review-invites/campaigns
review-invite:write
Respuesta
dataobjectopcional
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
404El recurso no se encontró, o no pertenece a su agencia.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
post/api/v1/review-invites/campaigns
Su clave de API
{
  "data": {
    "id": "cm_campaign_1",
    "agencyId": "cm_agency_1",
    "locationId": "cm_loc_1",
    "clientLocationId": "cm_loc_1",
    "name": "Spring Checkup Follow-up",
    "campaignType": "email_sms",
    "channels": "EMAIL",
    "status": "draft",
    "fromEmail": null,
    "replyToEmail": null,
    "emailSubject": null,
    "emailBody": null,
    "smsBody": null,
    "smsReviewSite": null,
    "reviewSites": null,
    "screeningEnabled": false,
    "landingTitle": null,
    "landingContent": null,
    "hideAddress": false,
    "hideBusinessName": false,
    "followups": null,
    "stopFollowupOnClick": false,
    "scheduleAt": null,
    "timezone": null,
    "autoSend": true,
    "staticUrl": null,
    "launchedAt": null,
    "emailHtml": null,
    "thankYouEnabled": false,
    "thankYouSubject": null,
    "thankYouBody": null,
    "thankYouDelayHours": 12,
    "funnelThreshold": 4,
    "funnelStyle": null,
    "lowRankContent": null,
    "hideFeedbackBox": false,
    "ratingMechanism": null,
    "askName": true,
    "askFeedback": true,
    "archivedAt": null,
    "hideImage": false,
    "clientId": "cm_client_1",
    "createdAt": "2026-01-20T09:00:00.000Z",
    "updatedAt": "2026-01-20T09:00:00.000Z",
    "createdByUserId": null,
    "createdByType": "user",
    "archived": false
  }
}
v1Recursos/Review Invites/getObtener una campaña

Devuelve una única campaña por su id.

Obtener una campaña

get/api/v1/review-invites/campaigns/{id}
review-invite:read
Parámetros de consulta
idstringobligatorio
El id de la campaña. Obligatorio.
Respuesta
dataobjectopcional
Errores
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
404El recurso no se encontró, o no pertenece a su agencia.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
get/api/v1/review-invites/campaigns/{id}
Su clave de API
id *
{
  "data": {
    "id": "cm_campaign_1",
    "agencyId": "cm_agency_1",
    "locationId": "cm_loc_1",
    "clientLocationId": "cm_loc_1",
    "name": "Spring Checkup Follow-up",
    "campaignType": "email_sms",
    "channels": "EMAIL",
    "status": "draft",
    "fromEmail": null,
    "replyToEmail": null,
    "emailSubject": "How was your visit?",
    "emailBody": null,
    "smsBody": null,
    "smsReviewSite": null,
    "reviewSites": null,
    "screeningEnabled": false,
    "landingTitle": null,
    "landingContent": null,
    "hideAddress": false,
    "hideBusinessName": false,
    "followups": null,
    "stopFollowupOnClick": false,
    "scheduleAt": null,
    "timezone": null,
    "autoSend": true,
    "staticUrl": null,
    "launchedAt": null,
    "emailHtml": null,
    "thankYouEnabled": false,
    "thankYouSubject": null,
    "thankYouBody": null,
    "thankYouDelayHours": 12,
    "funnelThreshold": 4,
    "funnelStyle": null,
    "lowRankContent": null,
    "hideFeedbackBox": false,
    "ratingMechanism": null,
    "askName": true,
    "askFeedback": true,
    "archivedAt": null,
    "hideImage": false,
    "clientId": "cm_client_1",
    "createdAt": "2026-01-20T09:00:00.000Z",
    "updatedAt": "2026-01-20T09:00:00.000Z",
    "createdByUserId": null,
    "createdByType": "user",
    "archived": false
  }
}
v1Recursos/Review Invites/patchActualizar una campaña

Edita la configuración de una campaña. Indique solo los campos que desea cambiar. Para cambiar el estado del ciclo de vida (publish, stop, clone, archive, unarchive) use el endpoint de acción en lugar de establecer status directamente aquí.

Actualizar una campaña

patch/api/v1/review-invites/campaigns/{id}
review-invite:write
Parámetros de consulta
idstringobligatorio
La campaña a actualizar. Obligatorio.
Cuerpo de la solicitud
namestringopcional
El nombre visible de la campaña.
locationIdstringopcional
La ubicación para la que esta campaña envía invitaciones. Obligatorio al crear.
campaignTypestringopcional
La combinación de canales, p. ej. email, sms, email_sms.
channelsstringopcional
Por qué canales envía la campaña: EMAIL, SMS o SMS_AND_EMAIL. Los requisitos de correo electrónico (dirección de origen, dominio de envío verificado) solo aplican cuando se incluye EMAIL; una campaña solo de SMS necesita en su lugar un número verificado por el operador para su ubicación.
fromEmailstringopcional
La dirección de correo electrónico "de" con la que se envía. Requiere un dominio de envío verificado para poder enviar realmente.
replyToEmailstringopcional
La dirección de correo electrónico de respuesta.
emailSubjectstringopcional
El asunto del correo electrónico.
emailBodyobjectopcional
El cuerpo del correo electrónico, como el JSON de texto enriquecido que produce el editor del creador de campañas.
emailHtmlstringopcional
Alternativa HTML renderizada del cuerpo del correo electrónico.
smsBodystringopcional
El texto del mensaje SMS.
smsReviewSitestringopcional
A qué sitio de reseñas apunta el enlace del SMS.
reviewSitesobjectopcional
El o los sitios de reseñas ofrecidos a los clientes satisfechos, en el formato JSON del creador de campañas.
screeningEnabledbooleanopcional
Si se debe filtrar a los clientes por calificación en estrellas antes de dirigirlos a un sitio de reseñas público.
landingTitlestringopcional
Título mostrado en la página de destino de la campaña.
landingContentstringopcional
Contenido del cuerpo mostrado en la página de destino de la campaña.
hideAddressbooleanopcional
Ocultar la dirección del negocio en la página de destino.
hideBusinessNamebooleanopcional
Ocultar el nombre del negocio en la página de destino.
hideImagebooleanopcional
Ocultar la imagen del negocio en la página de destino.
followupsobjectopcional
Calendario de recordatorios de seguimiento, en el formato JSON del creador de campañas.
stopFollowupOnClickbooleanopcional
Dejar de enviar seguimientos en cuanto el destinatario haga clic en el enlace.
scheduleAtstringopcional
Fecha y hora ISO para la que se debe programar el lanzamiento de la campaña. Déjelo vacío para enviar de inmediato al publicar.
timezonestringopcional
Zona horaria IANA para la programación, p. ej. America/New_York.
autoSendbooleanopcional
Si los nuevos destinatarios reciben el envío automáticamente una vez que la campaña está lanzada.
staticUrlstringopcional
Un slug de URL estático/QR de solicitud de reseña para esta campaña, si se usa en lugar de o junto con el envío por correo electrónico/SMS.
thankYouEnabledbooleanopcional
Si se debe mostrar un seguimiento de agradecimiento después de una reseña positiva.
thankYouSubjectstringopcional
Asunto del correo electrónico de agradecimiento.
thankYouBodystringopcional
Cuerpo del correo electrónico de agradecimiento.
thankYouDelayHoursnumberopcional
Horas de espera antes de enviar el seguimiento de agradecimiento.
funnelThresholdnumberopcional
Umbral de calificación en estrellas que dirige a quien responde al sitio de reseñas público o a feedback privado.
funnelStyleobjectopcional
Estilo de presentación del embudo, en el formato JSON del creador de campañas.
lowRankContentstringopcional
Contenido mostrado a quienes responden con una calificación por debajo de funnelThreshold.
hideFeedbackBoxbooleanopcional
Ocultar el cuadro de feedback de texto libre en la página de destino.
collectModestringopcional
Cómo se recopila el feedback en la página de destino.
ratingMechanismobjectopcional
La configuración del widget de estrellas/calificación, en el formato JSON del creador de campañas.
askNamebooleanopcional
Pedir al destinatario su nombre.
askFeedbackbooleanopcional
Pedir al destinatario feedback de texto libre.
Respuesta
dataobjectopcional
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
404El recurso no se encontró, o no pertenece a su agencia.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
patch/api/v1/review-invites/campaigns/{id}
Su clave de API
id *
Cuerpo de la solicitud
{
  "data": {
    "id": "cm_campaign_1",
    "agencyId": "cm_agency_1",
    "locationId": "cm_loc_1",
    "clientLocationId": "cm_loc_1",
    "name": "Spring Checkup Follow-up (updated)",
    "campaignType": "email_sms",
    "channels": "EMAIL",
    "status": "draft",
    "fromEmail": null,
    "replyToEmail": null,
    "emailSubject": "How was your visit?",
    "emailBody": null,
    "smsBody": null,
    "smsReviewSite": null,
    "reviewSites": null,
    "screeningEnabled": false,
    "landingTitle": null,
    "landingContent": null,
    "hideAddress": false,
    "hideBusinessName": false,
    "followups": null,
    "stopFollowupOnClick": false,
    "scheduleAt": null,
    "timezone": null,
    "autoSend": true,
    "staticUrl": null,
    "launchedAt": null,
    "emailHtml": null,
    "thankYouEnabled": false,
    "thankYouSubject": null,
    "thankYouBody": null,
    "thankYouDelayHours": 12,
    "funnelThreshold": 4,
    "funnelStyle": null,
    "lowRankContent": null,
    "hideFeedbackBox": false,
    "ratingMechanism": null,
    "askName": true,
    "askFeedback": true,
    "archivedAt": null,
    "hideImage": false,
    "clientId": "cm_client_1",
    "createdAt": "2026-01-20T09:00:00.000Z",
    "updatedAt": "2026-01-21T10:00:00.000Z",
    "createdByUserId": null,
    "createdByType": "user",
    "archived": false
  }
}
v1Recursos/Review Invites/postEjecutar una acción del ciclo de vida de la campaña

Ejecuta una acción del ciclo de vida sobre una campaña. publish la lanza — si autoSend está activado, esto empieza a enviar correos o SMS reales de inmediato, y está condicionado por canal: una campaña que incluya EMAIL necesita un dominio de envío verificado para el cliente, y una que incluya SMS necesita un número verificado por el operador para la ubicación. Si alguna de estas condiciones falla, se devuelve un 422 explicativo; aprovisionar un dominio o un número de teléfono es un paso solo disponible en la interfaz, no algo que esta API pueda hacer por usted. stop detiene una campaña activa. clone la duplica como un nuevo borrador. autoSend activa o desactiva el envío automático para los nuevos destinatarios — indique on. archive archiva una campaña detenida; en una que sigue activa esto es un no-op, no un error — la respuesta es {id, skipped: true} en lugar de la campaña completa, así que compruebe skipped en vez de asumir que data siempre es una Campaign. unarchive restaura una campaña archivada.

Ejecutar una acción del ciclo de vida de la campaña

post/api/v1/review-invites/campaigns/{id}/action
review-invite:write
Parámetros de consulta
idstringobligatorio
La campaña sobre la que actuar. Obligatorio.
Cuerpo de la solicitud
opstring (publish | stop | clone | autoSend | archive | unarchive)obligatorio
apiDocs.resources.review-invites.action.paramsOp
onbooleanopcional
apiDocs.resources.review-invites.action.paramsOn
Respuesta
dataobjectopcional
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
404El recurso no se encontró, o no pertenece a su agencia.
422A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
post/api/v1/review-invites/campaigns/{id}/action
Su clave de API
id *
Cuerpo de la solicitud*
{
  "data": {
    "id": "cm_campaign_1",
    "agencyId": "cm_agency_1",
    "locationId": "cm_loc_1",
    "clientLocationId": "cm_loc_1",
    "name": "Spring Checkup Follow-up (copy)",
    "campaignType": "email_sms",
    "channels": "EMAIL",
    "status": "draft",
    "fromEmail": null,
    "replyToEmail": null,
    "emailSubject": "How was your visit?",
    "emailBody": null,
    "smsBody": null,
    "smsReviewSite": null,
    "reviewSites": null,
    "screeningEnabled": false,
    "landingTitle": null,
    "landingContent": null,
    "hideAddress": false,
    "hideBusinessName": false,
    "followups": null,
    "stopFollowupOnClick": false,
    "scheduleAt": null,
    "timezone": null,
    "autoSend": false,
    "staticUrl": null,
    "launchedAt": null,
    "emailHtml": null,
    "thankYouEnabled": false,
    "thankYouSubject": null,
    "thankYouBody": null,
    "thankYouDelayHours": 12,
    "funnelThreshold": 4,
    "funnelStyle": null,
    "lowRankContent": null,
    "hideFeedbackBox": false,
    "ratingMechanism": null,
    "askName": true,
    "askFeedback": true,
    "archivedAt": null,
    "hideImage": false,
    "clientId": "cm_client_1",
    "createdAt": "2026-01-21T10:05:00.000Z",
    "updatedAt": "2026-01-21T10:05:00.000Z",
    "createdByUserId": null,
    "createdByType": "user",
    "archived": false
  }
}
v1Recursos/Review Invites/getListar plantillas de mensajes

Enumera las plantillas de mensajes de invitación a reseñas guardadas por la agencia — contenido reutilizable de correo electrónico/SMS para campañas.

Listar plantillas de mensajes

get/api/v1/review-invites/templates
review-invite:read
Respuesta
dataarray of unknownopcional
Errores
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
get/api/v1/review-invites/templates
Su clave de API
{
  "data": [
    {
      "id": "cm_tmpl_1",
      "name": "Standard follow-up",
      "description": "Default post-visit email template",
      "content": null,
      "assignedLocationIds": [],
      "createdAt": "2026-01-15T09:00:00.000Z"
    }
  ]
}
v1Recursos/Review Invites/postCrear una plantilla de mensaje

Crea una plantilla de mensaje de invitación a reseñas reutilizable. content es el formato JSON de texto enriquecido que produce el editor del creador de campañas.

Crear una plantilla de mensaje

post/api/v1/review-invites/templates
review-invite:write
Respuesta
dataobjectopcional
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
post/api/v1/review-invites/templates
Su clave de API
{
  "data": {
    "id": "cm_tmpl_1",
    "agencyId": "cm_agency_1",
    "name": "Standard follow-up",
    "description": "Default post-visit email template",
    "content": null,
    "assignedLocationIds": [],
    "createdAt": "2026-01-15T09:00:00.000Z",
    "updatedAt": "2026-01-15T09:00:00.000Z"
  }
}
v1Recursos/Review Invites/patchActualizar una plantilla de mensaje

Edita una plantilla. Indique solo los campos que desea cambiar.

Actualizar una plantilla de mensaje

patch/api/v1/review-invites/templates/{id}
review-invite:write
Parámetros de consulta
idstringobligatorio
La plantilla a actualizar. Obligatorio.
Cuerpo de la solicitud
namestringopcional
El nombre visible de la plantilla.
descriptionstringopcional
Una breve descripción de cuándo usar esta plantilla.
contentobjectopcional
El contenido de la plantilla, en el formato JSON de texto enriquecido del creador de campañas.
assignedLocationIdsarray of stringopcional
Ids de ubicación para las que se sugiere esta plantilla. Omítalo para que esté disponible en toda la agencia.
Respuesta
dataobjectopcional
Errores
400A la solicitud le falta un parámetro obligatorio o es inválida de otra forma.
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
404El recurso no se encontró, o no pertenece a su agencia.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
patch/api/v1/review-invites/templates/{id}
Su clave de API
id *
Cuerpo de la solicitud
{
  "data": {
    "id": "cm_tmpl_1",
    "agencyId": "cm_agency_1",
    "name": "Standard follow-up",
    "description": "Default post-visit email template (updated)",
    "content": null,
    "assignedLocationIds": [
      "cm_loc_1"
    ],
    "createdAt": "2026-01-15T09:00:00.000Z",
    "updatedAt": "2026-01-16T09:00:00.000Z"
  }
}
v1Recursos/Review Invites/deleteEliminar una plantilla de mensaje

Elimina una plantilla de forma permanente. Esto no afecta a las campañas que ya usan su contenido — solo elimina la plantilla reutilizable.

Eliminar una plantilla de mensaje

delete/api/v1/review-invites/templates/{id}
review-invite:write
Parámetros de consulta
idstringobligatorio
La plantilla a eliminar. Obligatorio.
Respuesta
dataobjectopcional
deletedbooleanopcional
Errores
401La clave de API falta, es inválida, expiró o fue revocada.
403A la clave le falta el permiso requerido, o no está autorizada para este cliente/ubicación.
404El recurso no se encontró, o no pertenece a su agencia.
429Demasiadas solicitudes. Reintente tras el número de segundos indicado en el encabezado Retry-After.
delete/api/v1/review-invites/templates/{id}
Su clave de API
id *
{
  "data": {
    "ok": true
  }
}