Developer-First Agreement Platform

Agreement Infrastructure for Developers

Data-first, not document-centric. Your structured business data drives every document, every workflow, every signing decision — not the other way around.

Think Terraform for agreements. Define it all as code in your repo. Deploy with a CLI. Run via API — version-controlled, declarative, and built on open primitives.

Describe it in plain English — we'll draft the document, its signature fields, and the signing order.

No credit card required
Free developer tier
Setup in minutes

Infrastructure as Code

Define Your Workflow as YAML

No more managing templates in a dashboard and stitching together REST calls. Your entire signing workflow lives in your repo — validate, preview, and run locally. When you're happy, push to deploy.

client_contract.blueprint.yaml
apiVersion: signstack/v1beta2
kind: Blueprint
metadata:
  key: client_contract
  version: 1.0.0

spec:
  inputs:
    - key: client
      schema: client@1.0.0
    - key: deal
      schema: deal@1.0.0

  participants:                      # Resolved dynamically from entity data
    - key: client_signer
      name: { expression: "$.client.name" }
      email: { expression: "$.client.email" }
    - key: account_exec
      name: { expression: "$.deal.accountExec.name" }
      email: { expression: "$.deal.accountExec.email" }

  envelopes:
    - key: contract_envelope
      documents:
        - template: service_agreement@1.0.0
        - template: enterprise_addendum@1.0.0
          includeIf: "$.client.tier = 'Enterprise'"  # Conditional doc

  orchestration:
    key: root
    type: group
    execution: sequential
    children:
      - key: internal_review          # Parallel approval gate
        type: group
        execution: parallel
        children:
          - key: legal_review
            includeIf: "$.deal.value > 50000"   # Only for large deals
            type: participant
            participant: legal
            action: { type: sign, envelope: contract_envelope }
          - key: finance_review
            type: participant
            participant: finance
            action: { type: sign, envelope: contract_envelope }
      - key: client_signs             # After internal approval
        type: participant
        participant: client_signer
        action: { type: sign, envelope: contract_envelope }

Same primitives, your choice — drive everything from the terminal, or design visually in Studio.

Terminal
# Generate from a natural language description
$signstack generate "employee onboarding with NDA and offer letter"
✓ Created 2 schemas, 2 templates, 1 blueprint → ./resources/
Or use your favorite AI with the signstack skill.
# Develop locally — no push required
$signstack preview service_agreement@1.0.0 --scenario enterprise_client
✓ Rendered → service_agreement_preview.pdf
$signstack run client_contract@1.0.0 --scenario enterprise_client
✓ Workflow started → wf_abc123
# Happy? Push to deploy.
$signstack push ./resources/
✓ Pushed client_contract@1.0.0
# Your app code — just a key and data
curl -X POST https://api.signstack.ai/v1/workflows/from-blueprint/client_contract
-H "Authorization: Bearer $TOKEN"
-d '{"entityData": [{"key": "client", "data": {...}}, {"key": "deal", "data": {...}}]}'
YAML + CLI + API
ESIGN Compliant
Schema Validation
PDF & HTML Templates

How It Works

Build in Minutes, Not Months

Go from idea to a fully automated, legally-binding workflow in three simple steps.

1
draw

Define as YAML

Write your schemas, templates, and blueprints as declarative YAML files. Version them in Git. Validate locally with the CLI.

2
data_object

Test Locally

Validate schemas, preview rendered documents, and run full workflows on your machine — no deployment needed. Iterate until everything looks right.

3
integration_instructions

Deploy & Integrate

signstack push to deploy. Your app code becomes a single API call — pass a blueprint key and entity data. Webhooks keep your system in sync as steps complete.

Why SignStack

More Than an API. It's a Complete Engine.

Built on powerful, unopinionated primitives — JSON Schema, JSONata, and a recursive step tree. You define every rule. We execute it.

Version-Controlled

Every schema, template, and workflow is a YAML file in your repo. Review changes in PRs. Roll back with git revert. Deploy through your existing CI/CD pipeline. No more dashboard drift.

Complex Orchestration

A recursive step tree you fully control — sequential, parallel, quorum, conditional. Every branch, every gate, every routing decision is a JSONata expression over your business data. If you can describe the workflow, you can declare it.

Legally Compliant

ESIGN & UETA compliant e-signatures with complete audit trails. SHA-256 tamper-evidence, consent capture, and detailed event logging for full legal defensibility.

AI-Native

Describe a workflow in plain English. Get working YAML. Declarative definitions mean AI generates the entire workflow — schemas, templates, orchestration — not just integration code.

Start Building Today

Ready to Build the Future of Agreements?

Stop wrestling with rigid, document-centric platforms. Start building the intelligent, data-driven agreement workflows your users deserve.

Free developer tier
No credit card required
Setup in minutes