naftiko: 1.0.0-alpha2 info: label: Sumo Logic API — contentManagement description: 'Sumo Logic API — contentManagement. 13 operations. Lead operation: Start A Content Import Job.. Self-contained Naftiko capability covering one Sumo Logic business surface.' tags: - Sumo Logic - contentManagement created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SUMO_LOGIC_API_KEY: SUMO_LOGIC_API_KEY capability: consumes: - type: http namespace: sumo-logic-contentmanagement baseUri: https://api.au.sumologic.com/api description: Sumo Logic API — contentManagement business capability. Self-contained, no shared references. resources: - name: v2-content-folders-folderId-import path: /v2/content/folders/{folderId}/import operations: - name: beginasyncimport method: POST description: Start A Content Import Job. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: folderId in: path type: string description: The identifier of the folder to import into. Identifiers from the Library in the Sumo user interface are provided in decimal format which is incompatible with t required: true - name: isAdminMode in: header type: string description: Set this to "true" if you want to perform the request as a Content Administrator. - name: overwrite in: query type: boolean description: Set this to "true" to overwrite a content item if the name already exists. - name: body in: body type: object description: Request body (JSON). required: true - name: v2-content-folders-folderId-import-jobId-result path: /v2/content/folders/{folderId}/import/{jobId}/result operations: - name: getasyncimportresult method: GET description: Content Import Job Result. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: folderId in: path type: string description: The identifier of the folder to import into. required: true - name: jobId in: path type: string description: The identifier of the import request. required: true - name: isAdminMode in: header type: string description: Set this to "true" if you want to perform the request as a Content Administrator. - name: v2-content-folders-folderId-import-jobId-status path: /v2/content/folders/{folderId}/import/{jobId}/status operations: - name: getasyncimportstatus method: GET description: Content Import Job Status. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: folderId in: path type: string description: The identifier of the folder to import into. required: true - name: jobId in: path type: string description: The identifier of the import request. required: true - name: isAdminMode in: header type: string description: Set this to "true" if you want to perform the request as a Content Administrator. - name: v2-content-path path: /v2/content/path operations: - name: getitembypath method: GET description: Get Content Item By Path. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: path in: query type: string description: Path of the content item to retrieve. required: true - name: v2-content-contentId-export-jobId-result path: /v2/content/{contentId}/export/{jobId}/result operations: - name: getasyncexportresult method: GET description: Content Export Job Result. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contentId in: path type: string description: The identifier of the exported content item. required: true - name: jobId in: path type: string description: The identifier of the asynchronous job. required: true - name: isAdminMode in: header type: string description: Set this to "true" if you want to perform the request as a Content Administrator. - name: v2-content-contentId-export-jobId-status path: /v2/content/{contentId}/export/{jobId}/status operations: - name: getasyncexportstatus method: GET description: Content Export Job Status. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contentId in: path type: string description: The identifier of the exported content item. required: true - name: jobId in: path type: string description: The identifier of the asynchronous export job. required: true - name: isAdminMode in: header type: string description: Set this to "true" if you want to perform the request as a Content Administrator. - name: v2-content-contentId-path path: /v2/content/{contentId}/path operations: - name: getpathbyid method: GET description: Get Path Of An Item. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contentId in: path type: string description: Identifier of the content item to get the path. required: true - name: v2-content-id-copy path: /v2/content/{id}/copy operations: - name: beginasynccopy method: POST description: Start A Content Copy Job. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The identifier of the content item to copy. Identifiers from the Library in the Sumo user interface are provided in decimal format which is incompatible with th required: true - name: destinationFolder in: query type: string description: The identifier of the destination folder. required: true - name: isAdminMode in: header type: string description: Set this to "true" if you want to perform the request as a Content Administrator. - name: v2-content-id-copy-jobId-status path: /v2/content/{id}/copy/{jobId}/status operations: - name: asynccopystatus method: GET description: Content Copy Job Status. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The identifier of the content which was copied. required: true - name: jobId in: path type: string description: The identifier of the asynchronous copy request job. required: true - name: isAdminMode in: header type: string description: Set this to "true" if you want to perform the request as a Content Administrator. - name: v2-content-id-delete path: /v2/content/{id}/delete operations: - name: beginasyncdelete method: DELETE description: Start A Content Deletion Job. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: Identifier of the content to delete. Identifiers from the Library in the Sumo user interface are provided in decimal format which is incompatible with this API. required: true - name: isAdminMode in: header type: string description: Set this to "true" if you want to perform the request as a Content Administrator. - name: v2-content-id-delete-jobId-status path: /v2/content/{id}/delete/{jobId}/status operations: - name: getasyncdeletestatus method: GET description: Content Deletion Job Status. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: Identifier of the content to delete. required: true - name: jobId in: path type: string description: The identifier of the asynchronous job. required: true - name: isAdminMode in: header type: string description: Set this to "true" if you want to perform the request as a Content Administrator. - name: v2-content-id-export path: /v2/content/{id}/export operations: - name: beginasyncexport method: POST description: Start A Content Export Job. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: 'The identifier of the content item to export. Identifiers from the Library in the Sumo user interface are provided in decimal format which is incompatible with ' required: true - name: isAdminMode in: header type: string description: Set this to "true" if you want to perform the request as a Content Administrator. - name: v2-content-id-move path: /v2/content/{id}/move operations: - name: moveitem method: POST description: Move An Item. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: destinationFolderId in: query type: string description: Identifier of the destination folder. required: true - name: id in: path type: string description: Identifier of the item the user wants to move. required: true - name: isAdminMode in: header type: string description: Set this to "true" if you want to perform the request as a Content Administrator. authentication: type: basic username: '{{env.SUMO_LOGIC_USER}}' password: '{{env.SUMO_LOGIC_PASS}}' exposes: - type: rest namespace: sumo-logic-contentmanagement-rest port: 8080 description: REST adapter for Sumo Logic API — contentManagement. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v2/content/folders/{folderid}/import name: v2-content-folders-folderid-import description: REST surface for v2-content-folders-folderId-import. operations: - method: POST name: beginasyncimport description: Start A Content Import Job. call: sumo-logic-contentmanagement.beginasyncimport with: folderId: rest.folderId isAdminMode: rest.isAdminMode overwrite: rest.overwrite body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v2/content/folders/{folderid}/import/{jobid}/result name: v2-content-folders-folderid-import-jobid-result description: REST surface for v2-content-folders-folderId-import-jobId-result. operations: - method: GET name: getasyncimportresult description: Content Import Job Result. call: sumo-logic-contentmanagement.getasyncimportresult with: folderId: rest.folderId jobId: rest.jobId isAdminMode: rest.isAdminMode outputParameters: - type: object mapping: $. - path: /v1/v2/content/folders/{folderid}/import/{jobid}/status name: v2-content-folders-folderid-import-jobid-status description: REST surface for v2-content-folders-folderId-import-jobId-status. operations: - method: GET name: getasyncimportstatus description: Content Import Job Status. call: sumo-logic-contentmanagement.getasyncimportstatus with: folderId: rest.folderId jobId: rest.jobId isAdminMode: rest.isAdminMode outputParameters: - type: object mapping: $. - path: /v1/v2/content/path name: v2-content-path description: REST surface for v2-content-path. operations: - method: GET name: getitembypath description: Get Content Item By Path. call: sumo-logic-contentmanagement.getitembypath with: path: rest.path outputParameters: - type: object mapping: $. - path: /v1/v2/content/{contentid}/export/{jobid}/result name: v2-content-contentid-export-jobid-result description: REST surface for v2-content-contentId-export-jobId-result. operations: - method: GET name: getasyncexportresult description: Content Export Job Result. call: sumo-logic-contentmanagement.getasyncexportresult with: contentId: rest.contentId jobId: rest.jobId isAdminMode: rest.isAdminMode outputParameters: - type: object mapping: $. - path: /v1/v2/content/{contentid}/export/{jobid}/status name: v2-content-contentid-export-jobid-status description: REST surface for v2-content-contentId-export-jobId-status. operations: - method: GET name: getasyncexportstatus description: Content Export Job Status. call: sumo-logic-contentmanagement.getasyncexportstatus with: contentId: rest.contentId jobId: rest.jobId isAdminMode: rest.isAdminMode outputParameters: - type: object mapping: $. - path: /v1/v2/content/{contentid}/path name: v2-content-contentid-path description: REST surface for v2-content-contentId-path. operations: - method: GET name: getpathbyid description: Get Path Of An Item. call: sumo-logic-contentmanagement.getpathbyid with: contentId: rest.contentId outputParameters: - type: object mapping: $. - path: /v1/v2/content/{id}/copy name: v2-content-id-copy description: REST surface for v2-content-id-copy. operations: - method: POST name: beginasynccopy description: Start A Content Copy Job. call: sumo-logic-contentmanagement.beginasynccopy with: id: rest.id destinationFolder: rest.destinationFolder isAdminMode: rest.isAdminMode outputParameters: - type: object mapping: $. - path: /v1/v2/content/{id}/copy/{jobid}/status name: v2-content-id-copy-jobid-status description: REST surface for v2-content-id-copy-jobId-status. operations: - method: GET name: asynccopystatus description: Content Copy Job Status. call: sumo-logic-contentmanagement.asynccopystatus with: id: rest.id jobId: rest.jobId isAdminMode: rest.isAdminMode outputParameters: - type: object mapping: $. - path: /v1/v2/content/{id}/delete name: v2-content-id-delete description: REST surface for v2-content-id-delete. operations: - method: DELETE name: beginasyncdelete description: Start A Content Deletion Job. call: sumo-logic-contentmanagement.beginasyncdelete with: id: rest.id isAdminMode: rest.isAdminMode outputParameters: - type: object mapping: $. - path: /v1/v2/content/{id}/delete/{jobid}/status name: v2-content-id-delete-jobid-status description: REST surface for v2-content-id-delete-jobId-status. operations: - method: GET name: getasyncdeletestatus description: Content Deletion Job Status. call: sumo-logic-contentmanagement.getasyncdeletestatus with: id: rest.id jobId: rest.jobId isAdminMode: rest.isAdminMode outputParameters: - type: object mapping: $. - path: /v1/v2/content/{id}/export name: v2-content-id-export description: REST surface for v2-content-id-export. operations: - method: POST name: beginasyncexport description: Start A Content Export Job. call: sumo-logic-contentmanagement.beginasyncexport with: id: rest.id isAdminMode: rest.isAdminMode outputParameters: - type: object mapping: $. - path: /v1/v2/content/{id}/move name: v2-content-id-move description: REST surface for v2-content-id-move. operations: - method: POST name: moveitem description: Move An Item. call: sumo-logic-contentmanagement.moveitem with: destinationFolderId: rest.destinationFolderId id: rest.id isAdminMode: rest.isAdminMode outputParameters: - type: object mapping: $. - type: mcp namespace: sumo-logic-contentmanagement-mcp port: 9090 transport: http description: MCP adapter for Sumo Logic API — contentManagement. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: start-content-import-job description: Start A Content Import Job. hints: readOnly: false destructive: false idempotent: false call: sumo-logic-contentmanagement.beginasyncimport with: folderId: tools.folderId isAdminMode: tools.isAdminMode overwrite: tools.overwrite body: tools.body outputParameters: - type: object mapping: $. - name: content-import-job-result description: Content Import Job Result. hints: readOnly: true destructive: false idempotent: true call: sumo-logic-contentmanagement.getasyncimportresult with: folderId: tools.folderId jobId: tools.jobId isAdminMode: tools.isAdminMode outputParameters: - type: object mapping: $. - name: content-import-job-status description: Content Import Job Status. hints: readOnly: true destructive: false idempotent: true call: sumo-logic-contentmanagement.getasyncimportstatus with: folderId: tools.folderId jobId: tools.jobId isAdminMode: tools.isAdminMode outputParameters: - type: object mapping: $. - name: get-content-item-path description: Get Content Item By Path. hints: readOnly: true destructive: false idempotent: true call: sumo-logic-contentmanagement.getitembypath with: path: tools.path outputParameters: - type: object mapping: $. - name: content-export-job-result description: Content Export Job Result. hints: readOnly: true destructive: false idempotent: true call: sumo-logic-contentmanagement.getasyncexportresult with: contentId: tools.contentId jobId: tools.jobId isAdminMode: tools.isAdminMode outputParameters: - type: object mapping: $. - name: content-export-job-status description: Content Export Job Status. hints: readOnly: true destructive: false idempotent: true call: sumo-logic-contentmanagement.getasyncexportstatus with: contentId: tools.contentId jobId: tools.jobId isAdminMode: tools.isAdminMode outputParameters: - type: object mapping: $. - name: get-path-item description: Get Path Of An Item. hints: readOnly: true destructive: false idempotent: true call: sumo-logic-contentmanagement.getpathbyid with: contentId: tools.contentId outputParameters: - type: object mapping: $. - name: start-content-copy-job description: Start A Content Copy Job. hints: readOnly: false destructive: false idempotent: false call: sumo-logic-contentmanagement.beginasynccopy with: id: tools.id destinationFolder: tools.destinationFolder isAdminMode: tools.isAdminMode outputParameters: - type: object mapping: $. - name: content-copy-job-status description: Content Copy Job Status. hints: readOnly: true destructive: false idempotent: true call: sumo-logic-contentmanagement.asynccopystatus with: id: tools.id jobId: tools.jobId isAdminMode: tools.isAdminMode outputParameters: - type: object mapping: $. - name: start-content-deletion-job description: Start A Content Deletion Job. hints: readOnly: false destructive: true idempotent: true call: sumo-logic-contentmanagement.beginasyncdelete with: id: tools.id isAdminMode: tools.isAdminMode outputParameters: - type: object mapping: $. - name: content-deletion-job-status description: Content Deletion Job Status. hints: readOnly: true destructive: false idempotent: true call: sumo-logic-contentmanagement.getasyncdeletestatus with: id: tools.id jobId: tools.jobId isAdminMode: tools.isAdminMode outputParameters: - type: object mapping: $. - name: start-content-export-job description: Start A Content Export Job. hints: readOnly: false destructive: false idempotent: false call: sumo-logic-contentmanagement.beginasyncexport with: id: tools.id isAdminMode: tools.isAdminMode outputParameters: - type: object mapping: $. - name: move-item description: Move An Item. hints: readOnly: false destructive: false idempotent: false call: sumo-logic-contentmanagement.moveitem with: destinationFolderId: tools.destinationFolderId id: tools.id isAdminMode: tools.isAdminMode outputParameters: - type: object mapping: $.