Ir al contenido

Referencia de API

Pipelines y oportunidades

Gestiona tus pipelines, sus etapas y las oportunidades que avanzan por ellas — incluyendo etiquetas, notas y propiedades personalizadas. Todo cuelga de /workspaces/:workspaceId/pipelines, salvo la consulta puntual de una oportunidad por id (/workspaces/:workspaceId/opportunities/:opportunityId).

MétodoRutaDescripción
GET/workspaces/:workspaceId/pipelinesListar pipelines (search, sortBy, order, page, pageSize)
POST/workspaces/:workspaceId/pipelinesCrear pipeline
PATCH/workspaces/:workspaceId/pipelines/reorderReordenar los pipelines del workspace
PATCH/workspaces/:workspaceId/pipelines/:pipelineIdActualizar pipeline
DELETE/workspaces/:workspaceId/pipelines/:pipelineIdEliminar pipeline

reorder reordena los pipelines entre sí (no las etapas dentro de un pipeline): recibe la lista completa de ids en el orden deseado.

Etapas (columnas del pipeline) dentro de un pipeline concreto.

MétodoRutaDescripción
GET/workspaces/:workspaceId/pipelines/:pipelineId/stagesListar etapas del pipeline
POST/workspaces/:workspaceId/pipelines/:pipelineId/stagesCrear etapa
PATCH/workspaces/:workspaceId/pipelines/:pipelineId/stages/:stageIdActualizar etapa (name, color)
DELETE/workspaces/:workspaceId/pipelines/:pipelineId/stages/:stageIdEliminar etapa
MétodoRutaDescripción
GET/workspaces/:workspaceId/pipelines/:pipelineId/opportunities/boardTablero kanban: columnas por etapa, con tope por columna (perStage)
GET/workspaces/:workspaceId/pipelines/:pipelineId/opportunitiesListar oportunidades del pipeline (ver filtros abajo)
POST/workspaces/:workspaceId/pipelines/:pipelineId/opportunitiesCrear oportunidad
GET/workspaces/:workspaceId/pipelines/:pipelineId/opportunities/:opportunityIdObtener oportunidad
PATCH/workspaces/:workspaceId/pipelines/:pipelineId/opportunities/:opportunityIdActualizar oportunidad — cambiar de etapa, asignar responsable, marcar ganada/perdida
DELETE/workspaces/:workspaceId/pipelines/:pipelineId/opportunities/:opportunityIdEliminar oportunidad
GET/workspaces/:workspaceId/opportunities/:opportunityIdObtener una oportunidad por id, sin conocer su pipeline (vista de detalle standalone)

Filtros de GET .../opportunities (query string, todos opcionales): status (OPEN/WON/LOST), stageIds (csv), tagIds (csv), assignedUserIds (csv), contactIds (csv — así se listan las oportunidades de un contacto), search, sortBy (name/createdAt/updatedAt/stage), order (asc/desc), createdAtPeriod/createdAtAmount y updatedAtPeriod/updatedAtAmount (ej. updatedAtPeriod=week&updatedAtAmount=2 = actualizadas en las últimas 2 semanas), page, pageSize.

Cambiar de etapa, asignar responsable y marcar ganada/perdida

Sección titulada «Cambiar de etapa, asignar responsable y marcar ganada/perdida»

Las tres acciones usan el mismo PATCH .../opportunities/:opportunityId, cada una con su campo:

CampoTipoDescripción
stageIdstringMueve la oportunidad a otra etapa (debe pertenecer al mismo pipeline).
assignedUserIdstring | nullAsigna un responsable, o null para dejarla sin asignar.
statusOPEN | WON | LOSTMarca la oportunidad como ganada o perdida (o la reabre con OPEN).
name, contactId, budgetTambién editables en la misma llamada.

Catálogo de etiquetas a nivel workspace, y su asignación a cada oportunidad.

MétodoRutaDescripción
GET/workspaces/:workspaceId/pipelines/opportunity-tagsListar catálogo de etiquetas
POST/workspaces/:workspaceId/pipelines/opportunity-tagsCrear etiqueta (name, color)
PATCH/workspaces/:workspaceId/pipelines/opportunity-tags/:tagIdActualizar etiqueta
DELETE/workspaces/:workspaceId/pipelines/opportunity-tags/:tagIdEliminar etiqueta
GET/workspaces/:workspaceId/pipelines/opportunity-tags/:tagId/opportunitiesListar oportunidades que tienen esa etiqueta
POST/workspaces/:workspaceId/pipelines/:pipelineId/opportunities/:opportunityId/tagsAgregar etiquetas (por tagIds, array) a una oportunidad
DELETE/workspaces/:workspaceId/pipelines/:pipelineId/opportunities/:opportunityId/tags/:tagIdQuitar una etiqueta de una oportunidad

Notas internas propias de la oportunidad — no son las notas del contacto asociado (ver operaciones de contactos).

MétodoRutaDescripción
GET/workspaces/:workspaceId/pipelines/:pipelineId/opportunities/:opportunityId/notesListar notas
POST/workspaces/:workspaceId/pipelines/:pipelineId/opportunities/:opportunityId/notesAgregar una nota (content)
PATCH/workspaces/:workspaceId/pipelines/:pipelineId/opportunities/:opportunityId/notes/:noteIdEditar una nota (content)
DELETE/workspaces/:workspaceId/pipelines/:pipelineId/opportunities/:opportunityId/notes/:noteIdEliminar una nota

Definiciones a nivel workspace y sus valores por oportunidad. Tipos soportados: TEXT, NUMBER, DATE, BOOLEAN.

MétodoRutaDescripción
GET/workspaces/:workspaceId/pipelines/opportunity-schemaSchema de campos nativos de la oportunidad (fuente única de validación)
GET/workspaces/:workspaceId/pipelines/opportunity-custom-propertiesListar propiedades personalizadas definidas
POST/workspaces/:workspaceId/pipelines/opportunity-custom-propertiesCrear una propiedad (name, type, key?, description?, isRequired?)
PATCH/workspaces/:workspaceId/pipelines/opportunity-custom-properties/:propertyIdActualizar name/description/isRequired/order (el type es inmutable)
DELETE/workspaces/:workspaceId/pipelines/opportunity-custom-properties/:propertyIdEliminar la propiedad (falla si alguna oportunidad la usa)
GET/workspaces/:workspaceId/pipelines/opportunity-custom-properties/:propertyId/usageOportunidades que usan la propiedad, con su valor
GET/workspaces/:workspaceId/pipelines/:pipelineId/opportunities/:opportunityId/custom-propertiesValores de las propiedades personalizadas de una oportunidad
PUT/workspaces/:workspaceId/pipelines/:pipelineId/opportunities/:opportunityId/custom-propertiesGuardar en lote (values: [{ propertyId, value }])
PUT/workspaces/:workspaceId/pipelines/:pipelineId/opportunities/:opportunityId/custom-properties/:propertyIdGuardar el valor de una sola propiedad (value)
POST /workspaces/:workspaceId/pipelines/:pipelineId/opportunities
ParámetroTipoDescripción
workspaceIdstringIdentificador del workspace.
pipelineIdstringPipeline donde se crea la oportunidad.
CampoTipoRequeridoDescripción
contactIdstringContacto asociado.
namestringNombre/título del trato.
stageIdstringNoEtapa inicial; por defecto la primera etapa del pipeline.
budgetnumber | nullNoPresupuesto estimado.
statusOPEN | WON | LOSTNoPor defecto OPEN.
assignedUserIdstring | nullNoResponsable de la oportunidad.

Ejemplo — mover de etapa, asignar y marcar ganada

Sección titulada «Ejemplo — mover de etapa, asignar y marcar ganada»
PATCH /workspaces/:workspaceId/pipelines/:pipelineId/opportunities/:opportunityId
CampoTipoRequeridoDescripción
stageIdstringNoNueva etapa dentro del mismo pipeline.
assignedUserIdstring | nullNoNuevo responsable.
statusOPEN | WON | LOSTNoMarca ganada/perdida.