For Agents
Generate, route for signing, and download contracts on Juro from code or an AI agent.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Juro API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Juro API.
List and load contract templates via GET /templates and GET /templates/{template_id}
Create contracts from a template through POST /contracts with merge-field values
Upload existing PDFs as Juro contracts using POST /contracts/upload
GET STARTED
Use for: I need to create a new sales contract from our template, Send this contract to the customer for signature, Upload a PDF and turn it into a Juro contract, Download the signed PDF for contract 'ctr-789'
Not supported: Does not handle CRM data, e-billing, or matter management — use for contract generation, signing, and archive only.
Jentic publishes the only available OpenAPI specification for Juro API, keeping it validated and agent-ready. Juro is a contract automation platform. The v3 API exposes 12 endpoints to list and load templates, create contracts from templates or PDF uploads, update and delete contracts, route them for signing through one or more signing sides, and download the executed PDF. It fits agent and backend workflows that need to spin up, sign, and archive contracts without driving the Juro UI.
Retrieve, patch, or delete a contract by id through /contracts/{contract_id}
Send contracts for signing per signing side and per signatory via /contracts/{contract_id}/signing-request paths
Download the binary PDF of an executed contract using GET /contracts/{contract_id}/pdf/binary
Patterns agents use Juro API for, with concrete tasks.
★ Sales-Quote-To-Contract
Sales teams want every closed-won quote to generate a fully populated contract for signing. The integration calls GET /templates to find the right master template, POST /contracts with merge fields like buyer, value, and term, then POST /contracts/{contract_id}/sign to dispatch it. This collapses the typical CRM-to-contract handoff from hours to seconds.
On opportunity stage 'Closed Won', call POST /contracts with template_id 'tpl-msa' and the deal merge fields, then POST /contracts/{contract_id}/sign to start the signing flow.
Bulk PDF Migration to Juro
Legal ops migrating a back catalogue of executed PDFs into Juro use POST /contracts/upload to register each PDF as a Juro contract for searchable storage. GET /contracts/{contract_id} confirms metadata and PATCH /contracts/{contract_id} adds counterparties or tags. A 1,000-document migration becomes a scripted job rather than a manual upload.
For each PDF in 's3://legal-archive/', call POST /contracts/upload with the file and metadata, then PATCH /contracts/{contract_id} to set the counterparty and contract type.
Multi-Party Signing Orchestration
For deals with multiple signatories on each side, the contract owner wants to trigger signing for the buyer side first and the seller side second. POST /contracts/{contract_id}/signing-request/{signing_side_uid} sends to a signing side, and POST /contracts/{contract_id}/signing-request/{signing_side_uid}/signatures/{signature_uid} drills down to a specific signatory. This avoids parallel emails that confuse the audit trail.
For contract 'ctr-100', call POST /contracts/ctr-100/signing-request/{buyer_side_uid} first, then on completion call POST /contracts/ctr-100/signing-request/{seller_side_uid}.
Agent-Driven Contract Drafting
An AI legal assistant can draft a contract from a chat conversation, send it for signing, and return a download link. Through Jentic the agent searches 'create a contract', loads POST /contracts, and executes with template and merge fields. The signed binary is then pulled via GET /contracts/{contract_id}/pdf/binary for archiving.
Through Jentic, search 'create a contract from a template', load POST /contracts, execute with template_id 'tpl-nda' and the counterparty's email, then call POST /contracts/{contract_id}/sign.
12 endpoints — jentic publishes the only available openapi specification for juro api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/templates
List contract templates
/contracts
Create a contract from a template
/contracts/upload
Upload a PDF as a contract
/contracts/{contract_id}
Update a contract
/contracts/{contract_id}/sign
Send a contract for signing
/contracts/{contract_id}/signing-request/{signing_side_uid}
Send to a specific signing side
/contracts/{contract_id}/pdf/binary
Download the contract PDF
/templates
List contract templates
/contracts
Create a contract from a template
/contracts/upload
Upload a PDF as a contract
/contracts/{contract_id}
Update a contract
/contracts/{contract_id}/sign
Send a contract for signing
Three things that make agents converge on Jentic-routed access.
Credential isolation
Juro API keys are stored in Jentic's encrypted vault and surfaced as a scoped session token. Workspace-level legal credentials never enter agent prompts or logs.
Intent-based discovery
Agents search by intent (e.g. 'create a contract from a template' or 'send a contract for signing') and Jentic returns the matching Juro operation with its input schema, so the agent calls the right endpoint without reading docs.
Time to first call
Direct Juro integration: 2-3 days to wire auth, template lookup, and the multi-step signing flow. Through Jentic: under 1 hour to search, load, and execute the first contract creation.
Alternatives and complements available in the Jentic catalogue.
Specific to using Juro API through Jentic.
Why is there no official OpenAPI spec for Juro API?
Juro does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Juro API via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the Juro API use?
The Juro v3 API uses an API key auth scheme. The key is sent on each request and scopes access to the workspace. Through Jentic the key sits in the encrypted vault and is injected at execution time, not at prompt time.
Can I create a contract from a template with the Juro API?
Yes. GET /templates lists available templates and POST /contracts creates a new contract from a chosen template_id with merge-field values. POST /contracts/upload covers the alternative path of registering an existing PDF as a contract.
What are the rate limits for the Juro API?
Juro applies per-workspace rate limits that vary with plan; the spec does not enumerate fixed values. Use exponential backoff on 429 responses and stagger bulk creates.
How do I send a contract for signing with the Juro API through Jentic?
Search Jentic for 'send a contract for signing', load POST /contracts/{contract_id}/sign, and execute with the contract_id. For multi-party deals, target a specific side via /contracts/{contract_id}/signing-request/{signing_side_uid}.
Can I download the executed PDF after signing?
Yes. GET /contracts/{contract_id}/pdf/binary returns the binary PDF of the contract, including the signed version once all parties have completed signing.
/contracts/{contract_id}/signing-request/{signing_side_uid}
Send to a specific signing side
/contracts/{contract_id}/pdf/binary
Download the contract PDF