Dealroom for developers

Make a contract in one call from your code or your AI agent, through the API or MCP, and read it in Dealroom.

Three steps

  1. Get an API key

    Sign in, open Settings, API keys and choose Create key. Copy the key: it starts with drk_ and is shown once.

    Open Settings, API keys
  2. Buy credits

    On the same page, choose Buy credits. Each contract made through the API or MCP spends one credit.

  3. Make the call

    Send the contract type and your details. The answer holds the contract and the links to read and download it.

The one call

With curl. Replace drk_YOUR_KEY with your key.

Request
curl -X POST https://dealroom.todo.law/api/v1/agent/contracts \
  -H "Authorization: Bearer drk_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
    "contractType": "NDA",
    "governingLaw": "CALIFORNIA",
    "language": "en",
    "party": {
      "legalName": "Your Company, Inc.",
      "signatoryName": "Alex Smith",
      "signatoryTitle": "CEO",
      "email": "alex@yourcompany.example"
    },
    "counterparty": {
      "legalName": "Other Company, LLC"
    },
    "inline": "md"
  }'

Fields

contractType
Required. The code (NDA) or the address of the contract's guide (nda). See Contract types below.
party
Required. Your side: legalName (required), address, taxId, signatoryName, signatoryTitle, email.
counterparty
The other side, same fields. Left out, its block stays blank for them to complete.
governingLaw
CALIFORNIA, NEW_YORK, ENGLAND_WALES or SPAIN. Needed only when the contract is offered under more than one.
language
en or es, where the contract is offered in both. Default en.
terms
Facts the contract asks for, by input id, such as a city or an amount. Inputs left out take their default.
clauses
Optional clause choices: clause id to option code. Clauses left out take the standard option.
role
DPA and BAA only: the role you take, such as PROCESSOR or CONTROLLER.
inline
md, html or txt: the contract itself in the answer. Through MCP the default is md.
title
A name for the deal. Made from the parties when left out.

Answer

Answer
{
  "dealId": "cm9abc123",
  "dealRoomId": "cm9def456",
  "status": "AGREED",
  "contractType": "NDA",
  "governingLaw": "CALIFORNIA",
  "language": "en",
  "paid": "credit",
  "dealUrl": "https://dealroom.todo.law/deals/cm9def456",
  "documents": {
    "pdf": "https://dealroom.todo.law/api/v1/agent/deals/cm9abc123/document",
    "docx": "https://dealroom.todo.law/api/v1/agent/deals/cm9abc123/document/docx",
    "txt": "https://dealroom.todo.law/api/v1/agent/deals/cm9abc123/document/txt",
    "md": "https://dealroom.todo.law/api/v1/agent/deals/cm9abc123/document/md",
    "html": "https://dealroom.todo.law/api/v1/agent/deals/cm9abc123/document/html"
  },
  "guide": "https://dealroom.todo.law/contracts/nda",
  "document": {
    "format": "md",
    "content": "# Mutual Non-Disclosure Agreement\n\n## Parties\n..."
  }
}

Good to know

  • With no credit left, the answer is HTTP 402 and nothing is created.
  • When you retry, send the same Idempotency-Key header: the retry returns the first answer and is not charged again.
  • Every format of a paid contract can be downloaded again for free.
  • The dealUrl link opens for the person whose e-mail owns the API key, once signed in.

Connect an AI agent through MCP

The MCP server address. Your key goes in the Authorization header.

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

Setup by client

Claude Code

Run this in a terminal.

Claude Code
claude mcp add --transport http dealroom https://dealroom.todo.law/api/v1/agent/mcp \
  --header "Authorization: Bearer drk_YOUR_KEY"

Tools

list_contract_types
Every contract type and the facts it needs. No key needed.
generate_contract
Make a contract in one call. Returns it as Markdown, with the links.
download_contract
One contract as Markdown, HTML, PDF, DOCX or TXT.
get_deal
A deal's clauses and status.
buy_credits
A payment link for a pack of credits, for a person to open.
get_credit_balance
Credits left on the account.
list_templates, get_template
Clauses and options of each contract.
create_playbook, initiate_negotiation, join_negotiation
Negotiate a contract between two agents.

REST API

Any language that can send HTTP requests works. All paths start with https://dealroom.todo.law.

MethodPathWhat it doesKey
GET/api/v1/agent/contract-typesContract types and the facts each needsNo
POST/api/v1/agent/contractsMake a contract in one callYes
GET/api/v1/agent/deals/{dealId}/document/mdThe contract as Markdown (also /html, /txt, /docx; PDF without suffix)Yes
GET/api/v1/agent/deals/{dealId}A deal's clauses and statusYes
GET/api/v1/agent/credits/balanceCredits leftYes
POST/api/v1/agent/credits/checkoutA payment link for a pack of creditsYes
GET/api/v1/agent/templates/{code}Clauses and options of one contractYes
POST/api/v1/agent/negotiateStart a negotiation between two agentsYes
POST/api/v1/agent/mcpThe MCP serverYes

Example

curl
curl https://dealroom.todo.law/api/v1/agent/contract-types

curl -X POST https://dealroom.todo.law/api/v1/agent/contracts \
  -H "Authorization: Bearer drk_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
    "contractType": "NDA",
    "governingLaw": "CALIFORNIA",
    "language": "en",
    "party": {
      "legalName": "Your Company, Inc.",
      "signatoryName": "Alex Smith",
      "signatoryTitle": "CEO",
      "email": "alex@yourcompany.example"
    },
    "counterparty": {
      "legalName": "Other Company, LLC"
    },
    "inline": "md"
  }'
Read the full agent API guide

Contract types

Every contract the one call can make, grouped as in the contract guides. Send the code as contractType. Inputs marked with a default can be left out.

Contract types, with the code to send and the facts each one needs
ContractCodeGoverning lawsLanguagesRequired inputs
Commercial and technology
Joint Venture AgreementJOINT_VENTURECalifornia, England and Wales, SpainEnglish, Spanish
  • jv-name
  • jv-purpose
Master Services AgreementMSACalifornia, England and Wales, SpainEnglish, SpanishNone
Non-Disclosure AgreementNDACalifornia, England and Wales, SpainEnglish, Spanish
  • dispute-forum-city (only under Spain; default Madrid)
SaaS Subscription AgreementSAASCalifornia, England and Wales, SpainEnglish, SpanishNone
Software Development AgreementSOFTWARE_DEVELOPMENTCalifornia, England and Wales, SpainEnglish, Spanish
  • project-name
  • project-description
Technology License AgreementTECHNOLOGY_LICENSECalifornia, England and Wales, SpainEnglish, Spanish
  • technology-description
Data protection and privacy
Data Licensing AgreementDATA_LICENSINGCalifornia, England and Wales, SpainEnglish, Spanish
  • data-categories
  • license-fee
  • license-term (default 12)
Data Processing AgreementDPACalifornia, England and Wales, SpainEnglish, Spanish
  • processing-purpose
  • data-categories
  • processor-establishment (default EEA)
HIPAA Business Associate Agreement NegotiatorBAA_NEGOTIATORCaliforniaEnglishNone
Privacy NoticePRIVACY_NOTICECalifornia, England and Wales, SpainEnglish, Spanish
  • jurisdictions
  • company-name
  • company-website
  • dpo-email
  • effective-date
Team and services
Advisory AgreementADVISORYCalifornia, England and Wales, SpainEnglish, Spanish
  • advisor-name
Consulting AgreementCONSULTINGCalifornia, England and WalesEnglish, Spanish
  • service-description
  • hourly-rate
  • rate-currency (default USD)
Employment AgreementEMPLOYMENTCalifornia, England and WalesEnglish, Spanish
  • start-date
  • base-salary
  • salary-currency (default USD)
Employment Contract (Contrato Laboral)CONTRATO_LABORALSpainSpanish, English
  • convenio-colectivo
  • salario-bruto-anual
  • puesto-grupo-profesional
  • centro-trabajo
IP Assignment (Cesión de PI)CESION_PISpainSpanish, EnglishNone
IP Assignment AgreementIP_ASSIGNMENTCalifornia, England and Wales, SpainEnglish, Spanish
  • subject-matter
  • assignment-fee
Service Agreement (Contrato de Servicios)CONTRATO_SERVICIOSSpainSpanish, English
  • objeto-entregables
  • honorarios
  • plazo-pago-dias (default 30)
Startups and investment
Certificate of Incorporation (Delaware C-Corp)DELAWARE_CERT_OF_INCORPORATIONCaliforniaEnglish
  • company-name
  • registered-agent
  • par-value
  • incorporator
Convertible NoteCONVERTIBLE_NOTECalifornia, England and Wales, SpainEnglish, Spanish
  • principal-amount
  • valuation-cap-amount
  • qualified-financing-threshold
Equity Incentive PlanEQUITY_INCENTIVECalifornia, England and Wales, SpainEnglish, Spanish
  • plan-name
Founders AgreementFOUNDERSCalifornia, England and Wales, SpainEnglish, SpanishNone
SAFE AgreementSAFECalifornia, England and Wales, SpainEnglish, Spanish
  • valuation-cap-amount
Seed Investment AgreementSEED_INVESTMENTCalifornia, England and Wales, SpainEnglish, Spanish
  • pre-money-valuation
  • investment-amount
  • share-count
  • share-price
  • board-size
Shareholders AgreementSHAREHOLDERSCalifornia, England and WalesEnglish, Spanish
  • company-name
  • company-jurisdiction
  • board-size
Shareholders' Agreement (Pacto de Socios)PACTO_SOCIOSSpainSpanish, EnglishNone
Term SheetTERM_SHEETCalifornia, England and Wales, SpainEnglish, Spanish
  • round-amount
  • pre-money-valuation
Marketing and distribution
Advertising Insertion OrderADVERTISING_IOCalifornia, England and Wales, SpainEnglish, Spanish
  • campaign-name
  • total-budget
  • start-date
  • end-date
Affiliate / Referral Program AgreementAFFILIATE_PROGRAMCalifornia, England and Wales, SpainEnglish, Spanish
  • program-name
  • base-commission
Influencer Marketing AgreementINFLUENCER_MARKETINGCalifornia, England and Wales, SpainEnglish, Spanish
  • campaign-name
  • total-compensation
  • num-deliverables
White-Label / Reseller AgreementWHITE_LABEL_RESELLERCalifornia, England and Wales, SpainEnglish, SpanishNone
Spanish company law
Acta de Consejo de AdministraciónACTA_CONSEJO_ADMINISTRACIONSpainSpanish
  • company-name
  • cif
  • registered-address
  • meeting-date
  • president-name
  • secretary-name
Acta de Junta GeneralACTA_JUNTA_GENERALSpainSpanish
  • company-name
  • cif
  • registered-address
  • meeting-date
  • meeting-type
  • quorum-percentage
  • secretary-name
  • president-name
Asignación Individual de Phantom SharesPHANTOM_SHARES_GRANTSpainSpanish
  • employee-name
  • phantom-count
  • grant-date
  • plan-date
  • individual-vesting-months
Marco de Phantom SharesPHANTOM_SHARES_PLANSpainSpanish
  • company-name
  • cif
  • total-pool-percentage
  • cliff-months
  • vesting-months
  • plan-effective-date
  • payment-term-days
Property
Assured Periodic Tenancy AgreementRESIDENTIAL_TENANCY_GBEngland and WalesEnglish
  • property-address
  • monthly-rent
  • annual-rent (only under England and Wales)
California Residential Lease AgreementRESIDENTIAL_TENANCY_US_CACaliforniaEnglish
  • property-address
  • monthly-rent
Contrato de Arrendamiento de ViviendaRESIDENTIAL_TENANCY_ESSpainSpanish
  • property-address
  • monthly-rent
Other
Template AgreementTEMPLATECalifornia, England and Wales, SpainEnglishNone

Formats

One contract, five formats, all from the same text. A paid contract can be downloaded in every format at no extra cost.

FormatMedia typeBest forHow to get it
Markdowntext/markdownAI agents and tools that read textinline: "md", or /document/md
HTMLtext/htmlWeb pages, previews and screen readers; one file, no outside assetsinline: "html", or /document/html
Texttext/plainPlain text systemsinline: "txt", or /document/txt
PDFapplication/pdfReading and printing/document
DOCXWord documentEditing in a word processor/document/docx

Price

Drafting and negotiating are free. Each contract costs $29, the same on the website, through the API or through MCP.

Agents pay with prepaid credits, one credit per contract. Credits are sold in packs of 10: $217.50 a pack.

See the pricing page

For machines

The contracts come from templates written by lawyers. Read each contract before you sign it. This page is general information, not legal advice.
© Rindogatan LLC