Change the theme of a form with a specific formId.
change-form-themeFull Description
Change the theme of a form with a specific formId.
Parameters (2 required)
formIdstringForm ID to be changed.
themestringForm theme to be applied.
Jump-start form creation inside ChatGPT. Ask Formbyte to whip up surveys, signup forms, polls—then refine or analyze results right in the same thread.
How to Use Formbyte in ChatGPT
1. Connect: Connect the Formbyte app to ChatGPT. 2. Trigger: Type Commands: Simply type “@” then choose the Formbyte app, or type “Formbyte” (followed by a space) in the chat box. 3. Create: You are ready to go! Try asking specifically: · Formbyte, create a form to collect customer feedback. · Design a fillable application form for job applicants. · Formbyte, generate a course-evaluation survey for my online class.
One prompt gives you a polished form plus live Q&A analytics, all in chat. Connect Formbyte and type “create a form” to turn questions into decisions.
change-form-themeChange the theme of a form with a specific formId.
formIdstringForm ID to be changed.
themestringForm theme to be applied.
get-form-response-download-urlGet the download url for form responses.
⚠️ MANDATORY USAGE RULE: You MUST call this tool BEFORE getting the download url. You cannot get the download url without knowing the exact formId.
formIdstringForm ID. Pass the formId of whichever form's data you want to get the download url.
get-form-responsesRetrieve all submissions/responses for a specific form.
Usage:
When people want to view the form content not the responses, you should use the tool "manage_form" to open the form instead of this tool. .
Prerequisites: Requires a valid form ID. If user doesn't provide one, first use list_form to help them identify the correct form.
formIdstringThe unique identifier of the form to retrieve submissions for. Usage: - User says "show submissions for form abc123": set to "abc123" - User says "get responses for my survey": first call list_form to get the form ID, then use that ID here
get-form-schemaCRITICAL FIRST STEP for any data analysis task. Returns the database table name, column definitions, and field types for a specific form.
⚠️ MANDATORY USAGE RULE: You MUST call this tool BEFORE calling query_form_data. You cannot write correct SQL without knowing the exact table name (e.g., "form_submissions_f_xyz") and column names (e.g., "item_satisfaction").
Returns:
formIdstringForm ID. Pass the formId of whichever form's data you want to analyze.
list-formsList forms created by the user with support for search, filtering, and sorting.
Usage:
Default behavior: Sort by update time in descending order (most recently updated first).
querystringSearch keyword (optional). Matches form title and description fields. If not provided, returns all forms (based on other filter conditions). Usage: - User says "list all forms": don't set this parameter - User says "find satisfaction-related forms": set to "satisfaction" - User says "search registration forms": set to "registration"
sortBystringSort field: - created_at: Sort by creation time - updated_at: Sort by update time (default) Usage: - User says "recently created forms": set to "created_at" - User says "recently updated forms" or unspecified: set to "updated_at"
created_atupdated_atupdated_atsortOrderstringSort direction: - desc: Descending order, newest first (default) - asc: Ascending order, oldest first Usage: - User says "earliest created" or "old to new": set to "asc" - Otherwise: default "desc"
ascdescdescmanage-formUnified tool for managing forms - supports creating new forms, updating existing forms, and opening forms.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ⚠️ CRITICAL: QUESTION NUMBERING RULES ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
When user refers to questions by number, ONLY count question types (NOT screens):
✓ Counted as questions: short_text, long_text, email, website, number, date, radio, multiple_choice, rating
✗ NOT counted as questions: start_screen, end_screen
EXAMPLE FORM STRUCTURE: items: [ {id: "welcome", type: "start_screen"}, ← Position 0, NOT "question 1" {id: "name", type: "short_text"}, ← Position 1, THIS IS "question 1" ✓ {id: "email", type: "email"}, ← Position 2, THIS IS "question 2" ✓ {id: "rating", type: "rating"}, ← Position 3, THIS IS "question 3" ✓ {id: "thanks", type: "end_screen"} ← Position 4, NOT a question ]
USER INTENT → CORRECT INTERPRETATION:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🎯 ACTION TYPES:
1. 'create'
Required: action='create', createObj (with title and items) Example: { "action": "create", "createObj": { "title": "Customer Satisfaction Survey", "description": "Help us improve", "items": [...] } }
2. 'update'
Required: action='update', updateObj (with formId, description, and operations) Example: { "action": "update", "updateObj": { "formId": "abc123", "description": "Added email field", "operations": [...] } }
3. 'open'
Required: action='open', openObj (with formId) Example: { "action": "open", "openObj": { "formId": "abc123" } }
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📝 CREATE ACTION:
Create a new form based on user's natural language description. Each question is displayed one at a time for better focus and completion rates.
🚨 MANDATORY STRUCTURE: Every form MUST follow this structure: 1. Start with ONE start_screen (position 0)
2. Include at least ONE question item
3. End with ONE end_screen (last position)
MINIMUM VALID FORM: { "action": "create", "createObj": { "title": "Quick Survey", "items": [ { "id": "welcome", "type": "start_screen", "title": "Welcome!", "buttonText": "Start" }, { "id": "name", "type": "short_text", "title": "What's your name?", "required": true }, { "id": "thanks", "type": "end_screen", "title": "Thank you!" } ] } }
CORE DESIGN PRINCIPLES:
1. Conversational & Clear • Write questions as natural speech: "What's your email?" not "Email" • Explain WHY you're asking (use description field for sensitive info)
2. Minimize Friction • Only ask truly necessary questions • Make fields optional by default (required: false) • Only require what's absolutely needed
3. Build Trust Progressively • Easy questions first (name, preferences) • Detailed questions middle (ratings, feedback) • Sensitive questions last (phone, age) • Never start with "What's your phone number?"
4. Smart Structure • Start with start_screen (welcome)
• End with end_screen (thank you)
• Group related questions together
⚠️ FIELD USAGE RULES:
Only use applicable fields for each type:
✓ CORRECT: {"type": "radio", "title": "...", "options": [...]} {"type": "email", "title": "...", "placeholder": "..."}
✗ WRONG: {"type": "radio", "placeholder": "..."} // Wrong fields! {"type": "email", "options": [...]} // Email doesn't use options!
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔧 UPDATE ACTION:
Update an existing form using atomic operations.
OPERATION TYPES:
⚠️ REMEMBER: When user refers to "question 1", "第一题", etc., count ONLY question items (skip start_screen/end_screen).
When updating, only include fields that apply to the specific item type being modified.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🔍 OPEN ACTION:
Open an existing form in the editor for viewing or editing.
Simply provide the formId from context (currentForm.formId).
actionstringAction type: - 'create': Create a new form (requires createObj) - 'update': Update an existing form (requires updateObj) - 'open': Open an existing form (requires openObj) ⚠️ IMPORTANT: Only include the object that matches your action. Do NOT include createObj/updateObj when action is 'open', etc.
createupdateopencreateObjobjectCreate form object. REQUIRED when action is 'create'. Contains title, description (optional), and items. ⚠️ DO NOT include this field when action is 'update' or 'open'.
openObjobjectOpen form object. REQUIRED when action is 'open'. Contains formId. ⚠️ DO NOT include this field when action is 'create' or 'update'.
updateObjobjectUpdate form object. REQUIRED when action is 'update'. Contains formId, description, and operations. ⚠️ DO NOT include this field when action is 'create' or 'open'.
query-form-dataExecute multiple SQL queries to retrieve form submission data. Supports SELECT statements and aggregate functions (COUNT, AVG, SUM, etc.) for statistical analysis.
Usage: Call this tool when user wants to query form submission data or perform statistical analysis. Supports executing multiple queries in a single call for comprehensive analysis.
Important notes: 1. Must call get_form_schema first to get table structure before calling this tool 2. Only SELECT queries are supported, UPDATE, DELETE, etc. are not allowed 3. Table name format: form_submissions_{formId} 4. Column name format: item_{itemId} 5. System columns: id (record ID), submitted_at (submission timestamp)
Data volume limits:
SQL construction recommendations:
formIdstringThe form ID to query against.
queriesarrayArray of SQL queries to execute. Each query should have a clear purpose and corresponding SQL statement. Multiple queries can be executed in one call for efficient batch analysis.
share-formShare a form with a specific formId.
⚠️ MANDATORY USAGE RULE: You MUST call this tool BEFORE sharing the form. You cannot share the form without knowing the exact formId.
formIdstringForm ID. Pass the formId of whichever form's data you want to share.