Skip to main content
GET
/
scheduled-documents
Listar documentos programados
curl --request GET \
  --url https://api.tupana.ai/v1/scheduled-documents \
  --header 'Authorization: <api-key>'
{
  "count": 25,
  "next": "https://api.tupana.ai/v1/scheduled-documents?master_entity_id=123&page=2",
  "previous": null,
  "results": [
    {
      "id": 789,
      "sender": {
        "id": 123,
        "name": "Empresa Ejemplo SpA",
        "rut": "76543210-1"
      },
      "receiver": {
        "id": 456,
        "name": "Cliente ABC Ltda",
        "rut": "12345678-9"
      },
      "dte_type": {
        "id": 1,
        "code": "33",
        "description": "Factura Electrónica"
      },
      "frequency": "monthly",
      "frequency_display": "Mensual",
      "day_of_month": 15,
      "day_of_week": null,
      "next_execution": "2024-02-15T10:00:00Z",
      "status": "active",
      "status_display": "Activo",
      "amount": 100000,
      "currency": "CLP",
      "completed_occurrences": 5,
      "max_occurrences": null,
      "details": [
        {
          "id": 1,
          "product_name": "Servicio mensual de consultoría",
          "description": "Consultoría especializada en tecnología",
          "quantity": 1,
          "unit_price": 100000,
          "total": 100000,
          "unit_of_measurement": "UN"
        }
      ],
      "created_at": "2024-01-15T10:00:00Z",
      "updated_at": "2024-01-20T15:30:00Z"
    }
  ]
}
Este endpoint permite obtener una lista paginada de documentos programados de una entidad específica. Los documentos programados son plantillas que se ejecutan automáticamente según una frecuencia definida (diaria, semanal, mensual o trimestral).

Características principales

  • Paginación: Resultados paginados con control de tamaño de página
  • Filtros: Por estado, frecuencia, tipo de DTE y más
  • Gestión completa: Crear, listar, actualizar y eliminar documentos programados
  • Automatización: Los documentos se emiten automáticamente según la programación

Parámetros principales

ParámetroTipoRequeridoDescripción
master_entity_idintegerID de la entidad emisora cuyos documentos programados quieres consultar.
statusstringNoFiltrar por estado del documento programado: active, inactive o completed.
frequencystringNoFiltrar por frecuencia de ejecución: daily, weekly, monthly o quarterly.
dte_typestringNoFiltrar por tipo de DTE (ej: 33 para Factura Electrónica).
pageintegerNoPágina actual, parte de la paginación estándar.
page_sizeintegerNoTamaño de página (máx. 100).

Respuesta exitosa

La respuesta 200 OK incluye un objeto paginado con:
  • count, next, previous para la navegación
  • results: arreglo de documentos programados con información de emisor, receptor, montos, estado, frecuencia, próxima ejecución y detalles

Estados de documentos programados

Los documentos programados pueden tener los siguientes estados:
EstadoDescripción
activeEl documento está activo y se ejecutará según su programación
inactiveEl documento está pausado y no se ejecutará
completedEl documento ha completado todas sus ejecuciones programadas

Frecuencias disponibles

FrecuenciaDescripción
dailySe ejecuta diariamente
weeklySe ejecuta semanalmente
monthlySe ejecuta mensualmente
quarterlySe ejecuta trimestralmente

Paginación

El endpoint soporta paginación mediante los parámetros page y page_size: La respuesta incluye:
  • count: Total de documentos programados
  • next: URL para la siguiente página (si existe)
  • previous: URL para la página anterior (si existe)
  • results: Array de documentos programados en la página actual

Campos de respuesta

Cada documento programado en el array results incluye:
  • id: ID único del documento programado
  • sender: Información de la entidad emisora (id, name, rut)
  • receiver: Información de la entidad receptora (id, name, rut) - puede ser null
  • dte_type: Tipo de documento tributario (id, code, description)
  • frequency: Frecuencia de ejecución (daily, weekly, monthly, quarterly)
  • frequency_display: Frecuencia en formato legible
  • day_of_month: Día del mes para ejecución (1-31, para frecuencias mensual/trimestral)
  • day_of_week: Día de la semana para ejecución (0=Lunes, 6=Domingo, para frecuencia semanal)
  • next_execution: Fecha y hora de la próxima ejecución
  • status: Estado actual del documento (active, inactive, completed)
  • status_display: Estado en formato legible
  • amount: Monto total del documento (number)
  • currency: Moneda del documento (string: CLP, UF, USD, EUR)
  • details: Array de detalles/productos del documento (ver formato abajo)
  • completed_occurrences: Número de veces que se ha ejecutado (integer)
  • max_occurrences: Número máximo de ejecuciones (integer, null = infinito)
  • created_at: Fecha de creación (datetime ISO 8601)
  • updated_at: Fecha de última actualización (datetime ISO 8601)

Formato del campo details

El campo details es un array de objetos que representa los productos o servicios incluidos en el documento programado. Cada elemento del array contiene:
CampoTipoRequeridoDescripción
idintegerNoID único del detalle (solo en respuesta)
product_namestringNombre del producto o servicio
descriptionstringNoDescripción detallada del producto o servicio
quantitynumberCantidad del producto (mínimo 0.01)
unit_pricenumberPrecio unitario del producto (mínimo 0)
totalnumberNoTotal de la línea (calculado automáticamente: quantity × unit_price, solo en respuesta)
unit_of_measurementstringNoUnidad de medida (por defecto: UN)
Ejemplo de formato:
{
  "details": [
    {
      "id": 1,
      "product_name": "Servicio mensual de consultoría",
      "description": "Consultoría especializada en tecnología",
      "quantity": 1,
      "unit_price": 100000,
      "total": 100000,
      "unit_of_measurement": "UN"
    }
  ]
}
Nota: Al crear un documento programado, solo se requieren los campos product_name, quantity y unit_price. El campo total se calcula automáticamente y el id se asigna al crear el registro. Todos los endpoints requieren el parámetro master_entity_id como query parameter y autenticación mediante API Key.

Authorizations

Authorization
string
header
required

API Key para autenticación. Debe proporcionarse en el formato: 'Api-Key YOUR-API-KEY'

Query Parameters

master_entity_id
integer
required

ID de la entidad maestra

Example:

123

status
enum<string>

Filtrar por estado del documento programado

Available options:
active,
inactive,
completed
Example:

"active"

frequency
enum<string>

Filtrar por frecuencia de ejecución

Available options:
daily,
weekly,
monthly,
quarterly
Example:

"monthly"

dte_type
string

Filtrar por tipo de DTE

Example:

"33"

page
integer
default:1

Número de página para paginación

Example:

1

page_size
integer
default:20

Número de elementos por página

Required range: x <= 100
Example:

20

Response

Lista de documentos programados obtenida exitosamente

count
integer

Total de documentos programados

Example:

25

next
string | null

URL de la siguiente página

Example:

"https://api.tupana.ai/v1/scheduled-documents?master_entity_id=123&page=2"

previous
string | null

URL de la página anterior

Example:

null

results
object[]