Presupuestos

Obtener un presupuesto

Devuelve el detalle de un presupuesto con su versión activa aplanada (estado documental y comercial).

GET
/api/v1/quotes/{quoteId}

Ejemplos de petición

curl https://app.filmo.io/api/v1/quotes/quot_8f2a1c \
  --header "Authorization: Bearer $FILMO_API_KEY"
{
  "data": {
    "id": "quote_9f3a2b",
    "quoteNumber": "2026-0001",
    "versionNumber": 1,
    "status": "draft",
    "operativeStatus": "pending",
    "issueDate": "2026-09-01T08:00:00.000Z",
    "validUntil": "2026-09-01T08:00:00.000Z",
    "startDate": "2026-09-01T08:00:00.000Z",
    "endDate": "2026-09-01T08:00:00.000Z",
    "currency": "EUR",
    "contact": {
      "id": "contact_9f3a2b",
      "name": "Example contact"
    },
    "orderId": "order_9f3a2b",
    "orderNumber": "2026-0001",
    "projectId": "project_9f3a2b",
    "subTotal": "120.00",
    "discountTotal": "120.00",
    "taxesPrice": "120.00",
    "netPrice": "120.00",
    "grossPrice": "120.00",
    "totalPaid": "120.00",
    "createdAt": "2026-09-01T08:00:00.000Z",
    "updatedAt": "2026-09-01T08:00:00.000Z",
    "projectName": "Example project name",
    "taxBreakdown": [
      {
        "taxType": "120.00",
        "label": "Main",
        "rate": 1,
        "baseAmount": "120.00",
        "amount": "120.00"
      }
    ]
  }
}

Generado a partir del esquema

Autorizaciones

Clave de API como Bearer, con el permiso de abajo. quotes: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

quoteIdstringObligatorio

Identificador del presupuesto.

Límites: longitud mín. 1

Respuesta

application/json

Respuesta correcta.

Esquema de la respuesta: QuoteDetailDto

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

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

dataobject

El presupuesto completo, tal como lo devuelve la API.

Mostrar atributos hijos
data.idstring

Identificador único del presupuesto (contenedor).

data.quoteNumberstring

Número de presupuesto legible.

data.versionNumberinteger

Número de la versión activa del presupuesto.

data.statusstring

Estado del ciclo de vida del documento de la versión activa: draft o validated (validado y numerado).

Opciones disponibles: draft, validated

data.operativeStatusstring

Estado comercial de la versión activa: pending (a la espera de respuesta), confirmed (aceptada), cancelled (rechazada o cancelada) o superseded (sustituida).

Opciones disponibles: pending, confirmed, cancelled, superseded

data.issueDatestring<date-time> | null

Fecha de emisión de la versión activa en ISO 8601 con desfase; null si no se ha emitido.

data.validUntilstring<date-time> | null

Fecha de validez del presupuesto en ISO 8601 con desplazamiento; null si no se ha fijado.

data.startDatestring<date-time>

Inicio del periodo de alquiler presupuestado en ISO 8601 con desplazamiento.

data.endDatestring<date-time>

Fin del periodo de alquiler presupuestado en ISO 8601 con desplazamiento.

data.currencystring

Divisa del presupuesto como código ISO 4217 (por ejemplo "EUR").

data.contactobject | null

Referencia compacta al contacto del presupuesto; null si no hay.

Mostrar atributos hijos
data.contact.idstring

Identificador único del contacto.

data.contact.namestring

Nombre del contacto.

data.orderIdstring | null

Identificador del pedido vinculado; null si no está vinculado.

data.orderNumberstring | null

Número del pedido vinculado; null si no está vinculado.

data.projectIdstring | null

Identificador del proyecto vinculado; null si no está vinculado.

data.subTotalstring

Subtotal antes de descuentos e impuestos, como cadena decimal "1234.50" (ROUND_HALF_UP).

Límites: patrón ^-?\d+\.\d{2}$

data.discountTotalstring

Total de descuentos como cadena decimal "1234.50" (ROUND_HALF_UP).

Límites: patrón ^-?\d+\.\d{2}$

data.taxesPricestring

Total de impuestos como cadena decimal "1234.50" (ROUND_HALF_UP).

Límites: patrón ^-?\d+\.\d{2}$

data.netPricestring

Base imponible (neto antes de impuestos) como cadena decimal "1234.50" (ROUND_HALF_UP).

Límites: patrón ^-?\d+\.\d{2}$

data.grossPricestring

Total con impuestos, como cadena decimal "1234.50" (ROUND_HALF_UP).

Límites: patrón ^-?\d+\.\d{2}$

data.totalPaidstring | null

Importe cobrado contra el presupuesto como cadena decimal "1234.50" (ROUND_HALF_UP); null si no consta.

Límites: patrón ^-?\d+\.\d{2}$

data.createdAtstring<date-time>

Fecha de creación del contenedor en ISO 8601 con desplazamiento.

data.updatedAtstring<date-time>

Fecha de la última actualización en ISO 8601 con desplazamiento.

data.projectNamestring | null

Nombre del proyecto vinculado; null si no está vinculado.

data.taxBreakdownobject[] | null

Desglose de impuestos por tipo; null si no se ha calculado.

Mostrar atributos hijos
data.taxBreakdown.taxTypestring

Clave del tipo de impuesto (por ejemplo "IVA_21").

data.taxBreakdown.labelstring

Etiqueta de impuesto legible.

data.taxBreakdown.ratenumber

Tipo impositivo aplicado, como porcentaje (por ejemplo 21 para el 21%).

data.taxBreakdown.baseAmountstring

Base imponible sobre la que se aplica el impuesto, como cadena decimal "1234.50" (ROUND_HALF_UP).

Límites: patrón ^-?\d+\.\d{2}$

data.taxBreakdown.amountstring

Importe del impuesto como cadena decimal "1234.50" (ROUND_HALF_UP).

Límites: patrón ^-?\d+\.\d{2}$

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
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

  • Alquileres

    Presupuesto

    El presupuesto, tal como lo devuelve la API.