naftiko: 1.0.0-alpha2 info: label: Marketo Engage Rest API description: Marketo exposes a REST API which allows for remote execution of many of the systems capabilities. From creating programs to bulk lead import, there are many options which allow fine-grained control of a Marketo instance. tags: - Marketo - API created: '2026-05-06' modified: '2026-05-06' capability: consumes: - type: http namespace: marketo baseUri: https://localhost:8080 description: Marketo Engage Rest API HTTP API. resources: - name: rest-asset-v1-channel-byname-json path: /rest/asset/v1/channel/byName.json operations: - name: getchannelbynameusingget method: GET description: Marketo Get Channel by Name inputParameters: - name: Name in: query type: string required: true description: Name of channel to retrieve outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-channels-json path: /rest/asset/v1/channels.json operations: - name: getallchannelsusingget method: GET description: Marketo Get Channels inputParameters: - name: maxReturn in: query type: integer description: Maximum number of channels to return. Max 200, default 20 - name: offset in: query type: integer description: Integer offset for paging outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-byname-json path: /rest/asset/v1/email/byName.json operations: - name: getemailbynameusingget method: GET description: Marketo Get Email by Name inputParameters: - name: name in: query type: string required: true description: Name of the email - 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' outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-json path: /rest/asset/v1/email/{id}.json operations: - name: getemailbyidusingget method: GET description: Marketo Get Email By Id inputParameters: - name: id in: path type: integer required: true description: id - name: status in: query type: string description: Status filter for draft or approved versions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateemailusingpost method: POST description: Marketo Update Email Metadata inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-approvedraft-json path: /rest/asset/v1/email/{id}/approveDraft.json operations: - name: approvedraftusingpost method: POST description: Marketo Approve Email Draft inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-clone-json path: /rest/asset/v1/email/{id}/clone.json operations: - name: cloneemailusingpost method: POST description: Marketo Clone Email inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-content-json path: /rest/asset/v1/email/{id}/content.json operations: - name: getemailcontentbyidusingget method: GET description: Marketo Get Email Content inputParameters: - name: id in: path type: integer required: true description: id - name: status in: query type: string description: Status filter for draft or approved versions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateemailcontentusingpost method: POST description: Marketo Update Email Content inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-content-rearrange-json path: /rest/asset/v1/email/{id}/content/rearrange.json operations: - name: rearrangemodulesusingpost method: POST description: Marketo Rearrange Email Modules inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-content-htmlid-json path: /rest/asset/v1/email/{id}/content/{htmlId}.json operations: - name: updateemailcomponentcontentusingpost method: POST description: Marketo Update Email Content Section inputParameters: - name: id in: path type: integer required: true description: id - name: htmlId in: path type: string required: true description: htmlId outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-content-moduleid-add-json path: /rest/asset/v1/email/{id}/content/{moduleId}/add.json operations: - name: addmoduleusingpost method: POST description: Marketo Add Email Module inputParameters: - name: id in: path type: integer required: true description: id - name: moduleId in: path type: string required: true description: moduleId - name: name in: query type: string required: true description: Name of the module - name: index in: query type: integer required: true description: Index of the module. Determines the order of the module in the email. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-content-moduleid-delete-j path: /rest/asset/v1/email/{id}/content/{moduleId}/delete.json operations: - name: deletemoduleusingpost method: POST description: Marketo Delete Module inputParameters: - name: id in: path type: integer required: true description: id - name: moduleId in: path type: string required: true description: moduleId outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-content-moduleid-duplicat path: /rest/asset/v1/email/{id}/content/{moduleId}/duplicate.json operations: - name: duplicatemoduleusingpost method: POST description: Marketo Duplicate Email Module inputParameters: - name: id in: path type: integer required: true description: id - name: moduleId in: path type: string required: true description: moduleId - name: name in: query type: string required: true description: Name of the new module outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-content-moduleid-rename-j path: /rest/asset/v1/email/{id}/content/{moduleId}/rename.json operations: - name: renameusingpost method: POST description: Marketo Rename Email Module inputParameters: - name: id in: path type: integer required: true description: id - name: moduleId in: path type: string required: true description: moduleId - name: name in: query type: string required: true description: New module name outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-delete-json path: /rest/asset/v1/email/{id}/delete.json operations: - name: deleteemailusingpost method: POST description: Marketo Delete Email inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-discarddraft-json path: /rest/asset/v1/email/{id}/discardDraft.json operations: - name: discarddraftusingpost method: POST description: Marketo Discard Email Draft inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-dynamiccontent-contentid- path: /rest/asset/v1/email/{id}/dynamicContent/{contentId}.json operations: - name: getemaildynamiccontentusingget method: GET description: Marketo Get Email Dynamic Content inputParameters: - name: id in: path type: integer required: true description: Id of email - name: contentId in: path type: string required: true description: Id of email dynamic content section - name: status in: query type: string description: Status filter for draft or approved versions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateemaildynamiccontentusingpost method: POST description: Marketo Update Email Dynamic Content Section inputParameters: - name: id in: path type: integer required: true description: Id of email - name: contentId in: path type: string required: true description: Id of email dynamic content section outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-sendsample-json path: /rest/asset/v1/email/{id}/sendSample.json operations: - name: sendsampleemailusingpost method: POST description: Marketo Send Sample Email inputParameters: - name: id in: path type: integer required: true description: Id of the email outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-unapprove-json path: /rest/asset/v1/email/{id}/unapprove.json operations: - name: unapprovedraftusingpost method: POST description: Marketo Unapprove Email inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-variable-name-json path: /rest/asset/v1/email/{id}/variable/{name}.json operations: - name: updatevariableusingpost method: POST description: Marketo Update Email Variable inputParameters: - name: id in: path type: integer required: true description: id - name: name in: path type: string required: true description: name outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-id-variables-json path: /rest/asset/v1/email/{id}/variables.json operations: - name: getemailvariablesusingget method: GET description: Marketo Get Email Variables inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-email-ccfields-json path: /rest/asset/v1/email/ccFields.json operations: - name: getemailccfieldsusingget method: GET description: Marketo Get Email CC Fields outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-emailtemplate-byname-json path: /rest/asset/v1/emailTemplate/byName.json operations: - name: gettemplatebynameusingget method: GET description: Marketo Get Email Template by Name inputParameters: - name: name in: query type: string required: true description: name - name: status in: query type: string description: Status filter for draft or approved versions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-emailtemplate-id-json path: /rest/asset/v1/emailTemplate/{id}.json operations: - name: gettemplatebyidusingget method: GET description: Marketo Get Email Template by Id inputParameters: - name: id in: path type: integer required: true description: id - name: status in: query type: string description: Status filter for draft or approved versions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateemailtemplateusingpost method: POST description: Marketo Update Email Template Metadata inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-emailtemplate-id-approvedraft-json path: /rest/asset/v1/emailTemplate/{id}/approveDraft.json operations: - name: approvedraftusingpost-1 method: POST description: Marketo Approve Email Template Draft inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-emailtemplate-id-clone-json path: /rest/asset/v1/emailTemplate/{id}/clone.json operations: - name: clonetemplateusingpost method: POST description: Marketo Clone Email Template inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-emailtemplate-id-content path: /rest/asset/v1/emailTemplate/{id}/content operations: - name: gettemplatecontentbyidusingget method: GET description: Marketo Get Email Template Content by Id inputParameters: - name: id in: path type: integer required: true description: id - name: status in: query type: string description: Status filter for draft or approved versions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-emailtemplate-id-content-json path: /rest/asset/v1/emailTemplate/{id}/content.json operations: - name: updateemailtemplatecontentusingpost method: POST description: Marketo Update Email Template Content inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-emailtemplate-id-delete-json path: /rest/asset/v1/emailTemplate/{id}/delete.json operations: - name: deletetemplateusingpost method: POST description: Marketo Delete Email Template inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-emailtemplate-id-discarddraft-json path: /rest/asset/v1/emailTemplate/{id}/discardDraft.json operations: - name: discarddraftusingpost-1 method: POST description: Marketo Discard Email Template Draft inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-emailtemplate-id-unapprove-json path: /rest/asset/v1/emailTemplate/{id}/unapprove.json operations: - name: unapprovedraftusingpost-1 method: POST description: Marketo Unapprove Email Template Draft inputParameters: - name: id in: path type: integer required: true description: id outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-emailtemplates-json path: /rest/asset/v1/emailTemplates.json operations: - name: getemailtemplatesusingget method: GET description: Marketo Get Email Templates inputParameters: - name: offset in: query type: integer description: Integer offset for paging - name: maxReturn in: query type: integer description: Maximum number of channels to return. Max 200, default 20 - name: status in: query type: string description: Status filter for draft or approved versions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createemailtemplateusingpost method: POST description: Marketo Create Email Template outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-emailtemplates-id-usedby-json path: /rest/asset/v1/emailTemplates/{id}/usedBy.json operations: - name: getemailtemplateusedbyusingget method: GET description: Marketo Get Email Template Used By inputParameters: - name: id in: path type: integer required: true description: Id of the email template - name: offset in: query type: integer description: Integer offset for paging - name: maxReturn in: query type: integer description: Maximum number of channels to return. Max 200, default 20 outputRawFormat: json outputParameters: - name: result type: object value: $. - name: rest-asset-v1-emails-json path: /rest/asset/v1/emails.json operations: - name: getemailusingget method: GET description: Marketo Get Emails inputParameters: - 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: offset in: query type: integer description: Integer offset for paging - name: maxReturn in: query type: integer description: Maximum number of emails to return. Max 200, default 20 - name: earliestUpdatedAt in: query type: string description: Exclude emails prior to this date. Must be valid ISO-8601 string. See Datetim - name: latestUpdatedAt in: query type: string description: Exclude emails after this date. Must be valid ISO-8601 string. See DatetimeDatetim - name: latestUpdatedAt type: string description: Exclude emails after this date. Must be valid ISO-8601 string. See Datetime