Camtasia Productions API

Produce and export finished videos

OpenAPI Specification

camtasia-productions-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Camtasia Asset Library Assets Productions 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: Productions
  description: Produce and export finished videos
paths:
  /projects/{projectId}/productions:
    get:
      operationId: listProductions
      summary: Camtasia List productions
      description: Retrieve a list of production (export) jobs for a project.
      tags:
      - Productions
      parameters:
      - $ref: '#/components/parameters/projectId'
      responses:
        '200':
          description: List of productions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductionListResponse'
        '401':
          description: Unauthorized
        '404':
          description: Project not found
    post:
      operationId: createProduction
      summary: Camtasia Start a production
      description: Start a new production (export) job to render the project into a finished video file with the specified settings.
      tags:
      - Productions
      parameters:
      - $ref: '#/components/parameters/projectId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateProductionRequest'
      responses:
        '202':
          description: Production job started
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Production'
        '400':
          description: Invalid production settings
        '401':
          description: Unauthorized
        '404':
          description: Project not found
  /projects/{projectId}/productions/{productionId}:
    get:
      operationId: getProduction
      summary: Camtasia Get production status
      description: Retrieve the status and details of a specific production job.
      tags:
      - Productions
      parameters:
      - $ref: '#/components/parameters/projectId'
      - $ref: '#/components/parameters/productionId'
      responses:
        '200':
          description: Production details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Production'
        '401':
          description: Unauthorized
        '404':
          description: Production not found
  /projects/{projectId}/productions/{productionId}/download:
    get:
      operationId: downloadProduction
      summary: Camtasia Download produced video
      description: Download the finished video file from a completed production job.
      tags:
      - Productions
      parameters:
      - $ref: '#/components/parameters/projectId'
      - $ref: '#/components/parameters/productionId'
      responses:
        '200':
          description: Produced video file
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
        '401':
          description: Unauthorized
        '404':
          description: Production not found
        '409':
          description: Production not yet completed
components:
  schemas:
    CreateProductionRequest:
      type: object
      required:
      - format
      properties:
        format:
          type: string
          enum:
          - mp4
          - wmv
          - avi
          - gif
          - m4a
          description: Output file format
        resolution:
          type: object
          properties:
            width:
              type: integer
              description: Output width in pixels
            height:
              type: integer
              description: Output height in pixels
        frameRate:
          type: number
          description: Output frame rate
        quality:
          type: string
          enum:
          - low
          - medium
          - high
          - custom
          default: high
          description: Output quality preset
        watermark:
          type: boolean
          default: false
          description: Whether to include a watermark
        smartPlayer:
          type: boolean
          default: false
          description: Whether to include the TechSmith Smart Player
    Production:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the production job
        projectId:
          type: string
          description: ID of the source project
        status:
          type: string
          enum:
          - queued
          - processing
          - completed
          - failed
          - cancelled
          description: Production job status
        progress:
          type: integer
          minimum: 0
          maximum: 100
          description: Production progress percentage
        format:
          type: string
          enum:
          - mp4
          - wmv
          - avi
          - gif
          - m4a
          description: Output file format
        resolution:
          type: object
          properties:
            width:
              type: integer
              description: Output width in pixels
            height:
              type: integer
              description: Output height in pixels
        frameRate:
          type: number
          description: Output frame rate
        quality:
          type: string
          enum:
          - low
          - medium
          - high
          - custom
          description: Output quality preset
        fileSize:
          type: integer
          description: Output file size in bytes (available when completed)
        downloadUrl:
          type: string
          format: uri
          description: URL to download the produced file (available when completed)
        errorMessage:
          type: string
          description: Error message if production failed
        startedAt:
          type: string
          format: date-time
          description: When production started
        completedAt:
          type: string
          format: date-time
          description: When production completed
        createdAt:
          type: string
          format: date-time
          description: When the production job was created
    ProductionListResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/Production'
  parameters:
    productionId:
      name: productionId
      in: path
      required: true
      description: Unique identifier for the production job
      schema:
        type: string
    projectId:
      name: projectId
      in: path
      required: true
      description: Unique identifier for the project
      schema:
        type: string
  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