OpenAPI Specification
openapi: 3.1.0
info:
title: Camtasia Asset Library Assets Libraries 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.
version: '1.0'
contact:
name: TechSmith Support
url: https://support.techsmith.com
email: support@techsmith.com
termsOfService: https://www.techsmith.com/terms.html
servers:
- url: https://api.techsmith.com/camtasia/v1
description: TechSmith Camtasia API Production
security:
- bearerAuth: []
tags:
- name: Libraries
description: Manage asset libraries and collections
paths:
/libraries:
get:
operationId: listLibraries
summary: Camtasia List libraries
description: Retrieve a list of asset libraries accessible to the user, including personal, shared, and TechSmith-provided libraries.
tags:
- Libraries
responses:
'200':
description: List of libraries
content:
application/json:
schema:
$ref: '#/components/schemas/LibraryListResponse'
'401':
description: Unauthorized
/libraries/{libraryId}:
get:
operationId: getLibrary
summary: Camtasia Get a library
description: Retrieve details of a specific asset library.
tags:
- Libraries
parameters:
- $ref: '#/components/parameters/libraryId'
responses:
'200':
description: Library details
content:
application/json:
schema:
$ref: '#/components/schemas/Library'
'401':
description: Unauthorized
'404':
description: Library not found
/libraries/{libraryId}/assets:
get:
operationId: listLibraryAssets
summary: Camtasia List assets in a library
description: Retrieve a paginated list of assets within a specific library.
tags:
- Libraries
parameters:
- $ref: '#/components/parameters/libraryId'
- $ref: '#/components/parameters/assetType'
- $ref: '#/components/parameters/searchQuery'
- $ref: '#/components/parameters/pageOffset'
- $ref: '#/components/parameters/pageLimit'
responses:
'200':
description: Paginated list of assets in the library
content:
application/json:
schema:
$ref: '#/components/schemas/AssetListResponse'
'401':
description: Unauthorized
'404':
description: Library not found
components:
parameters:
pageOffset:
name: offset
in: query
description: Pagination offset
schema:
type: integer
default: 0
minimum: 0
libraryId:
name: libraryId
in: path
required: true
description: Unique identifier for the library
schema:
type: string
pageLimit:
name: limit
in: query
description: Number of results per page
schema:
type: integer
default: 25
minimum: 1
maximum: 100
searchQuery:
name: q
in: query
description: Search query string
schema:
type: string
assetType:
name: type
in: query
description: Filter by asset type
schema:
type: string
enum:
- video
- audio
- image
- animation
- effect
- transition
- annotation
- cursor
- theme
schemas:
Library:
type: object
properties:
id:
type: string
description: Unique identifier for the library
name:
type: string
description: Display name of the library
description:
type: string
description: Description of the library
type:
type: string
enum:
- personal
- shared
- techsmith
description: Library type
assetCount:
type: integer
description: Number of assets in the library
createdAt:
type: string
format: date-time
description: When the library was created
updatedAt:
type: string
format: date-time
description: When the library was last modified
AssetListResponse:
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/Asset'
total:
type: integer
description: Total number of matching assets
offset:
type: integer
description: Current pagination offset
limit:
type: integer
description: Number of results per page
Asset:
type: object
properties:
id:
type: string
description: Unique identifier for the asset
name:
type: string
description: Display name of the asset
description:
type: string
description: Description of the asset
type:
type: string
enum:
- video
- audio
- image
- animation
- effect
- transition
- annotation
- cursor
- theme
description: Type of media asset
format:
type: string
description: File format (e.g., mp4, mp3, png)
fileSize:
type: integer
description: File size in bytes
duration:
type: number
description: Duration in seconds (for video and audio assets)
width:
type: integer
description: Width in pixels (for visual assets)
height:
type: integer
description: Height in pixels (for visual assets)
thumbnailUrl:
type: string
format: uri
description: URL to the asset thumbnail image
downloadUrl:
type: string
format: uri
description: URL to download the asset file
tags:
type: array
items:
type: string
description: Tags associated with the asset
libraryId:
type: string
description: ID of the library containing the asset
categoryId:
type: string
description: ID of the category this asset belongs to
createdAt:
type: string
format: date-time
description: When the asset was created
updatedAt:
type: string
format: date-time
description: When the asset was last modified
LibraryListResponse:
type: object
properties:
items:
type: array
items:
$ref: '#/components/schemas/Library'
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: OAuth 2.0 bearer token from TechSmith account authentication
externalDocs:
description: Camtasia Support Documentation
url: https://support.techsmith.com/hc/en-us/categories/camtasia-api