openapi: 3.0.1 info: title: Marketo Engage Rest Approve Folders 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. termsOfService: https://www.adobe.com/legal.html contact: name: Adobe Developer Relations url: https://experienceleague.adobe.com/en/docs/marketo-developer/marketo/home email: developerfeedback@marketo.com license: name: API License Agreement url: https://experienceleague.adobe.com/en/docs/marketo-developer/marketo/api-license version: '1.0' servers: - url: https://localhost:8080/ tags: - name: Folders description: Folder Controller paths: /rest/asset/v1/folder/byName.json: get: tags: - Folders summary: Marketo Get Folder by Name description: 'Returns a folder record for the given name. Required Permissions: Read-Only Assets, Read-Write Assets' operationId: getFolderByNameUsingGET parameters: - name: name in: query description: Name of the folder. Not applicable for Programs required: true schema: type: string - name: type in: query description: Type of folder. 'Folder' or 'Program' schema: type: string - name: root in: query description: Parent folder reference schema: type: string - name: workSpace in: query description: Name of the workspace schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ResponseOfFolderResponse' /rest/asset/v1/folder/{id}.json: get: tags: - Folders summary: Marketo Get Folder by Id description: 'Returns the folder record with the given id. Required Permissions: Read-Only Assets, Read-Write Assets' operationId: getFolderByIdUsingGET parameters: - name: id in: path description: Id of the folder to retrieve required: true schema: type: integer format: int32 - name: type in: query description: Type of folder. 'Folder' or 'Program' required: true schema: type: string default: Folder enum: - Folder - Program responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ResponseOfFolderResponse' post: tags: - Folders summary: Marketo Update Folder Metadata description: 'Updates the metadata for a given folder. Required Permissions: Read-Write Assets' operationId: updateFolderUsingPOST parameters: - name: id in: path description: Id of the folder to update required: true schema: type: integer format: int32 requestBody: description: updateFolderRequest content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/UpdateFolderRequest' required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ResponseOfFolderResponse' x-codegen-request-body-name: updateFolderRequest /rest/asset/v1/folder/{id}/content.json: get: tags: - Folders summary: Marketo Get Folder Contents description: 'Returns records for the contents of a given folder. Required Permissions: Read-Only Assets, Read-Write Assets' operationId: getFolderContentUsingGET parameters: - name: id in: path description: Id of the folder to retrieve required: true schema: type: integer format: int32 - name: maxReturn in: query description: Maximum number of channels to return. Max 200, default 20 schema: type: integer format: int32 - name: offset in: query description: Integer offset for paging schema: type: integer format: int32 - name: type in: query description: Type of folder. 'Folder' or 'Program'. Default is 'Folder' required: true schema: type: string enum: - Folder - Program responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ResponseOfFolderContentResponse' /rest/asset/v1/folder/{id}/delete.json: post: tags: - Folders summary: Marketo Delete Folder description: 'Deletes the designated folder. Deletion will fail if the folder has content. Required Permissions: Read-Write Assets' operationId: deleteFolderUsingPOST parameters: - name: id in: path description: Id of the folder to delete required: true schema: type: integer format: int32 requestBody: content: application/x-www-form-urlencoded: schema: required: - type type: object properties: type: type: string description: type default: Folder enum: - Program - Folder required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ResponseOfIdResponse' /rest/asset/v1/folders.json: get: tags: - Folders summary: Marketo Get Folders description: 'Retrieves child folders from within a given root folder. Required Permissions: Read-Only Assets, Read-Write Assets' operationId: getFolderUsingGET parameters: - name: root in: query description: Parent folder reference schema: type: string - name: maxDepth in: query description: Maximum folder depth to traverse, Default 2 schema: type: integer format: int32 - name: maxReturn in: query description: Maximum number of folders to return. Default 20, maximum 200 schema: type: integer format: int32 - name: offset in: query description: Integer offset for paging. Default 0 schema: type: integer format: int32 - name: workSpace in: query description: Name of the workspace schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ResponseOfFolderResponse' post: tags: - Folders summary: Marketo Create Folder description: 'Creates a new folder. Required Permissions: Read-Write Assets' operationId: createFolderUsingPOST requestBody: description: createFolderRequest content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CreateFolderRequest' required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ResponseOfFolderResponse' x-codegen-request-body-name: createFolderRequest components: schemas: CreateFolderRequest: required: - name - parent type: object properties: description: type: string description: Description of the asset name: type: string description: Name of the Folder parent: $ref: '#/components/schemas/Folder' ResponseOfFolderResponse: type: object properties: errors: type: array items: $ref: '#/components/schemas/Error' requestId: type: string result: type: array items: $ref: '#/components/schemas/FolderResponse' success: type: boolean warnings: type: array items: type: string Folder: required: - id - type type: object properties: id: type: integer description: Id of the folder format: int32 type: type: string description: Type of folder enum: - Folder - Program description: JSON representation of a folder FolderResponse: required: - createdAt - folderId - folderType - id - isArchive - name - parent - path - updatedAt - url type: object properties: accessZoneId: type: integer format: int32 createdAt: type: string description: Datetime the folder was created format: date-time description: type: string description: Description of the folder folderId: $ref: '#/components/schemas/Folder' folderType: type: string description: Type of folder enum: - Email - Email Batch Program - Email Template - Image - Landing Page - Landing Page Form - Landing Page Template - Marketing Event - Marketing Folder - Marketing Program - Nurture Program - Report - Revenue Cycle Model - Zone id: type: integer description: Id of the folder format: int32 isArchive: type: boolean description: Archival status of the folder isSystem: type: boolean description: Whether the folder is system-managed name: type: string description: Name of the folder. Not applicable for Programs parent: $ref: '#/components/schemas/Folder' path: type: string description: Path of the folder updatedAt: type: string description: Datetime the folder was last updated format: date-time url: type: string description: Url of the folder workspace: type: string description: Name of the workspace ResponseOfFolderContentResponse: type: object properties: errors: type: array items: $ref: '#/components/schemas/Error' requestId: type: string result: type: array items: $ref: '#/components/schemas/FolderContentResponse' success: type: boolean warnings: type: array items: type: string UpdateFolderRequest: required: - type type: object properties: description: type: string description: Description of the asset isArchive: type: boolean description: Whether the folder is archived or not. Toggling this value will change the archival status of the folder name: type: string description: Name of the Folder type: type: string description: Type of folder. 'Folder' or 'Program' enum: - Folder - Program ResponseOfIdResponse: type: object properties: errors: type: array items: $ref: '#/components/schemas/Error' requestId: type: string result: type: array items: $ref: '#/components/schemas/IdResponse' success: type: boolean warnings: type: array items: type: string FolderContentResponse: type: object properties: id: type: integer format: int64 type: type: string IdResponse: required: - id type: object properties: id: type: integer description: Id of the asset format: int32 Error: required: - code - message type: object properties: code: type: string description: Error code of the error. See full list of error codes here message: type: string description: Message describing the cause of the error x-original-swagger-version: '2.0'