naftiko: 1.0.0-alpha2 info: label: 123FormBuilder REST API v2 — Forms description: | 123FormBuilder REST API v2 — Forms business surface. Covers CRUD over forms, bulk delete, field listing, and the full submissions lifecycle (list, get, update, delete). tags: - 123FormBuilder - Forms - Submissions created: '2026-05-28' modified: '2026-05-28' binds: - namespace: env keys: ONE_TWO_THREE_FORMBUILDER_JWT: ONE_TWO_THREE_FORMBUILDER_JWT capability: consumes: - type: http namespace: 123formbuilder-forms baseUri: https://api.123formbuilder.com description: 123FormBuilder REST API v2 — Forms business capability. Self-contained, no shared references. resources: - name: v2-forms path: /v2/forms operations: - name: listforms method: GET description: List Forms outputRawFormat: json inputParameters: - {name: JWT, in: query, type: string, required: true} - {name: per_page, in: query, type: integer, required: false} - {name: page, in: query, type: integer, required: false} - {name: search, in: query, type: string, required: false} - name: createform method: POST description: Create a New Form outputRawFormat: json inputParameters: - {name: body, in: body, type: object, required: true, description: "form-urlencoded body with JWT, name, optional group_id/active/active_date_from/active_date_to/active_days"} - name: v2-forms-bulk path: /v2/forms/bulk operations: - name: bulkdeleteforms method: DELETE description: Delete Multiple Forms outputRawFormat: json inputParameters: - {name: body, in: body, type: object, required: true, description: "form-urlencoded body with JWT and comma-separated form_ids"} - name: v2-forms-id path: /v2/forms/{form_id} operations: - name: getform method: GET description: Get Form Details outputRawFormat: json inputParameters: - {name: JWT, in: query, type: string, required: true} - {name: form_id, in: path, type: integer, required: true} - name: updateform method: PUT description: Update Form Details outputRawFormat: json inputParameters: - {name: JWT, in: query, type: string, required: true} - {name: form_id, in: path, type: integer, required: true} - {name: body, in: body, type: object, required: true} - name: deleteform method: DELETE description: Delete a Form outputRawFormat: json inputParameters: - {name: JWT, in: query, type: string, required: true} - {name: form_id, in: path, type: integer, required: true} - name: v2-forms-id-fields path: /v2/forms/{form_id}/fields operations: - name: getformfields method: GET description: Get Form Fields outputRawFormat: json inputParameters: - {name: JWT, in: query, type: string, required: true} - {name: form_id, in: path, type: integer, required: true} - name: v2-forms-id-submissions path: /v2/forms/{form_id}/submissions operations: - name: listsubmissions method: GET description: Get Submissions outputRawFormat: json inputParameters: - {name: JWT, in: query, type: string, required: true} - {name: form_id, in: path, type: integer, required: true} - {name: start_date, in: query, type: string, required: false} - {name: start_submission_id, in: query, type: integer, required: false} - {name: per_page, in: query, type: integer, required: false} - {name: page, in: query, type: integer, required: false} - {name: include_recipients, in: query, type: integer, required: false} - name: v2-forms-id-submissions-id path: /v2/forms/{form_id}/submissions/{submission_id} operations: - name: getsubmission method: GET description: Get Submission Details outputRawFormat: json inputParameters: - {name: JWT, in: query, type: string, required: true} - {name: form_id, in: path, type: integer, required: true} - {name: submission_id, in: path, type: integer, required: true} - {name: include_recipients, in: query, type: integer, required: false} - name: updatesubmission method: PUT description: Update Submission outputRawFormat: json inputParameters: - {name: JWT, in: query, type: string, required: true} - {name: form_id, in: path, type: integer, required: true} - {name: submission_id, in: path, type: integer, required: true} - {name: payed, in: query, type: string, required: false} - {name: approved, in: query, type: integer, required: false} - name: deletesubmission method: DELETE description: Delete One Form Submission outputRawFormat: json inputParameters: - {name: JWT, in: query, type: string, required: true} - {name: form_id, in: path, type: integer, required: true} - {name: submission_id, in: path, type: integer, required: true} authentication: type: apiKey in: query name: JWT value: '{{env.ONE_TWO_THREE_FORMBUILDER_JWT}}' exposes: - type: rest namespace: 123formbuilder-forms-rest port: 8080 description: REST adapter for 123FormBuilder Forms. One Spectral-compliant resource per consumed operation. resources: - path: /v2/forms name: v2-forms description: REST surface for v2-forms. operations: - {method: GET, name: listforms, description: List Forms, call: 123formbuilder-forms.listforms} - {method: POST, name: createform, description: Create a New Form, call: 123formbuilder-forms.createform} - path: /v2/forms/bulk name: v2-forms-bulk operations: - {method: DELETE, name: bulkdeleteforms, description: Delete Multiple Forms, call: 123formbuilder-forms.bulkdeleteforms} - path: /v2/forms/{form_id} name: v2-forms-id operations: - {method: GET, name: getform, description: Get Form Details, call: 123formbuilder-forms.getform} - {method: PUT, name: updateform, description: Update Form Details, call: 123formbuilder-forms.updateform} - {method: DELETE, name: deleteform, description: Delete a Form, call: 123formbuilder-forms.deleteform} - path: /v2/forms/{form_id}/fields name: v2-forms-id-fields operations: - {method: GET, name: getformfields, description: Get Form Fields, call: 123formbuilder-forms.getformfields} - path: /v2/forms/{form_id}/submissions name: v2-forms-id-submissions operations: - {method: GET, name: listsubmissions, description: Get Submissions, call: 123formbuilder-forms.listsubmissions} - path: /v2/forms/{form_id}/submissions/{submission_id} name: v2-forms-id-submissions-id operations: - {method: GET, name: getsubmission, description: Get Submission Details, call: 123formbuilder-forms.getsubmission} - {method: PUT, name: updatesubmission, description: Update Submission, call: 123formbuilder-forms.updatesubmission} - {method: DELETE, name: deletesubmission, description: Delete One Form Submission, call: 123formbuilder-forms.deletesubmission} - type: mcp namespace: 123formbuilder-forms-mcp port: 9090 transport: http description: MCP adapter for 123FormBuilder Forms. One tool per consumed operation. tools: - {name: 123formbuilder-list-forms, description: List Forms, hints: {readOnly: true, destructive: false, idempotent: true}, call: 123formbuilder-forms.listforms} - {name: 123formbuilder-create-form, description: Create a New Form, hints: {readOnly: false, destructive: false, idempotent: false}, call: 123formbuilder-forms.createform} - {name: 123formbuilder-bulk-delete-forms, description: Delete Multiple Forms, hints: {readOnly: false, destructive: true, idempotent: false}, call: 123formbuilder-forms.bulkdeleteforms} - {name: 123formbuilder-get-form, description: Get Form Details, hints: {readOnly: true, destructive: false, idempotent: true}, call: 123formbuilder-forms.getform} - {name: 123formbuilder-update-form, description: Update Form Details, hints: {readOnly: false, destructive: false, idempotent: true}, call: 123formbuilder-forms.updateform} - {name: 123formbuilder-delete-form, description: Delete a Form, hints: {readOnly: false, destructive: true, idempotent: true}, call: 123formbuilder-forms.deleteform} - {name: 123formbuilder-get-form-fields, description: Get Form Fields, hints: {readOnly: true, destructive: false, idempotent: true}, call: 123formbuilder-forms.getformfields} - {name: 123formbuilder-list-submissions, description: Get Submissions, hints: {readOnly: true, destructive: false, idempotent: true}, call: 123formbuilder-forms.listsubmissions} - {name: 123formbuilder-get-submission, description: Get Submission Details, hints: {readOnly: true, destructive: false, idempotent: true}, call: 123formbuilder-forms.getsubmission} - {name: 123formbuilder-update-submission, description: Update Submission, hints: {readOnly: false, destructive: false, idempotent: true}, call: 123formbuilder-forms.updatesubmission} - {name: 123formbuilder-delete-submission, description: Delete One Form Submission, hints: {readOnly: false, destructive: true, idempotent: true}, call: 123formbuilder-forms.deletesubmission}