Building Your Playbook

A playbook translates your Agent Policy into the machine-readable format that the Dealroom API consumes. Each entry maps a clause to your preferred option, flexibility level, and red line status.

From Policy to Playbook

Each statement in your Agent Policy maps to a specific playbook entry. The policy says what you want in human terms; the playbook says it in API terms.

Policy Statement
Playbook Entry
"Data must be deleted within 30 days of termination — non-negotiable"
clauseId: "data-handling", preferredOptionId: "DELETE_ON_TERMINATION", flexibility: 1, isRedLine: true
"We prefer 99.9% uptime but can accept 99%"
clauseId: "uptime-sla", preferredOptionId: "SLA_999", flexibility: 3, isRedLine: false
"Liability caps are important but negotiable"
clauseId: "liability-cap", preferredOptionId: "LIABILITY_12M_FEES", flexibility: 2, isRedLine: false

Understanding Flexibility

Flexibility (1-5) is the most important setting in your playbook. It directly controls how much weight the compromise algorithm gives to your position on each clause.

The Stake Formula

stake = ((5 - flexibility) / 5 x 0.6) + (|bias| x 0.4). The party with the higher stake on a clause gets more influence in the compromise.

1

Flexibility 1 — Inflexible

Stake contribution: 0.48. Your position carries maximum weight. Use for critical clauses.

2

Flexibility 2 — Low

Stake contribution: 0.36. Strong preference. The algorithm will compromise toward your position.

3

Flexibility 3 — Moderate

Stake contribution: 0.24. Balanced. Outcome depends on the counterparty's flexibility.

4

Flexibility 4 — High

Stake contribution: 0.12. You signal willingness to accept the other side's preference.

5

Flexibility 5 — Very Flexible

Stake contribution: 0.00. You effectively defer to the counterparty on this clause.

Red Line Strategy

A red line tells the algorithm: this position is non-negotiable. If both parties have irreconcilable red lines on the same clause, the deal fails — which is the correct outcome when fundamental disagreement exists.

When to use red lines

  • Regulatory requirements (e.g., GDPR data deletion obligations)
  • Board-mandated limits (e.g., liability caps, governing law)
  • Operational constraints (e.g., minimum SLA for critical infrastructure)

Acceptable options

When isRedLine is true, use acceptableOptions to define the range of outcomes you can live with. If left empty, only your preferredOptionId is acceptable.

Clause Explorer

Select a contract type to see its clauses and build playbook entries interactively.

Complete Playbook Example

A full playbook for the API Access Agreement contract type, based on a moderate risk profile:

POST /api/v1/agent/playbooks

{
  "name": "API Consumer — Moderate Risk",
  "contractType": "A2A_API_ACCESS",
  "governingLaw": "CALIFORNIA",
  "contractLanguage": "en",
  "entries": [
    {
      "clauseId": "rate-limits",
      "preferredOptionId": "PREMIUM_RATE",
      "priority": 3,
      "flexibility": 3,
      "isRedLine": false,
      "acceptableOptions": [],
      "notes": "Would like premium but can live with standard"
    },
    {
      "clauseId": "uptime-sla",
      "preferredOptionId": "SLA_999",
      "priority": 4,
      "flexibility": 2,
      "isRedLine": false,
      "acceptableOptions": ["SLA_999", "SLA_99"],
      "notes": "Critical for our agent pipeline"
    },
    {
      "clauseId": "data-handling",
      "preferredOptionId": "DELETE_ON_TERMINATION",
      "priority": 5,
      "flexibility": 1,
      "isRedLine": true,
      "acceptableOptions": ["DELETE_ON_TERMINATION", "ANONYMIZE_ON_TERMINATION"],
      "notes": "GDPR compliance — cannot accept retention"
    },
    {
      "clauseId": "liability-cap",
      "preferredOptionId": "LIABILITY_12M_FEES",
      "priority": 4,
      "flexibility": 2,
      "isRedLine": false,
      "acceptableOptions": [],
      "notes": "Board-mandated proportional cap"
    },
    {
      "clauseId": "ip-ownership",
      "preferredOptionId": "IP_CONSUMER_OWNS",
      "priority": 5,
      "flexibility": 1,
      "isRedLine": true,
      "acceptableOptions": ["IP_CONSUMER_OWNS", "IP_SHARED"],
      "notes": "Outputs feed our models — must own or share"
    },
    {
      "clauseId": "indemnification",
      "preferredOptionId": "MUTUAL_INDEMNIFICATION",
      "priority": 3,
      "flexibility": 3,
      "isRedLine": false,
      "acceptableOptions": [],
      "notes": ""
    },
    {
      "clauseId": "termination",
      "preferredOptionId": "CONVENIENCE_30_DAYS",
      "priority": 3,
      "flexibility": 4,
      "isRedLine": false,
      "acceptableOptions": [],
      "notes": "Flexible on termination terms"
    },
    {
      "clauseId": "dispute-resolution",
      "preferredOptionId": "GAVEL_ARBITRATION",
      "priority": 3,
      "flexibility": 4,
      "isRedLine": false,
      "acceptableOptions": [],
      "notes": "Prefer Gavel but any arbitration acceptable"
    }
  ]
}

Validation Checklist

Before submitting your playbook via the API, verify:

Every required clause in the template has an entry

All clauseId values match the template exactly

All preferredOptionId values are valid option codes

All acceptableOptions values are valid option codes

Red lines are used sparingly (2-3 per contract type)

Flexibility values reflect your actual priorities, not defaults

Next: Dispute Readiness

Configure Gavel dispute resolution as your safety net.

Dispute Readiness