CRM

Obtener una oportunidad

Devuelve el registro de una oportunidad: el resumen más la descripción, los colaboradores y los presupuestos vinculados.

GET
/api/v1/crm/opportunities/{opportunityId}

Ejemplos de petición

curl https://app.filmo.io/api/v1/crm/opportunities/oppo_8f2a1c \
  --header "Authorization: Bearer $FILMO_API_KEY"
{
  "data": {
    "opportunityId": "opportunity_9f3a2b",
    "identifier": "Example identifier",
    "name": "Example opportunity",
    "status": "open",
    "amount": "120.00",
    "currency": "EUR",
    "pipelineId": "pipeline_9f3a2b",
    "pipelineName": "Example pipeline name",
    "stageId": "stage_9f3a2b",
    "stageName": "Example stage name",
    "stageType": "open",
    "effectiveProbability": 1,
    "weightedAmount": "120.00",
    "daysInStage": 1,
    "expectedCloseDate": "2026-09-01T10:00:00+02:00",
    "contactName": "Example contact name",
    "companyName": "Example company name",
    "ownerName": "Example owner name",
    "source": "inbound_email",
    "createdAt": "2026-09-01T10:00:00+02:00",
    "updatedAt": "2026-09-01T10:00:00+02:00",
    "description": "Example text.",
    "version": 1,
    "collaboratorStaffIds": [
      "collaborator_staff_9f3a2b"
    ],
    "quoteIds": [
      "quote_9f3a2b"
    ],
    "stageHistory": [
      {
        "fromStageId": "from_stage_9f3a2b",
        "toStageId": "to_stage_9f3a2b",
        "toStatus": "Example to status",
        "daysInPrevStage": 1,
        "movedAt": "2026-09-01T10:00:00+02:00",
        "note": "Example text."
      }
    ]
  }
}

Generado a partir del esquema

Con includeHistory=true añade stageHistory, los cambios de etapa del más reciente al más antiguo: es una consulta adicional, así que no viene por defecto.

Autorizaciones

Clave de API como Bearer, con el permiso de abajo. crm:read

Cabeceras

If-None-Matchstring

Lectura condicional: el ETag de la copia que ya tienes. Si el recurso no ha cambiado, la respuesta es 304 sin cuerpo.

Ejemplo:"\"3sT3d9pBvZq4h2N0w8x1YkLmQ7c\""

Parámetros de ruta

opportunityIdstringObligatorio

Identificador de la oportunidad.

Límites: longitud mín. 1

Respuesta

application/json

Respuesta correcta.

Esquema de la respuesta: OpportunityDetailDto

Sobre: OpportunityDetailResponse. meta.warnings solo aparece cuando la operación está obsoleta.

Cabeceras: X-Request-Id · RateLimit-Limit · RateLimit-Remaining · RateLimit-Reset · ETag

dataobject

Detalle completo de una oportunidad del CRM.

Mostrar atributos hijos
data.opportunityIdstring

data.identifierstring

data.namestring

data.statusstring

Opciones disponibles: open, won, lost

data.amountstring

data.currencystring

data.pipelineIdstring

data.pipelineNamestring

data.stageIdstring

data.stageNamestring

data.stageTypestring

Opciones disponibles: open, won, lost

data.effectiveProbabilitynumber

data.weightedAmountstring

data.daysInStageinteger

data.expectedCloseDatestring<date-time>

data.contactNamestring

data.companyNamestring

data.ownerNamestring

data.sourcestring

Opciones disponibles: inbound_email, website_form, referral, cold_outreach, event, social, existing_customer, partner, other

data.createdAtstring<date-time>

data.updatedAtstring<date-time>

data.descriptionstring

data.versioninteger

Límites: mín. 1

data.collaboratorStaffIdsstring[]

data.quoteIdsstring[]

data.stageHistoryobject[]

Mostrar atributos hijos
data.stageHistory.fromStageIdstring

data.stageHistory.toStageIdstring

data.stageHistory.toStatusstring

data.stageHistory.daysInPrevStageinteger

data.stageHistory.movedAtstring<date-time>

data.stageHistory.notestring

metaobject

Información adicional sobre la respuesta.

Mostrar atributos hijos
meta.warningsobject[]

Avisos del ciclo de vida; solo aparecen cuando la operación está obsoleta.

Mostrar atributos hijos
meta.warnings.codestring

Código de aviso estable.

Opciones disponibles: deprecated

meta.warnings.messagestring

Para personas: qué está obsoleto, hasta cuándo y qué usar.

meta.warnings.sunsetstring

Día (YYYY-MM-DD) en que la operación deja de estar disponible.

meta.warnings.replacementstring | null

operationId de la operación que hay que usar en su lugar, o null si no hay ninguna.

Errores

EstadoCódigosSignificado
402addon_requiredEl plan de la cuenta no incluye el add-on que necesita esta operación; requiredAddon lo nombra.
404not_foundNo existe o queda fuera del alcance de la clave de API.

401, 403, 429, 500 los puede devolver cualquier operación. Errores

Obsolescencia

Esta operación no está obsoleta. Las obsolescencias se anuncian con la cabecera Deprecation y una fecha de retirada. Política de versiones

  • CRM

    Oportunidad

    Oportunidad del CRM: en qué embudo y etapa está, por cuánto, con quién y con qué probabilidad.