---
title: "Developer resources"
description: "Start a REST or MCP integration for Verbafy transcripts. Find API docs, OpenAPI, Auth.md, and Remote MCP."
canonical: "https://verbafy.io/developers"
last-updated: "2026-09-23"
---

# Developer resources

Use this page to automate your own transcription work. Start with a REST or MCP quickstart, then use the [API docs](/docs) and [OpenAPI](/openapi.json) for schemas.

## REST quickstart

1. Open [https://verbafy.io](/) and create an account, or log in. Guest REST from the website may require a Turnstile token. Do not bypass that check.
2. For browser REST, the signed-in site sends a Clerk session JWT. Verbafy does not display that token. Guests can send the `verbafy_guest_session` cookie instead. For scripts and agents, create an API key under [Settings → API keys](/app/settings/api-keys) and send `Authorization: Bearer sk-…` to Remote MCP.
3. Submit supported media with `POST /api/v1/transcripts` and body `{"url":"https://www.youtube.com/watch?v=VIDEO_ID"}`. Private files use the upload reservation flow instead.
4. A `200` means the enhanced transcript is ready. A `202` means it is still processing. Poll `GET /api/v1/transcripts/{id}/status` until `status` is `ready` or `failed`.
5. Read the result with `GET /api/v1/transcripts/{id}`.

Example status while processing:

```json
{
  "id": "11111111-1111-1111-1111-111111111111",
  "status": "processing",
  "transcriptReady": false,
  "previewReady": false,
  "chatReady": false,
  "chatIndexStatus": "pending",
  "errorMessage": null,
  "readyAt": null
}
```

If `status` is `failed`, read `errorMessage`, then [retry](/docs/api/transcripts/retry-transcript) when the input is valid. `401` means the credential is missing or expired. `402` means the plan does not allow the job. `429` on Guest session create includes `Retry-After`. Spotify episode URLs can fail when the public RSS item cannot be matched; see [why a Spotify episode may fail](/blog/why-a-spotify-episode-transcript-may-fail).

Full operation pages: [create a transcript](/docs/api/transcripts/create-transcript). Credentials and expiry: [Auth.md](/auth.md).

## MCP quickstart

Remote MCP is Streamable HTTP at `https://verbafy.io/api/v1/mcp`. It wraps the REST contract. It is not a second API.

1. Open [https://verbafy.io](/) and create an account, or log in. Do not use a signup path that skips the website.
2. Open Settings → API keys and create a named key. The secret is shown once.
3. Configure the MCP client with URL `https://verbafy.io/api/v1/mcp` and `Authorization: Bearer sk-…`.
4. Call the transcript tools, wait until processing finishes, then read the transcript. Guests cannot use MCP.

Recovery: `401` after revoke means you need a new key. `403` means the user cannot use MCP. Keep detailed schemas in the [API reference](/docs/api).

## Guides

- [API docs](/docs) and [API docs markdown](/docs.md)
- [API reference](/docs/api)
- [OpenAPI spec](/openapi.json) and [OpenAPI YAML](/openapi.yaml)
- [Auth.md](/auth.md) and [Auth HTML](/auth)

Customer webhook subscriptions are not supported. Machine-readable catalogs for agents start at [llms.txt](/llms.txt). Human support: [support@verbafy.io](mailto:support@verbafy.io).

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://verbafy.io/#organization",
      "name": "Verbafy",
      "url": "https://verbafy.io",
      "inLanguage": "en",
      "knowsAbout": [
        "YouTube transcription",
        "Spotify episode transcription",
        "Meeting recording transcription",
        "Speaker diarization",
        "Transcript export"
      ],
      "hasOfferCatalog": {
        "@id": "https://verbafy.io/pricing#offers"
      },
      "contactPoint": {
        "@type": "ContactPoint",
        "contactType": "customer support",
        "email": "support@verbafy.io",
        "url": "https://verbafy.io/contact"
      }
    },
    {
      "@type": "TechArticle",
      "@id": "https://verbafy.io/developers#page",
      "name": "Verbafy developer resources",
      "description": "Start a REST or MCP integration for Verbafy transcripts. Find API docs, OpenAPI, Auth.md, and Remote MCP.",
      "url": "https://verbafy.io/developers",
      "inLanguage": "en",
      "isPartOf": {
        "@id": "https://verbafy.io/#website"
      },
      "publisher": {
        "@id": "https://verbafy.io/#organization"
      }
    },
    {
      "@type": "BreadcrumbList",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "Home",
          "item": "https://verbafy.io"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "Verbafy developer resources",
          "item": "https://verbafy.io/developers"
        }
      ]
    }
  ]
}
```
