API para desarrolladores

Agent Negotiation API

Automatiza la negociación de contratos entre agentes de IA. Preconfigura playbooks con prioridades y líneas rojas, y deja que el motor de compromiso ponderado cierre acuerdos en segundos.

Flujo de negociación

Siete pasos desde el playbook hasta el contrato firmado, totalmente automatizado, sin intervención humana.

1

Crear playbook

Iniciador

El iniciador configura las preferencias de negociación: prioridades de cláusulas, flexibilidad y líneas rojas.

2

Iniciar negociación

Iniciador

POST /negotiate con el playbook. Recibe un negotiationToken para el respondedor.

3

Intercambio de token

Iniciador

Envía el token de negociación a la contraparte fuera de banda: email, webhook o API.

4

El respondedor crea su playbook

Respondedor

El respondedor configura sus propias preferencias de negociación para el mismo tipo de contrato.

5

Unirse a la negociación

Respondedor

POST /negotiate/join con el token y el playbook. El servidor resuelve de forma síncrona.

6

Resolución de compromiso

Servidor

El motor de compromiso ponderado resuelve cada cláusula, respetando líneas rojas, intereses y equidad.

7

Descargar contrato

Iniciador

Ambas partes obtienen el contrato acordado en PDF o DOCX con puntuaciones de satisfacción por cláusula.

Autenticación y Scopes

Todas las peticiones requieren un Bearer token con el prefijo drk_ Cada clave tiene scopes que controlan exactamente a qué puede acceder el agente.

Authorization: Bearer drk_96eddb08b83dc09b...
templates:read

Listar y ver plantillas de contratos

playbook:read

Listar y ver playbooks propios

playbook:write

Crear, actualizar y eliminar playbooks

negotiate

Iniciar y unirse a negociaciones

deals:read

Listar acuerdos, ver detalles, descargar documentos

billing:read

Ver suscripciones e información de facturación

webhooks:manage

Registrar, listar y eliminar endpoints de webhooks

disputes:create

Escalar operaciones a resolución de disputas

Endpoints principales

Ocho grupos de endpoints cubren el ciclo completo de negociación. Todas las rutas son relativas a /api/v1/agent

Templates

GET/templates
GET/templates/:contractType

Playbooks

GET/playbooks
POST/playbooks
GET/playbooks/:id
PUT/playbooks/:id
DELETE/playbooks/:id

Negotiation

POST/negotiate
POST/negotiate/join

Deals

GET/deals
GET/deals/:id
GET/deals/:id/document
GET/deals/:id/document/docx

Subscriptions

GET/subscriptions
POST/subscribe

Webhooks

POST/webhooks
GET/webhooks
DELETE/webhooks/:id

Async Negotiation

POST/deals/:id/counter
POST/deals/:id/accept
POST/deals/:id/reject
GET/deals/:id/status

Disputes

POST/deals/:id/dispute

Algoritmo de compromiso

El motor resuelve selecciones de cláusulas divergentes utilizando una fórmula de interés ponderado.

stake = ((5 − flexibility)/5 × 0.6) + (|bias| × 0.4)

Inflexibilidad

60%

Inversa de la flexibilidad (1–5). Menor flexibilidad significa que la parte está menos dispuesta a ceder.

Sesgo

40%

Cuánto favorece la opción preferida a una parte (−1 a +1). Mayor sesgo aumenta el interés.

Reglas de resolución

  • Gana el mayor interés: la parte con mayor interés en una cláusula obtiene su preferencia.
  • Intereses similares (diferencia < 0,1): se elige la opción intermedia como compromiso.
  • La alta flexibilidad cede: si una parte tiene flexibilidad ≥ 4, la preferencia de la otra parte prevalece.
  • Reequilibrio de equidad: un paso global ajusta si la satisfacción media está sesgada en > 15%.
  • Las líneas rojas prevalecen: si una opción sugerida queda fuera del conjunto aceptable de una parte, se sustituye por la mejor opción de la intersección.

Ejemplo de código

Cuatro pasos desde el descubrimiento de plantillas hasta un contrato firmado.

01

Descubrir plantilla

curl https://dealroom.todo.law/api/v1/agent/templates/DPA \
  -H "Authorization: Bearer drk_YOUR_KEY"
02

Crear playbook

curl -X POST https://dealroom.todo.law/api/v1/agent/playbooks \
  -H "Authorization: Bearer drk_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Standard DPA",
    "contractType": "DPA",
    "governingLaw": "ENGLAND_WALES",
    "entries": [{ "clauseId": "data-retention",
      "preferredOptionId": "30-days",
      "priority": 4, "flexibility": 2,
      "isRedLine": true,
      "acceptableOptions": ["30-days","60-days"] }]
  }'
03

Negociar

# Initiator
curl -X POST https://dealroom.todo.law/api/v1/agent/negotiate \
  -H "Authorization: Bearer drk_COMPANY_A_KEY" \
  -d '{ "playbookId": "PLAYBOOK_A_ID",
        "dealName": "Acme-Widget DPA Q1 2026",
        "initiatorEmail": "legal@acme.com" }'
# → { "negotiationToken": "nt_abc123..." }

# Respondent joins
curl -X POST https://dealroom.todo.law/api/v1/agent/negotiate/join \
  -H "Authorization: Bearer drk_COMPANY_B_KEY" \
  -d '{ "negotiationToken": "nt_abc123...",
        "playbookId": "PLAYBOOK_B_ID",
        "respondentEmail": "legal@widget.com" }'
# → { "status": "AGREED", "clauses": [...] }
04

Descargar contrato

curl https://dealroom.todo.law/api/v1/agent/deals/DEAL_ID/document \
  -H "Authorization: Bearer drk_YOUR_KEY" \
  -o contract.pdf

Descubrimiento de protocolos

Los agentes de IA pueden descubrir automáticamente las capacidades de negociación de Dealroom mediante protocolos estándar, sin configuración manual.

A2A Agent Card

Descubrimiento estándar Agent-to-Agent. Devuelve capacidades, esquema de autenticación, tipos de contrato soportados y skills disponibles, actualizado dinámicamente cuando se publican nuevas plantillas.

GET https://dealroom.todo.law/.well-known/agent.json

MCP Tool Definitions

Esquemas de herramientas compatibles con Model Context Protocol para todas las operaciones de Dealroom. Apunta cualquier agente compatible con MCP a este endpoint y podrá negociar contratos inmediatamente.

GET https://dealroom.todo.law/api/v1/agent/mcp

¿Listo para automatizar negociaciones?

Despliega agentes de IA que negocian contratos en tu nombre, con control total sobre prioridades, líneas rojas y umbrales de compromiso.