> ## Documentation Index
> Fetch the complete documentation index at: https://docs.syntage.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Changelog de API

> Actualizaciones de la API, cambios en la documentación y cambios que afectan integraciones

<Update label="10 de julio de 2026" description="Respuestas de conflicto de extracciones" tags={["Extracciones", "Límites de solicitudes"]}>
  La creación de extracciones ahora informa una extracción en curso como un conflicto en lugar de un error de límite de solicitudes.

  ### Creación de extracciones

  **Endpoints afectados:** `POST /extractions`, `POST /extractions/batch`

  * Cuando una extracción equivalente ya está en curso, ambos endpoints ahora devuelven `409 Conflict` en lugar de `429 Too Many Requests`.
  * Trata `409` como un conflicto de extracción. `429` continúa indicando limitación de solicitudes.
  * Las respuestas de conflicto ahora incluyen `conflictingExtractors`, un arreglo con los identificadores de los extractores que ya están en curso. Quita esos extractores antes de volver a intentar la solicitud.
</Update>

<Update label="9 de julio de 2026" description="Etiquetado masivo de facturas" tags={["Etiquetas", "Facturas"]}>
  Ahora puedes agregar o quitar etiquetas en hasta 100 facturas en una sola solicitud, en lugar de etiquetarlas una por una.

  ### Etiquetado masivo de facturas

  **Endpoints afectados:** `POST /invoices/batch/tags`, `POST /invoices/batch/tags/remove`

  * `POST /invoices/batch/tags` agrega una o más etiquetas a cada factura de la solicitud.
  * `POST /invoices/batch/tags/remove` quita una o más etiquetas de cada factura de la solicitud.
  * Ambos endpoints aceptan hasta 100 IRIs de recursos (`resources`, IRIs de facturas en estos endpoints) y 50 IRIs de etiquetas por solicitud, y responden con los IDs de los recursos y etiquetas afectados.
  * Ambas operaciones son atómicas: si alguna factura o etiqueta de la solicitud no se encuentra, no se modifica ninguna factura.
  * Ambas operaciones son idempotentes: agregar una etiqueta que la factura ya tiene, o quitar una que no tiene, no genera cambios, por lo que las solicitudes se pueden reintentar de forma segura.

  ```json theme={null}
  POST /invoices/batch/tags
  {
    "resources": [
      "/invoices/91106968-1abd-4d64-85c1-4e73d96fb997",
      "/invoices/e58e50e8-4913-4046-b48e-11c53575ee7b"
    ],
    "tags": ["/tags/018d9dd9-459f-768e-bc55-a8a72d0d3e9a"]
  }
  ```
</Update>

<Update label="6 de julio de 2026" description="Colores de etiquetas" tags={["Etiquetas", "Entidades"]}>
  Las etiquetas de recursos y las etiquetas de entidad ahora aceptan un color de visualización opcional, para que puedas mostrar cada etiqueta con un color consistente en tu integración.

  ### Color de la etiqueta

  **Endpoints afectados:** `POST /tags`, `PATCH /tags/{id}`, `POST /entities/{entityId}/tags`, `PATCH /entity-tags/{id}`

  * `TagCreateInput`, `TagUpdateInput`, `EntityTagCreateInput` y `EntityTagUpdateInput` ahora aceptan un campo `color` opcional.
  * Envía un color hexadecimal de 7 caracteres con el formato `#RRGGBB`. Los valores se validan y se almacenan en minúsculas.
  * Omite el campo o envía `null` para conservar el color por defecto (`#a3aab5`).
  * Los esquemas de respuesta `Tag` y `EntityTag` ahora incluyen el campo `color`.

  ```json theme={null}
  POST /tags
  {
    "name": "Por revisar",
    "resourceType": "invoice",
    "color": "#22c558"
  }
  ```
</Update>

<Update label="6 de julio de 2026" description="Dirección fiscal estructurada en el insight de Resumen" tags={["Insights", "SAT"]}>
  El insight de Resumen ahora devuelve la dirección fiscal de la entidad en componentes estructurados, además de la cadena de texto ya existente.

  ### Insight de Resumen

  **Endpoints afectados:** `GET /entities/{entityId}/insights/summary`, `GET /entities/{entityId}/insights/summary/export`

  * Se agregó un objeto `address` con los componentes individuales de la dirección fiscal: `streetType`, `streetName`, `streetNumber`, `buildingNumber`, `streetReferences`, `neighborhood`, `locality`, `municipality`, `postalCode` y `state`. Los valores provienen del último Estado Fiscal (Constancia de Situación Fiscal) de la entidad.
  * `address` es `null` cuando la entidad aún no tiene un Estado Fiscal.
  * La cadena `fiscalAddress` existente no cambia, por lo que no se requiere ninguna acción para las integraciones actuales.
  * En las exportaciones CSV y XLSX, los componentes aparecen como columnas `address.<componente>`.
</Update>

<Update label="24 de junio de 2026" description="Documentación del insight de accionistas" tags={["Documentación", "Insights", "Accionistas", "Obsoleto"]}>
  Esta actualización documenta el endpoint normalizado del insight de accionistas y aclara que el insight anterior de accionistas RPC ya no debe usarse para nuevas integraciones.

  ### Insight de accionistas

  **Endpoint afectado:** `GET /entities/{entityId}/insights/shareholders`

  * Se agregó documentación de referencia de la API para el insight de accionistas.
  * El endpoint devuelve relaciones de accionistas para una entidad y soporta `relations.relationType=shareholders` y `relations.relationType=shareholder_of`.
  * El insight de accionistas puede exportarse mediante `GET /entities/{entityId}/insights/{insight}/export` usando `shareholders` como nombre del insight.

  ### Insight de accionistas RPC

  **Endpoint afectado:** `GET /entities/{entityId}/insights/rpc-shareholders`

  * La documentación del insight de accionistas RPC ahora está marcada como obsoleta a favor del insight de accionistas.
  * Esta actualización de documentación no cambia el comportamiento de las respuestas de la API.
</Update>

<Update label="23 de junio de 2026" description="Actualizaciones de la documentación de referencia de la API y del insight de accionistas" tags={["Documentación", "Webhooks", "Insights", "SAT", "RPC", "RUG", "Buró de Crédito", "Verificación de Sociedad", "Syntage Score", "Cambio incompatible"]}>
  Esta actualización amplía las secciones de referencia de la API con descripciones generales de los recursos, descripciones más claras de los endpoints y descripciones más completas de los campos de respuesta. También cambia la forma en que el insight de accionistas RPC selecciona las fuentes y calcula los porcentajes de propiedad.

  ### Recursos de Verificación de Sociedad

  **Endpoints afectados:** `GET /datasources/mx/company-verification/reports/{reportId}/found-entities`, `GET /datasources/mx/company-verification/reports/{reportId}/found-entities/{id}`, `GET /datasources/mx/company-verification/reports/{reportId}/found-entities/{foundEntityId}/powers-timeline`, `GET /datasources/mx/company-verification/reports/{reportId}/cap-table-timeline`

  * Se agregó documentación para listar las entidades encontradas en un reporte de Verificación de Sociedad.
  * Se agregó documentación para recuperar una entidad encontrada específica con sus participaciones en la tabla de capital y sus poderes.
  * Se agregó documentación para la línea de tiempo de poderes de una entidad encontrada.
  * Se agregó documentación para la línea de tiempo de la tabla de capital de un reporte.

  ### Insight de accionistas RPC

  **Endpoint afectado:** `GET /entities/{entityId}/insights/rpc-shareholders` (también reflejado en las exportaciones CSV y XLSX)

  * Cuando la entidad tiene al menos un accionista ingresado desde un reporte de Verificación de Sociedad, la respuesta ahora devuelve únicamente los accionistas provenientes de Verificación de Sociedad. Anteriormente, las filas provenientes del RPC para la misma tabla de capital se devolvían en paralelo y podían entrar en conflicto con el snapshot de verificación.
  * Cuando hay datos de Verificación de Sociedad, los porcentajes de propiedad ahora reflejan los valores registrados en el reporte de verificación. Anteriormente, la respuesta siempre devolvía un valor sintético `shares / sum(shares) * 100`, lo que producía porcentajes incorrectos para estructuras de `partes sociales` donde el número de acciones es cero.
  * Cuando la entidad no tiene accionistas provenientes de Verificación de Sociedad, el comportamiento no cambia: se devuelven las filas provenientes del RPC y los porcentajes se calculan a partir del número de acciones.
  * **Acción requerida:** las integraciones que muestran el campo `sources` deben estar preparadas para renderizar `company_verification` además de `rpc_socio` y `manual`. Las integraciones que recalculan los porcentajes a partir de `shares` deben cambiar al campo `percentage` devuelto por la API.

  ### Webhooks

  **Endpoints afectados:** `GET /webhook-endpoints`, `POST /webhook-endpoints`, `GET /webhook-endpoints/{id}`, `PUT /webhook-endpoints/{id}`, `DELETE /webhook-endpoints/{id}`, `GET /webhook-requests`, `GET /webhook-requests/{id}`

  * La referencia de la API ahora incluye una descripción general de Webhooks que explica los endpoints de webhook, las solicitudes de webhook, el estado de las entregas y la verificación de firmas.
  * La documentación de endpoints de webhook ahora describe los requisitos de la URL del endpoint, los eventos suscritos, el estado habilitado, el tipo de contenido y los secretos de firma.
  * La documentación de solicitudes de webhook ahora describe los intentos de entrega, los códigos de estado de respuesta, el tiempo de respuesta, las referencias al endpoint y los filtros de eventos.

  ### Insights

  **Endpoints afectados:** `GET /entities/{entityId}/insights/{insight}/export`, `GET /insights/metrics/scores/syntage/distribution`, `GET /entities/{entityId}/insights/metrics/buro-de-credito/summary`, `GET /entities/{entityId}/insights/metrics/buro-de-credito/summary/export`

  * La referencia de la API ahora incluye una descripción general de Insights que explica cómo están organizados los endpoints de insights y cómo se usan los parámetros de consulta `options[...]`.
  * La referencia de la API ahora documenta el endpoint de exportación de insights basado en entidad para descargar los insights soportados como archivos CSV o XLSX.
  * La referencia de la API ahora incluye los endpoints de insight de distribución del Syntage Score y de resumen de Buró de Crédito.

  ### Syntage Score

  **Endpoint afectado:** `POST /entities/{entityId}/datasources/syntage/score/calculate`

  * La referencia de la API ahora explica los datos de declaración anual y de cumplimiento fiscal requeridos antes de calcular el Syntage Score para una entidad.
  * La documentación del endpoint de cálculo ahora deja claro que el endpoint inicia la generación del score y devuelve `201 Created` cuando el cálculo queda en cola.

  ### Recursos de Buró de Crédito

  **Endpoints afectados:** `GET /entities/{entityId}/datasources/mx/buro-de-credito/reports`, `GET /datasources/mx/buro-de-credito/reports/{id}`, `GET /datasources/mx/buro-de-credito/authorizations`, `GET /entities/{entityId}/datasources/mx/buro-de-credito/authorizations`, `POST /entities/{entityId}/datasources/mx/buro-de-credito/authorizations`, `GET /datasources/mx/buro-de-credito/authorizations/{id}`, `DELETE /datasources/mx/buro-de-credito/authorizations/{id}`

  * La referencia de la API ahora explica cómo se crean los reportes de Buró de Crédito con el extractor `buro_de_credito_report`.
  * La documentación de reportes de Buró de Crédito ahora describe los principales campos de respuesta, incluidos el proveedor, el tipo de producto, el ID de reporte del proveedor, los datos del reporte parseados, el score, los archivos generados y las marcas de tiempo.
  * La referencia de la API ahora incluye el endpoint a nivel de organización para listar autorizaciones de Buró de Crédito.
  * La documentación de autorizaciones de Buró de Crédito ahora describe los campos de consentimiento, RFC, domicilio, vigencia, origen e identidad de la entidad devueltos por la API.
  * El endpoint para crear autorizaciones ahora documenta con más detalle los cuerpos de solicitud para persona y empresa.

  ### Recursos del RPC

  **Endpoints afectados:** `GET /entities/{entityId}/datasources/mx/rpc/entidades`, `GET /datasources/mx/rpc/entidades/{id}`, `GET /entities/{entityId}/datasources/mx/rpc/actos`, `GET /rpc/actos/{id}`, `GET /datasources/rpc/socios/{id}`

  * Se agregó una página de descripción general del RPC que explica cómo se relacionan los registros del RPC con entidades, extracciones, actos, socios y descargas de archivos.
  * Se agregaron páginas de descripción general para entidades, actos y socios del RPC.
  * Se agregó documentación para listar los actos del RPC extraídos para una entidad.
  * Se agregó documentación para recuperar un acto del RPC por ID.
  * Se agregó documentación para recuperar un socio del RPC por ID.
  * Se actualizó la documentación de los endpoints de entidades del RPC para usar las rutas actuales `/datasources/mx/rpc/entidades` y `/entities/{entityId}/datasources/mx/rpc/entidades`.
  * Se ampliaron las descripciones de los campos de respuesta de entidad, acto y socio del RPC.

  ### Recursos del RUG

  **Endpoints afectados:** `GET /entities/{entityId}/datasources/rug/operaciones`, `GET /datasources/rug/operaciones/{id}`, `GET /entities/{entityId}/datasources/rug/garantias`, `GET /datasources/rug/garantias/{id}`

  * Se agregó una página de descripción general del RUG que explica cómo encajan las garantías, operaciones, extracciones y descargas de archivos del RUG.
  * Se agregaron páginas de descripción general para operaciones y garantías del RUG.
  * Se ampliaron las descripciones de los endpoints de operaciones y garantías del RUG.
  * Se ampliaron las descripciones de los campos de respuesta de operaciones y garantías del RUG.

  ### Recursos del SAT

  **Endpoints afectados:** `GET /credentials`, `POST /credentials`, `GET /credentials/{id}`, `DELETE /credentials/{id}`, `POST /credentials/{id}/revalidate`, `GET /entities/{entityId}/invoices`, `GET /invoices/{id}`, `POST /invoices/{id}/tags`, `DELETE /invoices/{invoiceId}/tags/{tagId}`, `GET /invoices/{id}/cfdi`, `GET /datasources/mx/sat/cfdis/{uuid}`, `GET /invoices/payments`, `GET /invoices/payments/{id}`, `GET /entities/{entityId}/invoices/payments`, `GET /invoices/{id}/payments`, `GET /invoices/batch-payments`, `GET /invoices/batch-payments/{id}`, `GET /invoices/{id}/batch-payments`, `GET /entities/{entityId}/invoices/line-items`, `GET /invoices/{invoiceId}/line-items`, `GET /invoices/line-items/{id}`, `GET /invoices/relations/{id}`, `GET /invoices/{invoiceId}/relations`, `GET /entities/{entityId}/invoices/{invoiceId}/relations`, `GET /invoices/credit-notes`, `GET /entities/{entityId}/invoices/credit-notes`, `GET /invoices/credit-notes/{id}`, `GET /invoices/{invoiceId}/issued-credit-notes`, `GET /invoices/{invoiceId}/applied-credit-notes`, `GET /entities/{entityId}/tax-retentions`, `GET /tax-retentions/{id}`, `GET /tax-retentions/{id}/cfdi`, `GET /entities/{entityId}/tax-returns`, `GET /tax-returns/{id}`, `GET /tax-returns/{id}/pdf`, `GET /tax-returns/{id}/data`, `GET /tax-status`, `GET /entities/{entityId}/tax-status`, `GET /tax-status/{id}`, `GET /entities/{entityId}/tax-compliance-checks`, `GET /tax-compliance-checks/{id}`, `GET /entities/{entityId}/electronic-accounting-records`, `GET /electronic-accounting-records/{id}`, `GET /entities/{entityId}/datasources/mx/sat/certificados`, `GET /datasources/mx/sat/certificados/{id}`

  * Se agregó una página de descripción general del SAT que explica cómo se relacionan los recursos del SAT con entidades, extracciones y descargas de archivos.
  * Se agregaron páginas de descripción general para credenciales, conceptos de factura, relaciones de factura, notas de crédito, retenciones de impuestos, declaraciones de impuestos, opinión de cumplimiento, registros contables electrónicos y certificados del SAT.
  * Se agregaron guías de extracción a las descripciones generales de los recursos del SAT para que cada recurso respaldado por una extracción explique el extractor a usar y dónde leer los registros extraídos.
  * Se actualizó la descripción general de extracciones para enfocarse en el flujo de extracción en lugar de duplicar listas de opciones específicas por extractor.
  * Se ampliaron las descripciones generales existentes de facturas, pagos de facturas, pagos en lote de facturas y verificaciones de cumplimiento fiscal con descripciones de recursos más claras.
  * Se actualizaron los resúmenes y descripciones de endpoints para usar de manera consistente las palabras `List` y `Retrieve` y un lenguaje basado en entidades.
  * Se agregó documentación para listar las notas de crédito extraídas para una entidad.
  * Se agregó documentación para relaciones de factura, descargas de PDF de declaraciones de impuestos, recuperación de CFDI parseado del SAT y el listado superior de opinión de cumplimiento.
  * Se corrigió la ruta documentada para recuperar notas de crédito para que use `/invoices/credit-notes/{id}`.
  * Se corrigió la ruta documentada para recuperar conceptos de factura para que use `/invoices/line-items/{id}`.
  * Se agregaron descripciones de campos para los campos de respuesta de certificado del SAT, credencial, pago de factura, pago en lote de factura, concepto de factura, retención de impuestos, declaración de impuestos, verificación de cumplimiento fiscal, opinión de cumplimiento y régimen fiscal.
  * Se renombraron las páginas de documentación de certificados del SAT de slugs `get` a slugs `list` y `retrieve`, con redirecciones desde las URLs de documentación anteriores.
</Update>

<Update label="22 de junio de 2026" description="Actualizaciones de la API del estado de resultados" tags={["Insights", "Cambio incompatible"]}>
  ### Agrupación de utilidad/pérdida en el estado de resultados

  Esta actualización cambia la forma de la respuesta del insight de estado de resultados.

  **Endpoint afectado:** `GET /entities/{entityId}/insights/metrics/income-statement`

  * En el formato **2022** y en los formatos auditados del estado de resultados, cada par coincidente de `Utilidad` (ganancia) y `Pérdida` ahora se devuelve bajo una única fila padre de agrupación en lugar de como dos filas de nivel superior. El par aparece como dos entradas dentro del arreglo `children` del padre, y el `Total` por año del padre refleja el lado poblado.
  * Los cuatro pares que se agrupan coinciden con el comportamiento de larga data del formato **2014**: `bruta`, `de operación`, `antes de impuestos` y `neta`. El par `operaciones continuas` se deja plano intencionalmente.
  * **Cambio incompatible para consumidores de las exportaciones JSON, CSV y XLSX de los formatos 2022 y auditados.** Las integraciones que leen las filas de utilidad/pérdida por nombre de categoría en el nivel superior ahora deben leerlas desde el arreglo `children` del padre de agrupación, o sumar el `Total` del padre directamente. La respuesta del formato **2014** no cambia.
  * El padre de agrupación en sí no tiene una ruta de concepto subyacente del SAT. Su `Total` se calcula a partir de sus hijos y las filas hijas conservan sus categorías y totales originales.

  ### Convención de signo para salidas en el estado de resultados

  Esta actualización cambia la convención de signo de los valores del insight de estado de resultados.

  **Endpoints afectados:** `GET /entities/{entityId}/insights/metrics/income-statement` (formatos `2022` y `audited-financial-statements`; también reflejado en las exportaciones CSV y XLSX)

  * Las líneas de costo, gasto, pérdida, impuesto y cargo financiero ahora se devuelven como valores **negativos**, coincidiendo con el comportamiento de larga data del formato `2014`. Anteriormente, estas líneas de salida se devolvían como positivas en los formatos `2022` y `audited-financial-statements`.
  * Las líneas de ingresos, utilidades y otras entradas siguen siendo positivas. Las secciones netas o mixtas conservan su signo natural.
  * **Acción requerida:** las integraciones que consumían estos formatos como magnitudes positivas y aplicaban su propio signo deben dejar de negar las salidas por sí mismas. Los valores ya llevan el signo correcto. La magnitud absoluta de cada línea no cambia.
</Update>

<Update label="18 de junio de 2026" description="Actualizaciones de documentación de Otros recursos" tags={["Documentación", "Otros recursos"]}>
  Esta actualización de documentación mejora la sección de referencia de la API para flujos especializados de propiedad, verificación de antecedentes, verificación de empresas y búsqueda de direcciones.

  ### Otros recursos

  **Endpoint afectado:** `GET /datasources/mx/addresses/{postalCode}`

  * La búsqueda de direcciones de México se movió de Miscellaneous a Otros recursos.
  * Accionistas, verificaciones de antecedentes y reportes de Verificación de Sociedad ahora incluyen páginas de descripción general que explican el propósito de cada grupo de recursos.
  * Los títulos de endpoints de accionistas, verificaciones de antecedentes y reportes de Verificación de Sociedad ahora usan de manera consistente las palabras `List`, `Retrieve` y `Download`, con descripciones ampliadas de endpoints y campos.
  * La documentación de búsqueda de direcciones de México ahora explica que las direcciones de Buró de Crédito y Buró Empresas deben coincidir con el catálogo de direcciones por código postal, que un código postal puede devolver varias colonias y describe los campos de dirección devueltos por el endpoint.
</Update>

<Update label="17 de junio de 2026" description="Actualizaciones de la API de insights" tags={["Insights"]}>
  Esta actualización agrega el endpoint del insight de Intereses Moratorios y actualiza las opciones soportadas para los endpoints de insights existentes.

  ### Insight de Intereses Moratorios

  **Endpoint afectado:** `GET /entities/{entityId}/insights/moratory-interest`

  * Se agregó el [endpoint del insight de Intereses Moratorios](/api-reference/moratory-interest-insight/get-moratory-interest).
  * El endpoint devuelve los cargos por intereses moratorios para una entidad, incluyendo KPIs de resumen, totales mensuales, totales mensuales por institución financiera y totales a nivel de institución.
  * Los indicadores de riesgo del insight de Resumen pueden incluir `moratoryInterest` cuando el insight de Intereses Moratorios está habilitado.

  ### Insights de Egresos e Ingresos por Ventas

  **Endpoints afectados:** `GET /entities/{entityId}/insights/expenditures`, `GET /entities/{entityId}/insights/sales-revenue`

  * El valor `products` se eliminó de los valores permitidos del parámetro de consulta `options[type]` en ambos endpoints. Las solicitudes que anteriormente enviaban `options[type]=products` ya devolvían la misma respuesta que `options[type]=total`, por lo que las integraciones existentes que dependen de esa respuesta siguen funcionando sin cambios.
  * Para desgloses a nivel de producto, usa los endpoints del insight de Productos y Servicios (`GET /entities/{entityId}/insights/products-and-services-bought` y `GET /entities/{entityId}/insights/products-and-services-sold`).
  * Las descripciones de los campos `dimension` y `label` en los esquemas de respuesta se actualizaron para reflejar que `products` ya no es una agrupación soportada.
</Update>

<Update label="16 de junio de 2026" description="Actualizaciones de la documentación de la API" tags={["Documentación", "Recursos principales", "Guías", "BIL"]}>
  Esta actualización de documentación amplía la referencia de la API y las guías para integraciones basadas en entidades, recursos principales y reportes BIL. Los endpoints existentes basados en RFC siguen disponibles donde ya estaban soportados. Las nuevas funciones de la API se documentan con URLs basadas en entidades y requieren IDs de entidad.

  ### Reportes BIL

  **Endpoints afectados:** `GET /entities/{entityId}/datasources/bil/reports`, `GET /datasources/bil/reports/{id}`

  * La referencia de la API ahora incluye el endpoint para listar los reportes BIL generados para una entidad.
  * La referencia de la API ahora incluye el endpoint para recuperar un único reporte BIL por ID de reporte.
  * La documentación de reportes BIL ahora describe los principales campos de respuesta, incluidos el folio del reporte, el nombre buscado, la calificación máxima, la respuesta parseada del proveedor, el archivo XML y el archivo PDF.

  ### Entidades, identificadores, etiquetas y eventos

  **Endpoints afectados:** `GET /entities`, `POST /entities`, `GET /entities/{entityId}`, `PATCH /entities/{entityId}`, `DELETE /entities/{entityId}`, `GET /entities/{entityId}/events`, `GET /entities/{entityId}/identifiers`, `POST /entities/{entityId}/identifiers`, `GET /entities/{entityId}/tags`, `POST /entity-tags`, `GET /entity-tags/{id}`, `PATCH /entity-tags/{id}`, `DELETE /entity-tags/{id}`, `GET /tags`, `POST /tags`, `PATCH /tags/{id}`, `DELETE /tags/{id}`

  * La referencia de la API ahora incluye páginas de descripción general y endpoints de entidades que explican cómo se crean, recuperan, actualizan, eliminan y se usan como recurso padre de los registros de las fuentes de datos.
  * La documentación de identificadores de entidad ahora explica cómo se pueden proporcionar identificadores RFC y CURP al crear una entidad o agregarse posteriormente.
  * La documentación de etiquetas de entidad y etiquetas ahora explica cómo se pueden usar las etiquetas para segmentación, segmentación del planificador de extracciones, monitoreo y filtrado de entidades en tu propio producto.
  * La documentación de eventos de entidad ahora explica cómo recuperar eventos de una entidad específica además de usar la entrega por webhook.

  ### Archivos y exportaciones

  **Endpoints afectados:** `GET /files/{id}`, `GET /files/{id}/download`, `POST /exports`, `GET /exports/{id}`

  * La documentación de archivos ahora explica los metadatos de archivos, los tipos de archivo, los nombres de archivo, los tipos MIME y cuándo usar el endpoint de descarga para el contenido del archivo.
  * La documentación de exportaciones ahora explica el flujo de exportación asíncrona desde la creación hasta los estados terminales.
  * La documentación de exportaciones ahora muestra que las exportaciones completadas devuelven una referencia de archivo que puede descargarse mediante el endpoint de descarga de archivos.

  ### Extracciones, planificadores y reglas del planificador

  **Endpoints afectados:** `GET /extractions`, `GET /extractions/{id}`, `POST /extractions/{id}/stop`, `GET /schedulers`, `POST /schedulers`, `GET /schedulers/{id}`, `PATCH /schedulers/{id}`, `DELETE /schedulers/{id}`, `POST /schedulers/rules`, `GET /schedulers/rules/{id}`, `PATCH /schedulers/rules/{id}`, `DELETE /schedulers/rules/{id}`

  * La documentación de extracciones ahora cubre el ciclo de vida de la extracción, los estados, el comportamiento de reintento, el comportamiento de extracciones duplicadas y las descripciones de extractores específicos por fuente de datos.
  * BIL ahora se incluye en la lista documentada de extractores.
  * La documentación de planificadores y reglas del planificador ahora explica con más detalle el comportamiento de las extracciones recurrentes.

  ### Guías

  **Área afectada:** Navegación de guías y documentación conceptual

  * Las guías ahora incluyen orientación sobre URLs basadas en entidades que explica los IDs de entidad y la compatibilidad con URLs heredadas basadas en RFC.
  * La guía de entornos ahora describe el comportamiento de Sandbox y Producción a través de las fuentes de datos de Syntage.
  * Las guías de ID de solicitud y de limitación de tasa ahora incluyen ejemplos de encabezados de respuesta y casos de uso para solución de problemas.
  * La orientación sobre filtrado de propiedades ahora incluye ejemplos de sintaxis para seleccionar campos de recursos y objetos relacionados.
  * La documentación del catálogo del SAT ahora incluye las áreas del catálogo cubiertas por la API y ejemplos de valores comunes del catálogo CFDI.
  * La orientación de validación de webhooks ahora incluye ejemplos en PHP, JavaScript/TypeScript y Python para verificar firmas de solicitudes.
  * Se actualizó la guía de flujo de integración para explicar la validación de credenciales, la creación de extracciones, el seguimiento del estado de las extracciones, la entrega por webhook y la recuperación de archivos como un flujo conectado.
  * Se aclaró que el onboarding embebido de entidades es para integraciones que necesitan la experiencia de onboarding dentro de su propio sitio en lugar de redirigir a Syntage.
  * Se mantuvo disponible la documentación obsoleta del widget para los usuarios existentes del widget mientras se dirige a las nuevas integraciones hacia el onboarding embebido de entidades.
  * Se actualizó la documentación introductoria para describir la API de Syntage a través de SAT, RUG, RPC, BIL, Buró de Crédito, Buró Empresas, Infonavit y más.
</Update>

<Update label="28 de junio de 2020" description="Versión de API 2020-06-28" tags={["Versión de API", "Cambio incompatible"]}>
  Esta versión elimina campos de respuesta obsoletos y actualiza varios identificadores de recursos para usar IDs de API estables.

  ### Factura

  **Endpoints afectados:** `GET /invoices/{id}`, `GET /taxpayers/{taxpayerId}/invoices`

  * La propiedad `amount` se eliminó de las respuestas de la API. Usa la propiedad `total` en su lugar.
  * Se eliminó la recuperación por `uuid` de la factura en `/invoices/{id}`. Para recuperar una factura, usa el `id` de la factura en el endpoint especificado. Para encontrar una factura usando su `uuid`, filtra la colección de facturas en `/taxpayers/{taxpayerId}/invoices?uuid[]={uuid}`.
  * Anteriormente, la propiedad `@iri` de una factura apuntaba al recurso usando `uuid`, como `/invoices/{uuid}`. Ahora apunta usando su `id`, como `/invoices/{id}`.

  ### Vínculo

  **Endpoint afectado:** `GET /links`

  * Se eliminó el filtrado de vínculos por `status`. Usa `credential.status` en su lugar. Por ejemplo, usa `GET /links?credential.status[]=active` en lugar de `GET /links?status[]=active`.

  ### Declaración de impuestos

  **Endpoints afectados:** `GET /tax-returns/{id}`, `GET /taxpayers/{taxpayerId}/tax-returns`

  * Se eliminó la recuperación por `operationNumber` de la declaración de impuestos en `/tax-returns/{id}`. Para recuperar una declaración de impuestos, usa el `id` de la declaración en el endpoint especificado. Para encontrar una declaración de impuestos usando su `operationNumber`, filtra la colección en `/taxpayers/{taxpayerId}/tax-returns?operationNumber[]={operationNumber}`.
  * Anteriormente, la propiedad `@iri` de una declaración de impuestos apuntaba al recurso usando `operationNumber`, como `/tax-returns/{operationNumber}`. Ahora apunta a su `id`, como `/tax-returns/{id}`.

  ### Evento

  **Endpoints afectados:** `GET /events`, `GET /events/{id}`

  * Para los eventos asociados a una `tax-return`, la propiedad `@iri` ahora apunta a `/tax-returns/{id}` en lugar del anterior `/tax-returns/{operationNumber}`.
  * Para los eventos asociados a una `invoice`, la propiedad `@iri` ahora apunta a `/invoices/{id}` en lugar del anterior `/invoices/{uuid}`.

  ### Extracción

  **Endpoints afectados:** `GET /extractions`, `GET /extractions/{id}`

  * La propiedad `periodFrom` se eliminó. Usa `options.period.from` en su lugar.
  * La propiedad `periodTo` se eliminó. Usa `options.period.to` en su lugar.

  ### Archivo

  **Endpoint afectado:** `GET /file/{id}`

  * Para los archivos asociados a una `tax-return`, la propiedad `@iri` ahora apunta a `/tax-returns/{id}` en lugar del anterior `/tax-returns/{operationNumber}`.
  * Para los archivos asociados a una `invoice`, la propiedad `@iri` ahora apunta a `/invoices/{id}` en lugar del anterior `/invoices/{uuid}`.

  ### Prueba esta versión

  Envía el encabezado `Accept-Version` con cualquier solicitud para probar esta versión de la API:

  ```bash theme={null}
  curl -i 'https://api.syntage.com/taxpayers/{taxpayerId}/invoices' \
    --header 'Accept-Version: 2020-06-28' \
    --header 'X-Api-Key: {apiKey}'
  ```
</Update>
