openapi: 3.0.3 info: title: Narakeet Account API description: The Narakeet API turns text and Markdown scripts into narrated audio and video programmatically. It exposes a text-to-speech endpoint (returning MP3, M4A, or WAV) in two modes - a short-content streaming mode that returns audio bytes directly, and a long-content JSON polling mode that returns a status URL to poll while a longer build runs asynchronously - plus a Markdown-to-video build workflow (upload a zip of the script and assets, trigger a build, then poll for the finished MP4), a voice listing endpoint, and an account credits endpoint. All build requests authenticate with an `x-api-key` header. API access requires a top-up or metered commercial Narakeet account; free and unmetered accounts cannot use the API. The default quota is 86,400 requests per day (1 per second). Pre-signed status and result URLs returned by the polling and video workflows do not require the API key. version: '1.0' contact: name: Narakeet url: https://www.narakeet.com email: contact@narakeet.com servers: - url: https://api.narakeet.com description: Narakeet API security: - apiKeyAuth: [] tags: - name: Account description: Check remaining account credits. paths: /account/credits: get: operationId: getAccountCredits tags: - Account summary: Get remaining account credits description: Returns the quantity of credit seconds still available on the account, together with the billing plan and identity metadata for the API key. responses: '200': description: Account credit balance. content: application/json: schema: $ref: '#/components/schemas/AccountCredits' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/TooManyRequests' components: responses: Unauthorized: description: Missing or invalid API key, or the account is not eligible for API access. TooManyRequests: description: The daily request quota (default 86,400 per day, 1 per second) was exceeded. schemas: AccountCredits: type: object properties: creditSeconds: type: integer description: Quantity of credit seconds still available for the account. requestId: type: string description: Internal request identifier. identity: type: string description: The API access key ID that made the request. billingId: type: string description: Billing plan identifier. plan: type: string description: Billing plan type (for example, TOPUP). example: TOPUP securitySchemes: apiKeyAuth: type: apiKey in: header name: x-api-key