Skip to main content

Quick Reference

All endpoints are prefixed with /api (full URL: https://be.jedify.com/api/session/new). All endpoints require the X-API-Key header. See Authentication.

Create Session

Create a new conversation session. Sessions group related questions together, enabling follow-up queries with shared context.
Request Body: None required Example:
Response (200):

Submit Query

Submit a natural language question to a session. Returns immediately with an inquiry_id — the query processes asynchronously in the background.
Path Parameters: Request Body: Example:
Response (200):

Get Inquiry Status

Get the current status and answer for an inquiry. Use this for manual polling, or use Wait for Result instead.
Path Parameters: Example:
Response (200): The response is the full QueryStatusResponse. Key fields:
The response includes additional fields (follow_up_type, pin_data, chart_view_items, selected_view, etc.) used by the Jedify UI. You can safely ignore fields you don’t need. While processing, status.general is "processing" and answer, sql_query, and data.data will be empty.

Polling Example (Python)

Status Values

Check status.general to determine inquiry state:

Wait for Result

Long-polling endpoint that waits for an inquiry to complete before returning. The server holds the HTTP connection open, polling internally until the inquiry reaches a terminal status or the timeout is reached. This is the recommended way to get results — simpler than polling /status yourself.
Path Parameters: Query Parameters: Example:
Response (200): Same shape as Get Inquiry Status. Only returned once the inquiry reaches a terminal status. Timeout Response (408):
Handling 408: The inquiry is still processing — it wasn’t cancelled. Call /result again to keep waiting, or switch to polling /status for more control. Important: Set your HTTP client timeout to exceed the timeout parameter. If you request timeout=120, your client should wait at least 130 seconds.