Quickstart
Create your first key and make a request in a few minutes.
Authentication
How API keys, Bearer auth, and scopes work.
API Reference
Every endpoint, parameter, and response shape.
Generate diagrams
Describe a process in words, get a diagram back.
Base URL
All endpoints are reached at a single base URL. Every request must use HTTPS.What you can do
Diagrams
Create diagrams from a natural-language prompt or by importing standard BPMN 2.0, organize them in folders, and export back to BPMN 2.0.
Folders
Organize diagrams into nestable folders, each with optional AI-steering context.
Generation
Generate a brand-new diagram from a natural-language prompt, then fetch a rendered PNG or SVG image in a light or dark theme.
Who can use it
The API is available on paid plans only.Pro — personal key
A Pro user gets a personal key that acts on their own personal diagrams and folders.
Team — org key
A member of a Team organization gets an org key that acts on that organization’s diagrams and folders.
Server-to-server only
Making a request
Authenticate every request with your secret key in theAuthorization header using the Bearer scheme.
Key concepts
Scopes
Scopes
Each key holds a subset of scopes. A request missing a required scope returns
403 with code insufficient_scope.See Authentication for details.
Pagination
Pagination
List endpoints are cursor-based.Each response includes:An invalid or expired cursor returns
integer
Number of items per page,
1–100. Defaults to 20.string
Opaque cursor from a previous response. To get the next page, pass
next_cursor as cursor.array
The page of resources, newest first (
created_at descending).boolean
Whether more results exist after this page.
string | null
The cursor to fetch the next page, or
null when there are no more.400 with code invalid_cursor.Rate limits & quotas
Rate limits & quotas
Limits are applied per key:
- Burst: 120 requests per 60 seconds.
- AI generation quota: 500 generations per rolling 30 days.
RateLimit-Limit, RateLimit-Remaining, and RateLimit-Reset (seconds) headers. On a 429, a Retry-After (seconds) header is included.Rate-limit errors use type rate_limit_error with code rate_limit_exceeded or quota_exceeded.Errors
Errors
Every error response uses the same envelope:Every response includes an
X-Request-Id header; 401 responses also include WWW-Authenticate: Bearer.Live keys (
jfi_sk_live_...) target production; test keys (jfi_sk_test_...) target staging. Both use the same base URL and behave identically.Next steps
Quickstart
Get a key and make your first call.
Authentication
Bearer auth, scopes, and key safety.
API Reference
Full endpoint documentation.