productivity
Jotform CLI for AI Agents
Use the Jotform CLI from KosmoKrator to call Jotform tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.Jotform CLI Setup
Jotform can be configured headlessly with `kosmokrator integrations:configure jotform`.
# Install KosmoKrator first if it is not available on PATH.
curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash
# Configure and verify this integration.
kosmokrator integrations:configure jotform --set api_key="$JOTFORM_API_KEY" --enable --read allow --write ask --json
kosmokrator integrations:doctor jotform --json
kosmokrator integrations:status --json Credentials
Authentication type: API key api_key. Configure credentials once, then reuse the same stored profile from scripts, coding CLIs, Lua, and MCP.
| Key | Env var | Type | Required | Label |
|---|---|---|---|---|
api_key | JOTFORM_API_KEY | Secret secret | yes | API Key |
url | JOTFORM_URL | URL url | no | API Base URL |
Command Patterns
The generic command is stable across every integration. The provider shortcut is shorter for humans.
kosmo integrations:call jotform.jotform_list_forms '{"limit":1,"offset":1,"orderby":"example_orderby","status":"example_status","title":"example_title"}' --json kosmo integrations:jotform jotform_list_forms '{"limit":1,"offset":1,"orderby":"example_orderby","status":"example_status","title":"example_title"}' --json Discovery
These commands return structured output for coding agents that need to inspect capabilities before choosing a function.
kosmo integrations:docs jotform --json
kosmo integrations:docs jotform.jotform_list_forms --json
kosmo integrations:schema jotform.jotform_list_forms --json
kosmo integrations:search "Jotform" --json
kosmo integrations:list --json Automation Contexts
The same configured command surface works in these environments. The command does not change unless the host wrapper, credentials, or permissions change.
CLI Functions
Every function below can be called headlessly. Commands are highlighted, copyable, and scroll horizontally when payloads are long.
jotform.jotform_list_forms
List all forms owned by the authenticated Jotform user. Returns form IDs, titles, creation dates, and status. Supports pagination and filtering.
read - Parameters
- limit, offset, orderby, status, title
kosmo integrations:call jotform.jotform_list_forms '{"limit":1,"offset":1,"orderby":"example_orderby","status":"example_status","title":"example_title"}' --json kosmo integrations:jotform jotform_list_forms '{"limit":1,"offset":1,"orderby":"example_orderby","status":"example_status","title":"example_title"}' --json jotform.jotform_get_form
Get detailed information about a specific Jotform form, including its properties, status, URL, and creation date.
read - Parameters
- form_id
kosmo integrations:call jotform.jotform_get_form '{"form_id":"example_form_id"}' --json kosmo integrations:jotform jotform_get_form '{"form_id":"example_form_id"}' --json jotform.jotform_list_submissions
List submissions for a specific Jotform form. Returns submission IDs, timestamps, and answers. Supports pagination, filtering by date, and ordering.
read - Parameters
- form_id, limit, offset, orderby, created_at, status
kosmo integrations:call jotform.jotform_list_submissions '{"form_id":"example_form_id","limit":1,"offset":1,"orderby":"example_orderby","created_at":"example_created_at","status":"example_status"}' --json kosmo integrations:jotform jotform_list_submissions '{"form_id":"example_form_id","limit":1,"offset":1,"orderby":"example_orderby","created_at":"example_created_at","status":"example_status"}' --json jotform.jotform_get_submission
Get detailed information about a specific Jotform submission, including all form answers, metadata, and timestamps.
read - Parameters
- submission_id
kosmo integrations:call jotform.jotform_get_submission '{"submission_id":"example_submission_id"}' --json kosmo integrations:jotform jotform_get_submission '{"submission_id":"example_submission_id"}' --json jotform.jotform_create_form
Create a new form in Jotform. Provide form properties such as title, questions (fields), and other settings. Returns the created form with its ID and URL.
write - Parameters
- title, questions, properties
kosmo integrations:call jotform.jotform_create_form '{"title":"example_title","questions":"example_questions","properties":"example_properties"}' --json kosmo integrations:jotform jotform_create_form '{"title":"example_title","questions":"example_questions","properties":"example_properties"}' --json jotform.jotform_list_questions
List all questions (form fields) for a specific Jotform form. Returns field types, labels, names, and configuration options.
read - Parameters
- form_id, offset
kosmo integrations:call jotform.jotform_list_questions '{"form_id":"example_form_id","offset":1}' --json kosmo integrations:jotform jotform_list_questions '{"form_id":"example_form_id","offset":1}' --json jotform.jotform_get_current_user
Get profile information for the currently authenticated Jotform user, including username, email, account type, and usage stats.
read - Parameters
- none
kosmo integrations:call jotform.jotform_get_current_user '{}' --json kosmo integrations:jotform jotform_get_current_user '{}' --json Function Schemas
Use these parameter tables when building CLI payloads without calling integrations:schema first.
jotform.jotform_list_forms 5 parameters
kosmo integrations:schema jotform.jotform_list_forms --json | Parameter | Type | Required | Description |
|---|---|---|---|
limit | integer | no | Maximum number of forms to return (default: 20, max: 1000). |
offset | integer | no | Offset for pagination — pass the number of forms to skip. |
orderby | string | no | Field to order by: "created_at" (default), "title", "id", "updated_at". |
status | string | no | Filter by status: "ENABLED" or "DISABLED". |
title | string | no | Filter by form title (partial match). |
jotform.jotform_get_form 1 parameters
kosmo integrations:schema jotform.jotform_get_form --json | Parameter | Type | Required | Description |
|---|---|---|---|
form_id | string | yes | The form ID (e.g., "231234567890123"). |
jotform.jotform_list_submissions 6 parameters
kosmo integrations:schema jotform.jotform_list_submissions --json | Parameter | Type | Required | Description |
|---|---|---|---|
form_id | string | yes | The form ID to list submissions for (e.g., "231234567890123"). |
limit | integer | no | Maximum number of submissions to return (default: 20, max: 1000). |
offset | integer | no | Offset for pagination — pass the number of submissions to skip. |
orderby | string | no | Field to order by: "created_at" (default) or "id". |
created_at | string | no | Filter by creation date (format: "YYYY-MM-DD HH:mm:ss" or date range). |
status | string | no | Filter by submission status: "ACTIVE" or "DELETED". |
jotform.jotform_get_submission 1 parameters
kosmo integrations:schema jotform.jotform_get_submission --json | Parameter | Type | Required | Description |
|---|---|---|---|
submission_id | string | yes | The submission ID (e.g., "512345678901234567"). |
jotform.jotform_create_form 3 parameters
kosmo integrations:schema jotform.jotform_create_form --json | Parameter | Type | Required | Description |
|---|---|---|---|
title | string | yes | The title of the form. |
questions | array | no | Array of question definitions. Each question should have "type" (e.g., "control_textbox", "control_email", "control_textarea", "control_dropdown", "control_radio", "control_checkbox"), "name" (field label), and "order" (position). |
properties | object | no | Additional form properties (e.g., "redirect", "thankurl", "form_pagination", "height"). Pass as an object. |
jotform.jotform_list_questions 2 parameters
kosmo integrations:schema jotform.jotform_list_questions --json | Parameter | Type | Required | Description |
|---|---|---|---|
form_id | string | yes | The form ID (e.g., "231234567890123"). |
offset | integer | no | Offset for pagination. |
jotform.jotform_get_current_user 0 parameters
kosmo integrations:schema jotform.jotform_get_current_user --json | Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
Permissions
Headless calls still follow the integration read/write permission policy. Configure read/write defaults with
integrations:configure. Add --force only for trusted automation that should bypass that policy.