/m2m/v1. Envía Authorization: Bearer <clave>. La clave determina el tenant.
La API usa crm_sales_opportunities (tarjetas), crm_sales_pipelines (configuración publicada) y crm_sales_audit (actividad). Los contactos siguen en leads y los seguimientos en follow_ups.
Con crm:sales:read puedes consultar:
GET /crm/sales/configuration: configuración publicada, versión y estado; no incluye borradores.GET /crm/sales/opportunities: tarjetas paginadas.GET /crm/sales/opportunities/{opportunityId}: detalle y últimas 50 actividades.GET /crm/sales/opportunities/{opportunityId}/contact: contacto vinculado por leadId.GET /crm/sales/opportunities/{opportunityId}/follow-ups: seguimientos de esa oportunidad; limit y cursor.
limit (hasta 100), cursor, stageId, status, group=closed e includeTotal. No combines el grupo cerrado con stageId/status. Si cambia la versión publicada, un cursor puede devolver 409: recarga y reinicia la paginación.
PATCH /crm/sales/opportunities/{opportunityId} requiere crm:sales:write:
restoreAi:true con fieldId para liberar un campo, o sin fieldId para liberar la etapa. Una etapa terminal cierra la tarjeta; las tarjetas cerradas no se reabren. Se conserva la invalidación de seguimientos del CRM.
No se crean tarjetas, publican pipelines ni envían seguimientos. Los eventos crm.opportunity.created y crm.opportunity.updated notifican IDs y cambios de revisión/etapa/estado; no incluyen valores capturados.