naftiko: 1.0.0-alpha2 info: label: Camtasia Asset Library API description: API for accessing and managing media assets, templates, and libraries within TechSmith Camtasia. Provides programmatic access to browse, search, download, and manage video assets, audio tracks, images, templates, themes, and other media resources used in Camtasia projects. tags: - Camtasia - API created: '2026-05-06' modified: '2026-05-06' capability: consumes: - type: http namespace: camtasia baseUri: https://api.techsmith.com/camtasia/v1 description: Camtasia Asset Library API HTTP API. authentication: type: bearer token: '{{CAMTASIA_TOKEN}}' resources: - name: assets path: /assets operations: - name: listassets method: GET description: Camtasia List assets outputRawFormat: json outputParameters: - name: result type: object value: $. - name: uploadasset method: POST description: Camtasia Upload an asset outputRawFormat: json outputParameters: - name: result type: object value: $. - name: assets-assetid path: /assets/{assetId} operations: - name: getasset method: GET description: Camtasia Get an asset outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateasset method: PUT description: Camtasia Update an asset outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deleteasset method: DELETE description: Camtasia Delete an asset outputRawFormat: json outputParameters: - name: result type: object value: $. - name: assets-assetid-download path: /assets/{assetId}/download operations: - name: downloadasset method: GET description: Camtasia Download an asset file outputRawFormat: json outputParameters: - name: result type: object value: $. - name: assets-assetid-preview path: /assets/{assetId}/preview operations: - name: getassetpreview method: GET description: Camtasia Get asset preview inputParameters: - name: size in: query type: string description: Preview size outputRawFormat: json outputParameters: - name: result type: object value: $. - name: templates path: /templates operations: - name: listtemplates method: GET description: Camtasia List templates outputRawFormat: json outputParameters: - name: result type: object value: $. - name: templates-templateid path: /templates/{templateId} operations: - name: gettemplate method: GET description: Camtasia Get a template outputRawFormat: json outputParameters: - name: result type: object value: $. - name: templates-templateid-download path: /templates/{templateId}/download operations: - name: downloadtemplate method: GET description: Camtasia Download a template outputRawFormat: json outputParameters: - name: result type: object value: $. - name: libraries path: /libraries operations: - name: listlibraries method: GET description: Camtasia List libraries outputRawFormat: json outputParameters: - name: result type: object value: $. - name: libraries-libraryid path: /libraries/{libraryId} operations: - name: getlibrary method: GET description: Camtasia Get a library outputRawFormat: json outputParameters: - name: result type: object value: $. - name: libraries-libraryid-assets path: /libraries/{libraryId}/assets operations: - name: listlibraryassets method: GET description: Camtasia List assets in a library outputRawFormat: json outputParameters: - name: result type: object value: $. - name: categories path: /categories operations: - name: listcategories method: GET description: Camtasia List asset categories outputRawFormat: json outputParameters: - name: result type: object value: $. - name: categories-categoryid path: /categories/{categoryId} operations: - name: getcategory method: GET description: Camtasia Get a category outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: camtasia-rest description: REST adapter for Camtasia Asset Library API. resources: - path: /assets name: listassets operations: - method: GET name: listassets description: Camtasia List assets call: camtasia.listassets outputParameters: - type: object mapping: $. - path: /assets name: uploadasset operations: - method: POST name: uploadasset description: Camtasia Upload an asset call: camtasia.uploadasset outputParameters: - type: object mapping: $. - path: /assets/{assetId} name: getasset operations: - method: GET name: getasset description: Camtasia Get an asset call: camtasia.getasset outputParameters: - type: object mapping: $. - path: /assets/{assetId} name: updateasset operations: - method: PUT name: updateasset description: Camtasia Update an asset call: camtasia.updateasset outputParameters: - type: object mapping: $. - path: /assets/{assetId} name: deleteasset operations: - method: DELETE name: deleteasset description: Camtasia Delete an asset call: camtasia.deleteasset outputParameters: - type: object mapping: $. - path: /assets/{assetId}/download name: downloadasset operations: - method: GET name: downloadasset description: Camtasia Download an asset file call: camtasia.downloadasset outputParameters: - type: object mapping: $. - path: /assets/{assetId}/preview name: getassetpreview operations: - method: GET name: getassetpreview description: Camtasia Get asset preview call: camtasia.getassetpreview outputParameters: - type: object mapping: $. - path: /templates name: listtemplates operations: - method: GET name: listtemplates description: Camtasia List templates call: camtasia.listtemplates outputParameters: - type: object mapping: $. - path: /templates/{templateId} name: gettemplate operations: - method: GET name: gettemplate description: Camtasia Get a template call: camtasia.gettemplate outputParameters: - type: object mapping: $. - path: /templates/{templateId}/download name: downloadtemplate operations: - method: GET name: downloadtemplate description: Camtasia Download a template call: camtasia.downloadtemplate outputParameters: - type: object mapping: $. - path: /libraries name: listlibraries operations: - method: GET name: listlibraries description: Camtasia List libraries call: camtasia.listlibraries outputParameters: - type: object mapping: $. - path: /libraries/{libraryId} name: getlibrary operations: - method: GET name: getlibrary description: Camtasia Get a library call: camtasia.getlibrary outputParameters: - type: object mapping: $. - path: /libraries/{libraryId}/assets name: listlibraryassets operations: - method: GET name: listlibraryassets description: Camtasia List assets in a library call: camtasia.listlibraryassets outputParameters: - type: object mapping: $. - path: /categories name: listcategories operations: - method: GET name: listcategories description: Camtasia List asset categories call: camtasia.listcategories outputParameters: - type: object mapping: $. - path: /categories/{categoryId} name: getcategory operations: - method: GET name: getcategory description: Camtasia Get a category call: camtasia.getcategory outputParameters: - type: object mapping: $. - type: mcp port: 9090 namespace: camtasia-mcp transport: http description: MCP adapter for Camtasia Asset Library API for AI agent use. tools: - name: listassets description: Camtasia List assets hints: readOnly: true destructive: false idempotent: true call: camtasia.listassets outputParameters: - type: object mapping: $. - name: uploadasset description: Camtasia Upload an asset hints: readOnly: false destructive: false idempotent: false call: camtasia.uploadasset outputParameters: - type: object mapping: $. - name: getasset description: Camtasia Get an asset hints: readOnly: true destructive: false idempotent: true call: camtasia.getasset outputParameters: - type: object mapping: $. - name: updateasset description: Camtasia Update an asset hints: readOnly: false destructive: false idempotent: true call: camtasia.updateasset outputParameters: - type: object mapping: $. - name: deleteasset description: Camtasia Delete an asset hints: readOnly: false destructive: true idempotent: true call: camtasia.deleteasset outputParameters: - type: object mapping: $. - name: downloadasset description: Camtasia Download an asset file hints: readOnly: true destructive: false idempotent: true call: camtasia.downloadasset outputParameters: - type: object mapping: $. - name: getassetpreview description: Camtasia Get asset preview hints: readOnly: true destructive: false idempotent: true call: camtasia.getassetpreview with: size: tools.size inputParameters: - name: size type: string description: Preview size outputParameters: - type: object mapping: $. - name: listtemplates description: Camtasia List templates hints: readOnly: true destructive: false idempotent: true call: camtasia.listtemplates outputParameters: - type: object mapping: $. - name: gettemplate description: Camtasia Get a template hints: readOnly: true destructive: false idempotent: true call: camtasia.gettemplate outputParameters: - type: object mapping: $. - name: downloadtemplate description: Camtasia Download a template hints: readOnly: true destructive: false idempotent: true call: camtasia.downloadtemplate outputParameters: - type: object mapping: $. - name: listlibraries description: Camtasia List libraries hints: readOnly: true destructive: false idempotent: true call: camtasia.listlibraries outputParameters: - type: object mapping: $. - name: getlibrary description: Camtasia Get a library hints: readOnly: true destructive: false idempotent: true call: camtasia.getlibrary outputParameters: - type: object mapping: $. - name: listlibraryassets description: Camtasia List assets in a library hints: readOnly: true destructive: false idempotent: true call: camtasia.listlibraryassets outputParameters: - type: object mapping: $. - name: listcategories description: Camtasia List asset categories hints: readOnly: true destructive: false idempotent: true call: camtasia.listcategories outputParameters: - type: object mapping: $. - name: getcategory description: Camtasia Get a category hints: readOnly: true destructive: false idempotent: true call: camtasia.getcategory outputParameters: - type: object mapping: $. binds: - namespace: env keys: CAMTASIA_TOKEN: CAMTASIA_TOKEN