Marketo · Capability

Marketo Engage Rest API — Form

Marketo Engage Rest API — Form. 22 operations. Lead operation: Marketo Get Form by Name. Self-contained Naftiko capability covering one Marketo business surface.

Run with Naftiko MarketoForm

What You Can Do

GET
Getlpformbynameusingget — Marketo Get Form by Name
/v1/asset/v1/form/byname-json
GET
Getallfieldsusingget — Marketo Get Available Form Fields
/v1/asset/v1/form/fields-json
GET
Getallprogrammemberfieldsusingget — Marketo Get Available Form Program Member Fields
/v1/asset/v1/form/programmemberfields-json
POST
Addformfieldvisibilityruleusingpost — Marketo Add Form Field Visibility Rules
/v1/asset/v1/form/{formid}/field/{fieldid}/visibility-json
GET
Getlpformbyidusingget — Marketo Get Form By Id
/v1/asset/v1/form/id-json
POST
Updateformsusingpost — Marketo Update Form Metadata
/v1/asset/v1/form/id-json
POST
Approvefromusingpost — Marketo Approve Form Draft
/v1/asset/v1/form/{id}/approvedraft-json
POST
Clonelpformsusingpost — Marketo Clone Form
/v1/asset/v1/form/{id}/clone-json
POST
Deleteformbyidusingpost — Marketo Delete Form
/v1/asset/v1/form/{id}/delete-json
POST
Discardformbyidusingpost — Marketo Discard Form Draft
/v1/asset/v1/form/{id}/discarddraft-json
POST
Updateformfieldusingpost — Marketo Update Form Field
/v1/asset/v1/form/{id}/field/fieldid-json
POST
Deleteformfieldusingpost — Marketo Delete Form Field
/v1/asset/v1/form/{id}/field/{fieldid}/delete-json
POST
Addfieldsetusingpost — Marketo Add Fieldset to Form
/v1/asset/v1/form/{id}/fieldset-json
POST
Deleteformfieldfromfieldsetusingpost — Marketo Delete Field from Fieldset
/v1/asset/v1/form/{id}/fieldset/{fieldsetid}/field/{fieldid}/delete-json
GET
Getformfieldbyformvidusingget — Marketo Get Fields for Form
/v1/asset/v1/form/{id}/fields-json
POST
Addfieldtoaformusingpost — Marketo Add Field to Form
/v1/asset/v1/form/{id}/fields-json
POST
Updatefieldpositionsusingpost — Marketo Update Field Positions
/v1/asset/v1/form/{id}/rearrange-json
POST
Addrichtextfieldusingpost — Marketo Add Rich Text Field
/v1/asset/v1/form/{id}/richtext-json
POST
Updateformsubmitbuttonusingpost — Marketo Update Submit Button
/v1/asset/v1/form/{id}/submitbutton-json
GET
Getthankyoupagebyidusingget — Marketo Get Thank You Page by Form Id
/v1/asset/v1/form/{id}/thankyoupage-json
POST
Updatethankyoupagebyidusingpost — Marketo Update Thank You Page
/v1/asset/v1/form/{id}/thankyoupage-json
GET
Getformusedbyusingget — Marketo Get Form Used By
/v1/asset/v1/form/{id}/usedby-json

MCP Tools

marketo-get-form-name

Marketo Get Form by Name

read-only idempotent
marketo-get-available-form-fields

Marketo Get Available Form Fields

read-only idempotent
marketo-get-available-form-program

Marketo Get Available Form Program Member Fields

read-only idempotent
marketo-add-form-field-visibility

Marketo Add Form Field Visibility Rules

marketo-get-form-id

Marketo Get Form By Id

read-only idempotent
marketo-update-form-metadata

Marketo Update Form Metadata

marketo-approve-form-draft

Marketo Approve Form Draft

marketo-clone-form

Marketo Clone Form

marketo-delete-form

Marketo Delete Form

marketo-discard-form-draft

Marketo Discard Form Draft

marketo-update-form-field

Marketo Update Form Field

marketo-delete-form-field

Marketo Delete Form Field

marketo-add-fieldset-form

Marketo Add Fieldset to Form

marketo-delete-field-fieldset

Marketo Delete Field from Fieldset

marketo-get-fields-form

Marketo Get Fields for Form

read-only idempotent
marketo-add-field-form

Marketo Add Field to Form

marketo-update-field-positions

Marketo Update Field Positions

marketo-add-rich-text-field

Marketo Add Rich Text Field

marketo-update-submit-button

Marketo Update Submit Button

marketo-get-thank-you-page

Marketo Get Thank You Page by Form Id

read-only idempotent
marketo-update-thank-you-page

Marketo Update Thank You Page

marketo-get-form-used

Marketo Get Form Used By

read-only idempotent

Capability Spec

engage-rest-form.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Marketo Engage Rest API — Form
  description: 'Marketo Engage Rest API — Form. 22 operations. Lead operation: Marketo Get Form by Name. Self-contained Naftiko
    capability covering one Marketo business surface.'
  tags:
  - Marketo
  - Form
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    MARKETO_API_KEY: MARKETO_API_KEY
capability:
  consumes:
  - type: http
    namespace: engage-rest-form
    baseUri: https://localhost:8080
    description: Marketo Engage Rest API — Form business capability. Self-contained, no shared references.
    resources:
    - name: rest-asset-v1-form-byName.json
      path: /rest/asset/v1/form/byName.json
      operations:
      - name: getlpformbynameusingget
        method: GET
        description: Marketo Get Form by Name
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: query
          type: string
          description: Name of the form
          required: true
        - name: status
          in: query
          type: string
          description: Status filter for draft or approved versions
        - name: folder
          in: query
          type: string
          description: JSON representation of parent folder, with members 'id', and 'type' which may be 'Folder' or 'Program'
    - name: rest-asset-v1-form-fields.json
      path: /rest/asset/v1/form/fields.json
      operations:
      - name: getallfieldsusingget
        method: GET
        description: Marketo Get Available Form Fields
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: maxReturn
          in: query
          type: integer
          description: Maximum number of fields to return. Max 200, default 20
        - name: offset
          in: query
          type: integer
          description: Integer offset for paging
    - name: rest-asset-v1-form-programMemberFields.json
      path: /rest/asset/v1/form/programMemberFields.json
      operations:
      - name: getallprogrammemberfieldsusingget
        method: GET
        description: Marketo Get Available Form Program Member Fields
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: maxReturn
          in: query
          type: integer
          description: Maximum number of fields to return. Max 200, default 20
        - name: offset
          in: query
          type: integer
          description: Integer offset for paging
    - name: rest-asset-v1-form-formId-field-fieldId-visibility.json
      path: /rest/asset/v1/form/{formId}/field/{fieldId}/visibility.json
      operations:
      - name: addformfieldvisibilityruleusingpost
        method: POST
        description: Marketo Add Form Field Visibility Rules
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: formId
          in: path
          type: integer
          description: formId
          required: true
        - name: fieldId
          in: path
          type: string
          description: fieldId
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: rest-asset-v1-form-id}.json
      path: /rest/asset/v1/form/{id}.json
      operations:
      - name: getlpformbyidusingget
        method: GET
        description: Marketo Get Form By Id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
        - name: status
          in: query
          type: string
          description: Status filter for draft or approved versions
      - name: updateformsusingpost
        method: POST
        description: Marketo Update Form Metadata
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: rest-asset-v1-form-id-approveDraft.json
      path: /rest/asset/v1/form/{id}/approveDraft.json
      operations:
      - name: approvefromusingpost
        method: POST
        description: Marketo Approve Form Draft
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
    - name: rest-asset-v1-form-id-clone.json
      path: /rest/asset/v1/form/{id}/clone.json
      operations:
      - name: clonelpformsusingpost
        method: POST
        description: Marketo Clone Form
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: rest-asset-v1-form-id-delete.json
      path: /rest/asset/v1/form/{id}/delete.json
      operations:
      - name: deleteformbyidusingpost
        method: POST
        description: Marketo Delete Form
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
    - name: rest-asset-v1-form-id-discardDraft.json
      path: /rest/asset/v1/form/{id}/discardDraft.json
      operations:
      - name: discardformbyidusingpost
        method: POST
        description: Marketo Discard Form Draft
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
    - name: rest-asset-v1-form-id-field-fieldId}.json
      path: /rest/asset/v1/form/{id}/field/{fieldId}.json
      operations:
      - name: updateformfieldusingpost
        method: POST
        description: Marketo Update Form Field
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
        - name: fieldId
          in: path
          type: string
          description: fieldId
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: rest-asset-v1-form-id-field-fieldId-delete.json
      path: /rest/asset/v1/form/{id}/field/{fieldId}/delete.json
      operations:
      - name: deleteformfieldusingpost
        method: POST
        description: Marketo Delete Form Field
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
        - name: fieldId
          in: path
          type: string
          description: fieldId
          required: true
    - name: rest-asset-v1-form-id-fieldSet.json
      path: /rest/asset/v1/form/{id}/fieldSet.json
      operations:
      - name: addfieldsetusingpost
        method: POST
        description: Marketo Add Fieldset to Form
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: rest-asset-v1-form-id-fieldSet-fieldSetId-field-fieldId-delete.json
      path: /rest/asset/v1/form/{id}/fieldSet/{fieldSetId}/field/{fieldId}/delete.json
      operations:
      - name: deleteformfieldfromfieldsetusingpost
        method: POST
        description: Marketo Delete Field from Fieldset
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
        - name: fieldSetId
          in: path
          type: string
          description: fieldSetId
          required: true
        - name: fieldId
          in: path
          type: string
          description: fieldId
          required: true
    - name: rest-asset-v1-form-id-fields.json
      path: /rest/asset/v1/form/{id}/fields.json
      operations:
      - name: getformfieldbyformvidusingget
        method: GET
        description: Marketo Get Fields for Form
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
        - name: status
          in: query
          type: string
          description: Status filter for draft or approved versions
      - name: addfieldtoaformusingpost
        method: POST
        description: Marketo Add Field to Form
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: rest-asset-v1-form-id-reArrange.json
      path: /rest/asset/v1/form/{id}/reArrange.json
      operations:
      - name: updatefieldpositionsusingpost
        method: POST
        description: Marketo Update Field Positions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: rest-asset-v1-form-id-richText.json
      path: /rest/asset/v1/form/{id}/richText.json
      operations:
      - name: addrichtextfieldusingpost
        method: POST
        description: Marketo Add Rich Text Field
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: rest-asset-v1-form-id-submitButton.json
      path: /rest/asset/v1/form/{id}/submitButton.json
      operations:
      - name: updateformsubmitbuttonusingpost
        method: POST
        description: Marketo Update Submit Button
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: rest-asset-v1-form-id-thankYouPage.json
      path: /rest/asset/v1/form/{id}/thankYouPage.json
      operations:
      - name: getthankyoupagebyidusingget
        method: GET
        description: Marketo Get Thank You Page by Form Id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
        - name: status
          in: query
          type: string
          description: Status filter for draft or approved versions
      - name: updatethankyoupagebyidusingpost
        method: POST
        description: Marketo Update Thank You Page
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: id
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: rest-asset-v1-form-id-usedBy.json
      path: /rest/asset/v1/form/{id}/usedBy.json
      operations:
      - name: getformusedbyusingget
        method: GET
        description: Marketo Get Form Used By
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          description: Id of the form
          required: true
        - name: offset
          in: query
          type: integer
          description: Integer offset for paging
        - name: maxReturn
          in: query
          type: integer
          description: Maximum number of assets to return. Max 200, default 20
  exposes:
  - type: rest
    namespace: engage-rest-form-rest
    port: 8080
    description: REST adapter for Marketo Engage Rest API — Form. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/asset/v1/form/byname-json
      name: rest-asset-v1-form-byname-json
      description: REST surface for rest-asset-v1-form-byName.json.
      operations:
      - method: GET
        name: getlpformbynameusingget
        description: Marketo Get Form by Name
        call: engage-rest-form.getlpformbynameusingget
        with:
          name: rest.name
          status: rest.status
          folder: rest.folder
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/fields-json
      name: rest-asset-v1-form-fields-json
      description: REST surface for rest-asset-v1-form-fields.json.
      operations:
      - method: GET
        name: getallfieldsusingget
        description: Marketo Get Available Form Fields
        call: engage-rest-form.getallfieldsusingget
        with:
          maxReturn: rest.maxReturn
          offset: rest.offset
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/programmemberfields-json
      name: rest-asset-v1-form-programmemberfields-json
      description: REST surface for rest-asset-v1-form-programMemberFields.json.
      operations:
      - method: GET
        name: getallprogrammemberfieldsusingget
        description: Marketo Get Available Form Program Member Fields
        call: engage-rest-form.getallprogrammemberfieldsusingget
        with:
          maxReturn: rest.maxReturn
          offset: rest.offset
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/{formid}/field/{fieldid}/visibility-json
      name: rest-asset-v1-form-formid-field-fieldid-visibility-json
      description: REST surface for rest-asset-v1-form-formId-field-fieldId-visibility.json.
      operations:
      - method: POST
        name: addformfieldvisibilityruleusingpost
        description: Marketo Add Form Field Visibility Rules
        call: engage-rest-form.addformfieldvisibilityruleusingpost
        with:
          formId: rest.formId
          fieldId: rest.fieldId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/id-json
      name: rest-asset-v1-form-id-json
      description: REST surface for rest-asset-v1-form-id}.json.
      operations:
      - method: GET
        name: getlpformbyidusingget
        description: Marketo Get Form By Id
        call: engage-rest-form.getlpformbyidusingget
        with:
          id: rest.id
          status: rest.status
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: updateformsusingpost
        description: Marketo Update Form Metadata
        call: engage-rest-form.updateformsusingpost
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/{id}/approvedraft-json
      name: rest-asset-v1-form-id-approvedraft-json
      description: REST surface for rest-asset-v1-form-id-approveDraft.json.
      operations:
      - method: POST
        name: approvefromusingpost
        description: Marketo Approve Form Draft
        call: engage-rest-form.approvefromusingpost
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/{id}/clone-json
      name: rest-asset-v1-form-id-clone-json
      description: REST surface for rest-asset-v1-form-id-clone.json.
      operations:
      - method: POST
        name: clonelpformsusingpost
        description: Marketo Clone Form
        call: engage-rest-form.clonelpformsusingpost
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/{id}/delete-json
      name: rest-asset-v1-form-id-delete-json
      description: REST surface for rest-asset-v1-form-id-delete.json.
      operations:
      - method: POST
        name: deleteformbyidusingpost
        description: Marketo Delete Form
        call: engage-rest-form.deleteformbyidusingpost
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/{id}/discarddraft-json
      name: rest-asset-v1-form-id-discarddraft-json
      description: REST surface for rest-asset-v1-form-id-discardDraft.json.
      operations:
      - method: POST
        name: discardformbyidusingpost
        description: Marketo Discard Form Draft
        call: engage-rest-form.discardformbyidusingpost
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/{id}/field/fieldid-json
      name: rest-asset-v1-form-id-field-fieldid-json
      description: REST surface for rest-asset-v1-form-id-field-fieldId}.json.
      operations:
      - method: POST
        name: updateformfieldusingpost
        description: Marketo Update Form Field
        call: engage-rest-form.updateformfieldusingpost
        with:
          id: rest.id
          fieldId: rest.fieldId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/{id}/field/{fieldid}/delete-json
      name: rest-asset-v1-form-id-field-fieldid-delete-json
      description: REST surface for rest-asset-v1-form-id-field-fieldId-delete.json.
      operations:
      - method: POST
        name: deleteformfieldusingpost
        description: Marketo Delete Form Field
        call: engage-rest-form.deleteformfieldusingpost
        with:
          id: rest.id
          fieldId: rest.fieldId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/{id}/fieldset-json
      name: rest-asset-v1-form-id-fieldset-json
      description: REST surface for rest-asset-v1-form-id-fieldSet.json.
      operations:
      - method: POST
        name: addfieldsetusingpost
        description: Marketo Add Fieldset to Form
        call: engage-rest-form.addfieldsetusingpost
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/{id}/fieldset/{fieldsetid}/field/{fieldid}/delete-json
      name: rest-asset-v1-form-id-fieldset-fieldsetid-field-fieldid-delete-json
      description: REST surface for rest-asset-v1-form-id-fieldSet-fieldSetId-field-fieldId-delete.json.
      operations:
      - method: POST
        name: deleteformfieldfromfieldsetusingpost
        description: Marketo Delete Field from Fieldset
        call: engage-rest-form.deleteformfieldfromfieldsetusingpost
        with:
          id: rest.id
          fieldSetId: rest.fieldSetId
          fieldId: rest.fieldId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/{id}/fields-json
      name: rest-asset-v1-form-id-fields-json
      description: REST surface for rest-asset-v1-form-id-fields.json.
      operations:
      - method: GET
        name: getformfieldbyformvidusingget
        description: Marketo Get Fields for Form
        call: engage-rest-form.getformfieldbyformvidusingget
        with:
          id: rest.id
          status: rest.status
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: addfieldtoaformusingpost
        description: Marketo Add Field to Form
        call: engage-rest-form.addfieldtoaformusingpost
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/{id}/rearrange-json
      name: rest-asset-v1-form-id-rearrange-json
      description: REST surface for rest-asset-v1-form-id-reArrange.json.
      operations:
      - method: POST
        name: updatefieldpositionsusingpost
        description: Marketo Update Field Positions
        call: engage-rest-form.updatefieldpositionsusingpost
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/{id}/richtext-json
      name: rest-asset-v1-form-id-richtext-json
      description: REST surface for rest-asset-v1-form-id-richText.json.
      operations:
      - method: POST
        name: addrichtextfieldusingpost
        description: Marketo Add Rich Text Field
        call: engage-rest-form.addrichtextfieldusingpost
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/{id}/submitbutton-json
      name: rest-asset-v1-form-id-submitbutton-json
      description: REST surface for rest-asset-v1-form-id-submitButton.json.
      operations:
      - method: POST
        name: updateformsubmitbuttonusingpost
        description: Marketo Update Submit Button
        call: engage-rest-form.updateformsubmitbuttonusingpost
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/{id}/thankyoupage-json
      name: rest-asset-v1-form-id-thankyoupage-json
      description: REST surface for rest-asset-v1-form-id-thankYouPage.json.
      operations:
      - method: GET
        name: getthankyoupagebyidusingget
        description: Marketo Get Thank You Page by Form Id
        call: engage-rest-form.getthankyoupagebyidusingget
        with:
          id: rest.id
          status: rest.status
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: updatethankyoupagebyidusingpost
        description: Marketo Update Thank You Page
        call: engage-rest-form.updatethankyoupagebyidusingpost
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset/v1/form/{id}/usedby-json
      name: rest-asset-v1-form-id-usedby-json
      description: REST surface for rest-asset-v1-form-id-usedBy.json.
      operations:
      - method: GET
        name: getformusedbyusingget
        description: Marketo Get Form Used By
        call: engage-rest-form.getformusedbyusingget
        with:
          id: rest.id
          offset: rest.offset
          maxReturn: rest.maxReturn
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: engage-rest-form-mcp
    port: 9090
    transport: http
    description: MCP adapter for Marketo Engage Rest API — Form. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: marketo-get-form-name
      description: Marketo Get Form by Name
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: engage-rest-form.getlpformbynameusingget
      with:
        name: tools.name
        status: tools.status
        folder: tools.folder
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-get-available-form-fields
      description: Marketo Get Available Form Fields
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: engage-rest-form.getallfieldsusingget
      with:
        maxReturn: tools.maxReturn
        offset: tools.offset
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-get-available-form-program
      description: Marketo Get Available Form Program Member Fields
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: engage-rest-form.getallprogrammemberfieldsusingget
      with:
        maxReturn: tools.maxReturn
        offset: tools.offset
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-add-form-field-visibility
      description: Marketo Add Form Field Visibility Rules
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: engage-rest-form.addformfieldvisibilityruleusingpost
      with:
        formId: tools.formId
        fieldId: tools.fieldId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-get-form-id
      description: Marketo Get Form By Id
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: engage-rest-form.getlpformbyidusingget
      with:
        id: tools.id
        status: tools.status
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-update-form-metadata
      description: Marketo Update Form Metadata
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: engage-rest-form.updateformsusingpost
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-approve-form-draft
      description: Marketo Approve Form Draft
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: engage-rest-form.approvefromusingpost
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-clone-form
      description: Marketo Clone Form
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: engage-rest-form.clonelpformsusingpost
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-delete-form
      description: Marketo Delete Form
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: engage-rest-form.deleteformbyidusingpost
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-discard-form-draft
      description: Marketo Discard Form Draft
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: engage-rest-form.discardformbyidusingpost
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-update-form-field
      description: Marketo Update Form Field
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: engage-rest-form.updateformfieldusingpost
      with:
        id: tools.id
        fieldId: tools.fieldId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-delete-form-field
      description: Marketo Delete Form Field
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: engage-rest-form.deleteformfieldusingpost
      with:
        id: tools.id
        fieldId: tools.fieldId
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-add-fieldset-form
      description: Marketo Add Fieldset to Form
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: engage-rest-form.addfieldsetusingpost
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-delete-field-fieldset
      description: Marketo Delete Field from Fieldset
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: engage-rest-form.deleteformfieldfromfieldsetusingpost
      with:
        id: tools.id
        fieldSetId: tools.fieldSetId
        fieldId: tools.fieldId
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-get-fields-form
      description: Marketo Get Fields for Form
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: engage-rest-form.getformfieldbyformvidusingget
      with:
        id: tools.id
        status: tools.status
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-add-field-form
      description: Marketo Add Field to Form
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: engage-rest-form.addfieldtoaformusingpost
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-update-field-positions
      description: Marketo Update Field Positions
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: engage-rest-form.updatefieldpositionsusingpost
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-add-rich-text-field
      description: Marketo Add Rich Text Field
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: engage-rest-form.addrichtextfieldusingpost
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-update-submit-button
      description: Marketo Update Submit Button
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: engage-rest-form.updateformsubmitbuttonusingpost
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: marketo-get-thank-you-page
      description: Marketo Get Thank You Page by Form Id
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: engage-rest-form.getthankyoupagebyidusingget
      with:
        id: tools.id
        status: tools.status
      outputParameters:
      - type: object
        mapping: $.
    - name: ma

# --- truncated at 32 KB (32 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/marketo/refs/heads/main/capabilities/engage-rest-form.yaml