Saltar al contenido principal

Documentation Index

Fetch the complete documentation index at: https://docs-attestly.code4source.com/llms.txt

Use this file to discover all available pages before exploring further.

Puedes pasar un ruleset inline en cada llamada a /v1/evaluate, o guardarlo una vez en el catálogo y referenciarlo por name@version.
  • Compartido entre aplicaciones — el mismo ruleset llamado por múltiples servicios o entornos.
  • Auditable — las versiones guardadas son inmutables, así que un verdict guardado siempre puede reproducirse a partir de (name, version) más el input.
  • Requests más limpias — tu cliente envía un id corto en vez del documento completo.

Crear un ruleset

curl -X POST https://api-attestly.code4source.com/v1/rulesets \
  -H "Authorization: Bearer atk_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "name": "br-rural-credit",
    "version": 1,
    "sets":   { ... },
    "checks": [ ... ]
  }'
version es un entero. Omítelo para que la API asigne el siguiente número libre. Las versiones son inmutables: re-POSTear el mismo (name, version) con un body distinto devuelve 409 RULESET_ALREADY_EXISTS. Sube la versión para publicar cambios.

Referenciar en una llamada de evaluate

{
  "input": { "geometry": { "type": "Polygon", "coordinates": [] } },
  "ruleset_id": "br-rural-credit@1"
}
name@version resuelve a una versión fijada. name solo resuelve a la versión más reciente.

Listar e inspeccionar

GET /v1/rulesets                       # listado paginado
GET /v1/rulesets/{name}                # versión más reciente
GET /v1/rulesets/{name}/{version}      # versión específica
El GET de un único registro devuelve el body canónico y una paleta de colores para uso en UI.

Convención de versionamiento

Las versiones son enteros — incrementa en cada cambio. Recomendamos:
  • Trata el catálogo como append-only.
  • Nunca reutilices un par (name, version).
  • Agrega description en cada versión para registrar la intención de la política.