KosmoKrator

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, configure, and verify
# 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.

KeyEnv varTypeRequiredLabel
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.

Generic CLI call
kosmo integrations:call jotform.jotform_list_forms '{"limit":1,"offset":1,"orderby":"example_orderby","status":"example_status","title":"example_title"}' --json
Provider shortcut
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.

Discovery commands
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 read
Parameters
limit, offset, orderby, status, title
Generic call
kosmo integrations:call jotform.jotform_list_forms '{"limit":1,"offset":1,"orderby":"example_orderby","status":"example_status","title":"example_title"}' --json
Shortcut
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 read
Parameters
form_id
Generic call
kosmo integrations:call jotform.jotform_get_form '{"form_id":"example_form_id"}' --json
Shortcut
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 read
Parameters
form_id, limit, offset, orderby, created_at, status
Generic call
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
Shortcut
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 read
Parameters
submission_id
Generic call
kosmo integrations:call jotform.jotform_get_submission '{"submission_id":"example_submission_id"}' --json
Shortcut
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 write
Parameters
title, questions, properties
Generic call
kosmo integrations:call jotform.jotform_create_form '{"title":"example_title","questions":"example_questions","properties":"example_properties"}' --json
Shortcut
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 read
Parameters
form_id, offset
Generic call
kosmo integrations:call jotform.jotform_list_questions '{"form_id":"example_form_id","offset":1}' --json
Shortcut
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 read
Parameters
none
Generic call
kosmo integrations:call jotform.jotform_get_current_user '{}' --json
Shortcut
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
Schema command
kosmo integrations:schema jotform.jotform_list_forms --json
ParameterTypeRequiredDescription
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
Schema command
kosmo integrations:schema jotform.jotform_get_form --json
ParameterTypeRequiredDescription
form_id string yes The form ID (e.g., "231234567890123").
jotform.jotform_list_submissions 6 parameters
Schema command
kosmo integrations:schema jotform.jotform_list_submissions --json
ParameterTypeRequiredDescription
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
Schema command
kosmo integrations:schema jotform.jotform_get_submission --json
ParameterTypeRequiredDescription
submission_id string yes The submission ID (e.g., "512345678901234567").
jotform.jotform_create_form 3 parameters
Schema command
kosmo integrations:schema jotform.jotform_create_form --json
ParameterTypeRequiredDescription
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
Schema command
kosmo integrations:schema jotform.jotform_list_questions --json
ParameterTypeRequiredDescription
form_id string yes The form ID (e.g., "231234567890123").
offset integer no Offset for pagination.
jotform.jotform_get_current_user 0 parameters
Schema command
kosmo integrations:schema jotform.jotform_get_current_user --json
ParameterTypeRequiredDescription
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.