Overview
The Jedify REST API lets you query your business data programmatically. Submit natural language questions, and Jedify translates them to SQL, executes them against your data warehouse, and returns structured answers with data. Base URL:https://be.jedify.com/api
Authentication
All API requests require an API key passed in theX-API-Key header.
Getting an API Key
- Log in to the Jedify app
- Navigate to Settings > API Keys
- Click Create API Key and give it a name
- Copy the key immediately — it is only shown once
Using the API Key
Include it as a header in every request:How It Works
The API is asynchronous. You submit a question and it processes in the background (typically 10-30 seconds). There are two ways to get the result:Option A: Server-side wait (recommended)
The/result endpoint holds the connection open until the inquiry completes. Simplest approach — one call, one response.
timeout (default 300s, max 900s), you get a 408 response — retry with a fresh /result call.
Option B: Client-side polling
Poll the/status endpoint yourself. Useful when you need progress updates or want control over retry logic.
status.general — when it’s no longer "processing", the inquiry is complete. See Status Values for all terminal states.
Key concepts
Sessions group related questions together, enabling follow-up queries with shared context. Create a new session for each independent question, or reuse one for follow-ups. Inquiries are individual questions within a session. After submitting, the pipeline runs in the background. Theinquiry_id is your handle to track it.
Quick Start
Python
curl
JavaScript
Important Notes
- Answers may contain HTML (e.g.,
<b>bold</b>tags). Strip HTML if you need plain text. - Set your HTTP client timeout to exceed the server
timeoutparameter on/result. If you requesttimeout=120, set your client timeout to at least 130 seconds. - Sessions created via API key don’t appear in the Jedify UI session history.
Error Handling
| HTTP Code | Meaning | When |
|---|---|---|
403 | No authentication provided | Missing X-API-Key header |
401 | Invalid API key | Key is malformed, expired, or revoked |
403 | Access denied | Trying to access another account’s resource |
404 | Resource not found | Invalid session_id or inquiry_id |
408 | Request timeout | /result endpoint: inquiry didn’t complete in time |
429 | Rate limit exceeded | Too many requests |
500 | Internal server error | Unexpected failure |