Narakeet

Narakeet turns text and Markdown scripts into realistic narrated audio and video using AI text-to-speech voices - 900 voices across 100 languages. Beyond its web app, Narakeet exposes a documented REST API (base https://api.narakeet.com) for building speech audio (MP3, M4A, WAV) from text, building video from Markdown scripts and assets, listing available voices, and checking account credits. Audio builds run either as a short-content streaming call that returns bytes directly or as a long-content asynchronous build that returns a status URL to poll; video builds always upload a zip, trigger a build, and poll for the finished MP4. All build requests authenticate with an x-api-key header, and API access requires a top-up or metered commercial account.

4 APIs 0 Features
Text to SpeechTTSVoiceAudioVideoAIMedia Generation

APIs

Narakeet Text to Speech API

Convert text, SubRip, or WebVTT input into narrated audio in MP3, M4A, or WAV. Runs as a short-content streaming call (returns audio bytes directly, ~1 KB input) or a long-conte...

Narakeet Markdown to Video API

Build narrated video from a Markdown or text script plus its assets. Request a pre-signed upload token, PUT a zip archive of the script and media, trigger an asynchronous build,...

Narakeet Voice Listing API

Retrieve the JSON list of voices available to your account - each with a name, language description, locale code, and supported narration styles - so integrations can keep an up...

Narakeet Account Credits API

Check the credit seconds still available on your account, along with the billing plan and the identity of the API key. Useful for gating jobs and surfacing remaining balance bef...

Collections

Pricing Plans

Narakeet Plans Pricing

5 plans

PLANS

Rate Limits

Narakeet Rate Limits

7 limits

RATE LIMITS

FinOps

Resources

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

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Narakeet API
  version: '1.0'
request:
  auth:
    type: apikey
    apikey:
      key: x-api-key
      value: '{{apiKey}}'
      in: header
items:
- info:
    name: Text to Speech
    type: folder
  items:
  - info:
      name: Build MP3 audio (streaming)
      type: http
    http:
      method: POST
      url: https://api.narakeet.com/text-to-speech/mp3?voice=mickey
      headers:
      - name: Accept
        value: application/octet-stream
      - name: Content-Type
        value: text/plain
      params:
      - name: voice
        value: mickey
        type: query
        description: Voice name (see the Voices endpoint).
      body:
        type: text
        data: Hello from the Narakeet text to speech API.
    docs: Short-content streaming mode (input up to ~1 KB). Returns audio bytes directly; duration is in the x-duration-seconds
      response header.
  - info:
      name: Build M4A audio (polling)
      type: http
    http:
      method: POST
      url: https://api.narakeet.com/text-to-speech/m4a?voice=victoria&voice-speed=1.1
      headers:
      - name: Content-Type
        value: text/plain
      params:
      - name: voice
        value: victoria
        type: query
        description: Voice name.
      - name: voice-speed
        value: '1.1'
        type: query
        description: Reading speed multiplier.
      body:
        type: text
        data: Longer scripts up to about 1024 KB use the JSON polling mode.
    docs: Long-content JSON polling mode (input up to ~1024 KB). Returns a JSON object with a statusUrl to poll for the result.
  - info:
      name: Build WAV audio (polling only)
      type: http
    http:
      method: POST
      url: https://api.narakeet.com/text-to-speech/wav?voice=rodney
      headers:
      - name: Content-Type
        value: text/plain
      params:
      - name: voice
        value: rodney
        type: query
        description: Voice name.
      body:
        type: text
        data: Uncompressed WAV output is only available via the polling API.
    docs: Uncompressed 16-bit PCM WAV output. Available only via the long-content polling mode.
- info:
    name: Video
    type: folder
  items:
  - info:
      name: Request a video upload token
      type: http
    http:
      method: GET
      url: https://api.narakeet.com/video/upload-request/zip
    docs: Returns a pre-signed url to PUT the zip archive to, plus repository and repositoryType identifiers for the build
      request.
  - info:
      name: Trigger a video build
      type: http
    http:
      method: POST
      url: https://api.narakeet.com/video/build
      headers:
      - name: Content-Type
        value: application/json
      body:
        type: json
        data: "{\n  \"source\": \"script.md\",\n  \"repository\": \"REPOSITORY_FROM_UPLOAD_TOKEN\",\n  \"repositoryType\"\
          : \"REPOSITORY_TYPE_FROM_UPLOAD_TOKEN\"\n}"
    docs: Starts an asynchronous build from the uploaded zip. Returns a JSON object with a statusUrl to poll for the finished
      video.
- info:
    name: Voices
    type: folder
  items:
  - info:
      name: List available voices
      type: http
    http:
      method: GET
      url: https://api.narakeet.com/voices
    docs: Returns a JSON array of voices (name, language, languageCode, styles). Does not consume credits but counts toward
      the daily request quota; cache the result.
- info:
    name: Account
    type: folder
  items:
  - info:
      name: Get account credits
      type: http
    http:
      method: GET
      url: https://api.narakeet.com/account/credits
    docs: Returns creditSeconds still available plus billing plan and identity metadata for the API key.
bundled: true