Happy Scribe

Happy Scribe is a transcription, subtitling, and translation platform. Its REST API (base https://www.happyscribe.com/api/v1, Bearer-token auth) turns audio and video into text with automatic (machine) or professional (human) transcription, generates and translates subtitles/captions, and exports finished transcripts into 15+ formats (SRT, VTT, STL, DOCX, PDF, TXT, JSON, CSV, XLSX, plus editing-suite formats like Adobe Premiere XML, Final Cut Pro XML, EDL, and Avid DS). Work is organized under organizations and folders, files are ingested by URL or signed upload, and webhooks notify consumers when transcriptions complete.

7 APIs 0 Features
Audio TranscriptionTranscriptionSpeech-to-TextSubtitlesCaptionsTranslation

APIs

Happy Scribe Transcriptions API

List, retrieve, update, and delete transcriptions, and fetch an AI-generated summary of a transcription. Each transcription carries its language, processing state, audio length,...

Happy Scribe Orders API

The preferred way to submit new work. Create transcription or subtitling orders from a media URL and create translation orders, choosing automatic (machine) or professional (hum...

Happy Scribe Exports API

Render finished transcripts into downloadable files across 15+ formats - subtitle/caption formats (SRT, VTT, STL), documents (DOCX, PDF, TXT, JSON, CSV, XLSX), and editing-suite...

Happy Scribe Organizations API

List the organizations (workspaces) the authenticated user belongs to, with role, member count, currency, and whether human transcription and translation are enabled. Organizati...

Happy Scribe Organization Memberships API

Manage who belongs to an organization - list memberships, add a member by email with a role, update a member's role, and remove a member. Enables programmatic workspace and seat...

Happy Scribe Uploads API

Request a signed upload URL for a local media file, then PUT the file to that URL and pass the resulting temporary URL when creating a transcription or order. The ingestion path...

Happy Scribe Glossaries and Style Guides API

List the glossaries and style guides available in an organization so they can be attached to orders to improve transcription accuracy and enforce formatting conventions.

Collections

Pricing Plans

Rate Limits

Happyscribe Rate Limits

4 limits

RATE LIMITS

FinOps

Resources

🔗
AgenticAccess
AgenticAccess
🔑
Authentication
Authentication
🔗
LinkedIn
LinkedIn
🔗
Website
Website
🔗
Documentation
Documentation
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps
📰
Blog
Blog

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Happy Scribe API
  version: '1.0'
request:
  auth:
    type: bearer
    token: '{{bearerToken}}'
items:
- info:
    name: Transcriptions
    type: folder
  items:
  - info:
      name: List transcriptions.
      type: http
    http:
      method: GET
      url: https://www.happyscribe.com/api/v1/transcriptions?organization_id=
    docs: Lists transcriptions in an organization.
  - info:
      name: Create a transcription (deprecated).
      type: http
    http:
      method: POST
      url: https://www.happyscribe.com/api/v1/transcriptions
      body:
        type: json
        data: "{\n  \"name\": \"\",\n  \"language\": \"en-US\",\n  \"tmp_url\": \"\",\n  \"service\": \"auto\",\n  \"organization_id\"\
          : \"\"\n}"
    docs: Deprecated. Prefer POST /orders to submit new work.
  - info:
      name: Retrieve a transcription.
      type: http
    http:
      method: GET
      url: https://www.happyscribe.com/api/v1/transcriptions/:id
      params:
      - name: id
        value: ''
        type: path
        description: The transcription ID.
    docs: Retrieves a single transcription by ID.
  - info:
      name: Update a transcription.
      type: http
    http:
      method: PATCH
      url: https://www.happyscribe.com/api/v1/transcriptions/:id
      params:
      - name: id
        value: ''
        type: path
        description: The transcription ID.
      body:
        type: json
        data: "{\n  \"name\": \"\"\n}"
    docs: Updates editable details of a transcription.
  - info:
      name: Delete a transcription.
      type: http
    http:
      method: DELETE
      url: https://www.happyscribe.com/api/v1/transcriptions/:id
      params:
      - name: id
        value: ''
        type: path
        description: The transcription ID.
    docs: Deletes a transcription.
  - info:
      name: Retrieve a transcription summary.
      type: http
    http:
      method: GET
      url: https://www.happyscribe.com/api/v1/transcriptions/:id/summary
      params:
      - name: id
        value: ''
        type: path
        description: The transcription ID.
    docs: Retrieves the AI-generated summary for a transcription.
- info:
    name: Orders
    type: folder
  items:
  - info:
      name: Create a transcription or subtitling order.
      type: http
    http:
      method: POST
      url: https://www.happyscribe.com/api/v1/orders
      body:
        type: json
        data: "{\n  \"url\": \"\",\n  \"language\": \"en-US\",\n  \"organization_id\": \"\",\n  \"service\": \"auto\",\n \
          \ \"confirm\": true\n}"
    docs: Preferred way to submit new work. Creates an order from a media URL.
  - info:
      name: Create a translation order.
      type: http
    http:
      method: POST
      url: https://www.happyscribe.com/api/v1/orders/translation
      body:
        type: json
        data: "{\n  \"transcription_id\": \"\",\n  \"target_language\": \"es\",\n  \"service\": \"auto\"\n}"
    docs: Creates an order to translate an existing transcription.
  - info:
      name: Retrieve an order.
      type: http
    http:
      method: GET
      url: https://www.happyscribe.com/api/v1/orders/:id
      params:
      - name: id
        value: ''
        type: path
        description: The order ID.
    docs: Retrieves an order by ID, including its state.
  - info:
      name: Confirm an incomplete order.
      type: http
    http:
      method: POST
      url: https://www.happyscribe.com/api/v1/orders/:id/confirm
      params:
      - name: id
        value: ''
        type: path
        description: The order ID.
    docs: Confirms an order created in an incomplete state, submitting it for processing.
- info:
    name: Exports
    type: folder
  items:
  - info:
      name: Create an export.
      type: http
    http:
      method: POST
      url: https://www.happyscribe.com/api/v1/exports
      body:
        type: json
        data: "{\n  \"format\": \"srt\",\n  \"transcription_ids\": [\"\"],\n  \"show_timestamps\": true,\n  \"show_speakers\"\
          : true\n}"
    docs: Renders transcriptions into a downloadable file in the requested format (srt, vtt, stl, docx, pdf, txt, json, csv,
      xlsx, and more).
  - info:
      name: Retrieve an export.
      type: http
    http:
      method: GET
      url: https://www.happyscribe.com/api/v1/exports/:id
      params:
      - name: id
        value: ''
        type: path
        description: The export ID.
    docs: Retrieves an export by ID. Poll until state is ready, then use the download link.
- info:
    name: Organizations
    type: folder
  items:
  - info:
      name: List organizations.
      type: http
    http:
      method: GET
      url: https://www.happyscribe.com/api/v1/organizations
    docs: Lists the organizations the authenticated user belongs to.
- info:
    name: Organization Memberships
    type: folder
  items:
  - info:
      name: List organization memberships.
      type: http
    http:
      method: GET
      url: https://www.happyscribe.com/api/v1/organization_memberships?organization_id=
    docs: Lists memberships, optionally filtered by organization.
  - info:
      name: Add a member to an organization.
      type: http
    http:
      method: POST
      url: https://www.happyscribe.com/api/v1/organization_memberships
      body:
        type: json
        data: "{\n  \"organization_id\": \"\",\n  \"email\": \"\",\n  \"role\": \"member\"\n}"
    docs: Adds a user to an organization by email, with a role.
  - info:
      name: Update a membership.
      type: http
    http:
      method: PATCH
      url: https://www.happyscribe.com/api/v1/organization_memberships/:id
      params:
      - name: id
        value: ''
        type: path
        description: The membership ID.
      body:
        type: json
        data: "{\n  \"role\": \"admin\"\n}"
    docs: Updates a member's role in an organization.
  - info:
      name: Remove a member.
      type: http
    http:
      method: DELETE
      url: https://www.happyscribe.com/api/v1/organization_memberships/:id
      params:
      - name: id
        value: ''
        type: path
        description: The membership ID.
    docs: Removes a member from an organization.
- info:
    name: Uploads
    type: folder
  items:
  - info:
      name: Request a signed upload URL.
      type: http
    http:
      method: GET
      url: https://www.happyscribe.com/api/v1/uploads/new?filename=example.mp3
      params:
      - name: filename
        value: example.mp3
        type: query
        description: The name of the file to be uploaded.
    docs: Returns a signed URL to PUT a local media file to; the returned temporary URL is then used when creating a transcription
      or order.
- info:
    name: Glossaries and Style Guides
    type: folder
  items:
  - info:
      name: List glossaries.
      type: http
    http:
      method: GET
      url: https://www.happyscribe.com/api/v1/glossaries?organization_id=
      params:
      - name: organization_id
        value: ''
        type: query
        description: The organization to list glossaries for.
    docs: Lists the glossaries available in an organization.
  - info:
      name: List style guides.
      type: http
    http:
      method: GET
      url: https://www.happyscribe.com/api/v1/style_guides?organization_id=
      params:
      - name: organization_id
        value: ''
        type: query
        description: The organization to list style guides for.
    docs: Lists the style guides available in an organization.
bundled: true