{
  "name": "Speechmatics",
  "slug": "speechmatics",
  "website_url": "https://www.speechmatics.com",
  "vendor_description": "\"Low-latency speech-to-text for multilingual, multi-speaker conversations.\"",
  "categories": [
    "speech-to-text"
  ],
  "summary": "Speechmatics is a speech-to-text API supporting batch and real-time transcription across EU, US, and Australia regions, with capabilities including speaker diarization, language detection, translation, summarization, and audio event detection, making it suited for contact centers, legal, medical, and broadcast use cases. Pricing starts at $0.0022 per minute with a free tier of 3,000 minutes per month and self-serve signup, scaling to enterprise plans with dedicated regional endpoints. The API is REST-based with SDK support for Python, Node.js, .NET, and Rust, and holds SOC 2 Type 2, HIPAA, GDPR, and ISO 27001 certifications.",
  "capabilities": {
    "supported_actions": [
      "transcribe_batch",
      "transcribe_streaming",
      "speaker_diarization",
      "speaker_identification",
      "language_detection",
      "word_timestamps",
      "translation",
      "summarization",
      "sentiment_analysis",
      "chapter_generation",
      "custom_dictionary",
      "audio_event_detection",
      "text_to_speech",
      "voice_agents_flow"
    ],
    "supported_regions": [
      "EU (eu1.asr.api.speechmatics.com)",
      "EU2 - enterprise only (eu2.asr.api.speechmatics.com)",
      "US (us1.asr.api.speechmatics.com)",
      "US2 - enterprise only (us2.asr.api.speechmatics.com)",
      "Australia (au1.asr.api.speechmatics.com)"
    ],
    "supported_languages": [
      "Arabic",
      "Bashkir",
      "Basque",
      "Belarusian",
      "Bengali",
      "Bulgarian",
      "Cantonese",
      "Catalan",
      "Croatian",
      "Czech",
      "Danish",
      "Dutch",
      "English",
      "Esperanto",
      "Estonian",
      "Finnish",
      "French",
      "Galician",
      "German",
      "Greek",
      "Hebrew",
      "Hindi",
      "Hungarian",
      "Indonesian",
      "Interlingua",
      "Irish",
      "Italian",
      "Japanese",
      "Korean",
      "Latvian",
      "Lithuanian",
      "Malay",
      "Maltese",
      "Mandarin",
      "Marathi",
      "Mongolian",
      "Norwegian",
      "Persian",
      "Polish",
      "Portuguese",
      "Romanian",
      "Russian",
      "Slovakian",
      "Slovenian",
      "Spanish",
      "Swahili",
      "Swedish",
      "Tagalog",
      "Tamil",
      "Thai",
      "Turkish",
      "Ukrainian",
      "Urdu",
      "Uyghur",
      "Vietnamese",
      "Welsh"
    ],
    "input_types": [
      "audio/wav",
      "audio/mp3",
      "audio/aac",
      "audio/ogg",
      "audio/mpeg",
      "audio/amr",
      "audio/m4a",
      "video/mp4",
      "audio/flac",
      "PCM_S16LE (real-time WebSocket streaming)"
    ],
    "output_types": [
      "JSON (json-v2)",
      "Plain text (.txt)",
      "SRT subtitles",
      "Word-level timestamps",
      "Speaker diarization output",
      "Alignment output (word_start_and_end, one_per_line)",
      "Translation output",
      "Sentiment analysis",
      "Summarization",
      "Chapter markers"
    ],
    "webhooks_supported": true,
    "sandbox_available": false,
    "sdk_languages": [
      "Python",
      "Node.js",
      ".NET",
      "Rust"
    ],
    "mcp_server_available": false
  },
  "integration": {
    "api_style": "rest",
    "base_url": "https://asr.api.speechmatics.com/v2",
    "api_version": "v2",
    "versioning_scheme": "url",
    "stability": "ga",
    "deprecation_policy_url": null,
    "auth_methods": [
      "api_key",
      "jwt"
    ],
    "auth_docs_url": "https://docs.speechmatics.com/get-started/authentication",
    "idempotency_supported": null,
    "error_format": "vendor-specific",
    "webhook_signing": null,
    "webhook_events_url": "https://docs.speechmatics.com/speech-to-text/batch/notifications",
    "rate_limit_requests": 10,
    "rate_limit_window": "second",
    "sdk_packages": [
      {
        "package": "speechmatics-batch",
        "language": "Python",
        "official": true,
        "repo_url": "https://github.com/speechmatics/speechmatics-python-sdk"
      },
      {
        "package": "speechmatics-rt",
        "language": "Python",
        "official": true,
        "repo_url": "https://github.com/speechmatics/speechmatics-python-sdk"
      },
      {
        "package": "speechmatics-voice",
        "language": "Python",
        "official": true,
        "repo_url": "https://github.com/speechmatics/speechmatics-python-sdk"
      },
      {
        "package": "speechmatics-tts",
        "language": "Python",
        "official": true,
        "repo_url": "https://github.com/speechmatics/speechmatics-python-sdk"
      },
      {
        "package": "@speechmatics/batch-client",
        "language": "Node.js",
        "official": true,
        "repo_url": "https://github.com/speechmatics/speechmatics-js-sdk"
      },
      {
        "package": "@speechmatics/real-time-client",
        "language": "Node.js",
        "official": true,
        "repo_url": "https://github.com/speechmatics/speechmatics-js-sdk"
      },
      {
        "package": "@speechmatics/flow-client",
        "language": "Node.js",
        "official": true,
        "repo_url": "https://github.com/speechmatics/speechmatics-js-sdk"
      },
      {
        "package": null,
        "language": ".NET",
        "official": true,
        "repo_url": "https://github.com/speechmatics/speechmatics-dotnet"
      },
      {
        "package": null,
        "language": "Rust",
        "official": true,
        "repo_url": "https://github.com/speechmatics/speechmatics-rs"
      }
    ],
    "mcp_url": null,
    "quickstart_url": "https://docs.speechmatics.com/get-started/quickstart"
  },
  "pricing": {
    "pricing_model": "usage_based",
    "has_published_pricing": true,
    "starting_price_usd": "0.0022",
    "price_basis": "minute",
    "free_tier_available": true,
    "free_tier_limit": "3000 minutes (50 hours) per month",
    "free_tier_details": "Free 3,000 minutes (50 hours) of STT per month; no credit card required. Free tier caps: 2 concurrent real-time sessions, 10 batch hours/month. (TTS free tier: 1 million characters/month - excluded from STT pricing scope.)",
    "minimum_commitment": null,
    "self_serve_signup": true,
    "requires_sales_call": false,
    "requires_verification": false,
    "enterprise_plan_available": true,
    "price_points": [
      {
        "plan": "Free",
        "item": "Speech-to-text transcription (batch and real-time, Standard model)",
        "amount_usd": "0.0000",
        "amount_percent": null,
        "per": "3,000 minutes (50 hours) per month included",
        "currency": "USD",
        "source_url": "https://www.speechmatics.com/pricing"
      },
      {
        "plan": "Pro",
        "item": "Batch transcription — Standard model",
        "amount_usd": "0.8000",
        "amount_percent": null,
        "per": "hour of audio",
        "currency": "USD",
        "source_url": "https://www.speechmatics.com/pricing"
      },
      {
        "plan": "Pro",
        "item": "Batch transcription — Enhanced model",
        "amount_usd": "1.0400",
        "amount_percent": null,
        "per": "hour of audio",
        "currency": "USD",
        "source_url": "https://www.speechmatics.com/pricing"
      },
      {
        "plan": "Pro",
        "item": "Real-time (streaming) transcription — Standard model",
        "amount_usd": "1.0400",
        "amount_percent": null,
        "per": "hour of audio",
        "currency": "USD",
        "source_url": "https://www.speechmatics.com/pricing"
      },
      {
        "plan": "Pro",
        "item": "Real-time (streaming) transcription — Enhanced model",
        "amount_usd": "1.3500",
        "amount_percent": null,
        "per": "hour of audio",
        "currency": "USD",
        "source_url": "https://www.speechmatics.com/pricing"
      },
      {
        "plan": "Pro",
        "item": "Volume discount on batch or real-time transcription above 500 hours/month",
        "amount_usd": null,
        "amount_percent": "20.0000",
        "per": "hour of audio (applied automatically above 500 hours/month per STT type)",
        "currency": "USD",
        "source_url": "https://www.speechmatics.com/pricing"
      },
      {
        "plan": "Enterprise",
        "item": "Batch or real-time transcription",
        "amount_usd": null,
        "amount_percent": null,
        "per": "custom (contact sales; additional volume discounts from 24,000 hours/year)",
        "currency": "USD",
        "source_url": "https://www.speechmatics.com/pricing"
      }
    ]
  },
  "compliance": {
    "soc2": "type_2",
    "hipaa": true,
    "gdpr": true,
    "iso_27001": true,
    "pci_dss": false,
    "sla_published": false,
    "sla_url": null,
    "data_retention_policy_url": "https://www.speechmatics.com/legal/privacy-policy",
    "documented_rate_limits": "Batch: 10 new jobs/second (POST); 50 job status requests/second (GET); 20,000 concurrent jobs max. Free tier: 2 concurrent real-time sessions, 10 hours/month batch. Paid tier: 50 concurrent real-time sessions, 6,000 hours/month. File size limit: <1 GB per direct upload. Max session duration: 48 hours. Max 50 speaker identifiers. Translation: max 5 target languages per request.",
    "known_restrictions": [
      "Supported batch input formats are exhaustive: wav, mp3, aac, ogg, mpeg, amr, m4a, mp4, flac only",
      "Raw audio formats without embedded codec cannot be processed in batch mode",
      "File size limit: less than 1 GB when submitting directly in request body (larger files must use URL)",
      "Maximum audio duration for batch jobs: 2 hours",
      "Data retention: audio files and transcripts deleted after 7 days",
      "Melia 1 model available in EU1 and US1 regions only",
      "Pro tier capped at 6,000 hours/month; Enterprise for higher volumes",
      "Maximum 50 speaker identifiers across all speakers",
      "Translation: maximum 5 target languages per request",
      "Real-time sessions auto-terminate after 48 hours, or 1 hour of no audio, or 3 minutes of no activity/pings"
    ]
  },
  "developer": {
    "docs_url": "https://docs.speechmatics.com/",
    "api_reference_url": null,
    "openapi_spec_url": null,
    "postman_collection_url": null,
    "changelog_url": null,
    "status_page_url": "https://status.speechmatics.com",
    "llms_txt_url": null,
    "markdown_docs_url": null,
    "rendering": "static"
  },
  "adoption": {
    "launched_at": "2006-01-01",
    "ga_date": null,
    "github_stars": null,
    "github_stars_at": null,
    "notable_customers": [
      "what3words",
      "3Play Media",
      "Veritone",
      "Deloitte UK",
      "Vonage"
    ]
  },
  "scores": {
    "agent_friendliness": 30,
    "pricing_transparency": 100,
    "setup_speed": 85,
    "docs_quality": 15,
    "procurement_friction": 100,
    "trust_readiness": 70,
    "best_for": [
      "Prototypes and side projects - free to start, no sales call",
      "Regulated or enterprise workloads - compliance attestations and an enterprise plan",
      "Teams needing broad API coverage out of the box"
    ],
    "avoid_if": []
  },
  "sources": [
    {
      "field": "categories",
      "url": "https://www.speechmatics.com/text-to-speech",
      "excerpt": "The service delivers human-like speech at scale optimized for low-latency real-time applications like voice agents and interactive assistants. The service costs $0.011 per 1k characters.",
      "confidence": "high"
    },
    {
      "field": "categories",
      "url": "https://www.speechmatics.com/company/articles-and-news/speechmatics-introduces-flow",
      "excerpt": "Flow combines Speechmatics' real-time automatic speech recognition (ASR) with large language models (LLMs) and text-to-speech capabilities for creating voice-based interactions.",
      "confidence": "high"
    },
    {
      "field": "vendor_description",
      "url": "https://www.speechmatics.com/product",
      "excerpt": "Low-latency speech-to-text for multilingual, multi-speaker conversations.",
      "confidence": "high"
    },
    {
      "field": "categories",
      "url": "https://docs.speechmatics.com/",
      "excerpt": "Speech-to-Text: Transcription with batch and realtime APIs. Text-to-Speech: Learn how to convert text to speech using our API. Voice Agents: Learn how to build voice agents with Speechmatics integrations and the Voice SDK.",
      "confidence": "high"
    },
    {
      "field": "pricing_model",
      "url": "https://www.speechmatics.com/pricing",
      "excerpt": "from $0.129/hr — No commitment required. Billing for Pro customers occurs monthly on the 1st, calculated to the second, based on the cost per hour.",
      "confidence": "high"
    },
    {
      "field": "free_tier_details",
      "url": "https://www.speechmatics.com/pricing",
      "excerpt": "Free 3,000 minutes (50 hours) per month for Speech-to-Text with no credit card required. 2 concurrent real-time sessions.",
      "confidence": "high"
    },
    {
      "field": "soc2",
      "url": "https://www.speechmatics.com/security",
      "excerpt": "Trusted where privacy matters most - SOC 2 Type II-certified.",
      "confidence": "high"
    },
    {
      "field": "gdpr",
      "url": "https://www.speechmatics.com/security",
      "excerpt": "Compliant with privacy and compliance directives such as the GDPR.",
      "confidence": "high"
    },
    {
      "field": "pci_dss",
      "url": "https://www.speechmatics.com/security",
      "excerpt": "Trusted where privacy matters most - SOC 2 Type II-certified. Fully compliant with HIPAA. ISO/IEC 27001:2022 accreditation. Compliant with GDPR.",
      "confidence": "high"
    },
    {
      "field": "supported_languages",
      "url": "https://www.speechmatics.com/languages",
      "excerpt": "One API, 56+ languages, covering over half the world's population. Arabic, Bashkir, Basque, Belarusian, Bengali, Bulgarian, Cantonese, Catalan, Croatian, Czech, Danish, Dutch, English, Esperanto, Estonian, Finnish, French, Galician, German, Greek, Hebrew, Hindi, Hungarian, Interlingua, Irish, Italian, Indonesian, Japanese, Korean, Latvian, Lithuanian, Malay, Maltese, Mandarin, Marathi, Mongolian, Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Slovakian, Slovenian, Spanish, Swahili, Swedish, Tamil, Tagalog, Thai, Turkish, Urdu, Uyghur, Ukrainian, Vietnamese, and Welsh.",
      "confidence": "high"
    },
    {
      "field": "enterprise_plan_available",
      "url": "https://www.speechmatics.com/pricing",
      "excerpt": "Unlimited scale, with flexible deployments. No rate limits. Custom models available.",
      "confidence": "high"
    },
    {
      "field": "has_published_pricing",
      "url": "https://www.speechmatics.com/pricing",
      "excerpt": "from $0.129/hr. Volume discounts are automatically applied on any billable usage above 500 hours monthly per model type, with a 20% discount.",
      "confidence": "high"
    },
    {
      "field": "webhooks_supported",
      "url": "https://docs.speechmatics.com/speech-to-text/batch/notifications",
      "excerpt": "Notifications allow users to be informed both as to the status of a job and to receive the output, without having to continuously poll the Speechmatics SaaS.",
      "confidence": "high"
    },
    {
      "field": "supported_regions",
      "url": "https://docs.speechmatics.com/get-started/authentication",
      "excerpt": "eu1.asr.api.speechmatics.com; eu2.asr.api.speechmatics.com; us1.asr.api.speechmatics.com; us2.asr.api.speechmatics.com; au1.asr.api.speechmatics.com",
      "confidence": "high"
    },
    {
      "field": "free_tier_available",
      "url": "https://www.speechmatics.com/pricing",
      "excerpt": "Free 3,000 minutes (50 hours) per month. No credit card required.",
      "confidence": "high"
    },
    {
      "field": "free_tier_details",
      "url": "https://docs.speechmatics.com/speech-to-text/batch/limits",
      "excerpt": "Free: 10 hours/month batch capacity. Paid: 6,000 hours/month. Enterprise: Custom arrangement.",
      "confidence": "high"
    },
    {
      "field": "hipaa",
      "url": "https://www.speechmatics.com/security",
      "excerpt": "Fully compliant with the Health Insurance Portability and Accountability Act (HIPAA).",
      "confidence": "high"
    },
    {
      "field": "iso_27001",
      "url": "https://www.speechmatics.com/security",
      "excerpt": "Privacy and compliance built in with our ISO/IEC 27001:2022 accreditation.",
      "confidence": "high"
    },
    {
      "field": "sla_published",
      "url": "https://www.speechmatics.com/legal",
      "excerpt": "SPEECHMATICS DOES NOT WARRANT THAT THE SOFTWARE IS ERROR-FREE OR THAT OPERATION OF THE SOFTWARE WILL BE SECURE OR UNINTERRUPTED.",
      "confidence": "high"
    },
    {
      "field": "documented_rate_limits",
      "url": "https://docs.speechmatics.com/speech-to-text/batch/limits",
      "excerpt": "10 new jobs per second (POST API calls); 50 job status requests per second (GET API calls); Maximum of 20,000 concurrent jobs allowed. Free: 10 hours/month. Paid: 6,000 hours/month.",
      "confidence": "high"
    },
    {
      "field": "sandbox_available",
      "url": "https://www.speechmatics.com/pricing",
      "excerpt": "No credit card required — free tier in the live production environment, not a separate sandbox.",
      "confidence": "high"
    },
    {
      "field": "input_types",
      "url": "https://docs.speechmatics.com/introduction/errors-rate-limits",
      "excerpt": "The following file formats types are supported for transcription by REST API: wav, mp3, aac, ogg, mpeg, amr, m4a, mp4, flac. The list above is exhaustive - any file format outside the list above is explicitly not supported.",
      "confidence": "high"
    },
    {
      "field": "sdk_languages",
      "url": "https://docs.speechmatics.com/integrations-and-sdks/sdks",
      "excerpt": "Python - Offers Voice, Realtime, Batch, and TTS SDKs; JavaScript - Includes Realtime and Batch clients; .NET - Features Realtime capabilities; Rust - Supports both Realtime and Batch functionality.",
      "confidence": "high"
    },
    {
      "field": "known_restrictions",
      "url": "https://docs.speechmatics.com/speech-to-text/batch/limits",
      "excerpt": "When submitting media directly in the request body, files must be less than 1 GB in size or the job will be rejected.",
      "confidence": "high"
    },
    {
      "field": "auth_methods",
      "url": "https://docs.speechmatics.com/get-started/authentication",
      "excerpt": "API Key (Long-lived) — Primary authentication method for all Speechmatics API interactions. Temporary Keys (JWTs) — Short-lived tokens for improved security and reduced latency.",
      "confidence": "high"
    },
    {
      "field": "base_url",
      "url": "https://docs.speechmatics.com/speech-to-text/batch/limits",
      "excerpt": "10 new jobs per second (POST API calls)",
      "confidence": "high"
    },
    {
      "field": "api_version",
      "url": "https://docs.speechmatics.com/api-ref/batch/speechmatics-asr-rest-api",
      "excerpt": "Version: 2.0.0",
      "confidence": "high"
    },
    {
      "field": "api_style",
      "url": "https://www.speechmatics.com/ai-info",
      "excerpt": "The platform offers REST and WebSocket APIs alongside SDKs for Python and Node.js.",
      "confidence": "high"
    },
    {
      "field": "sdk_packages",
      "url": "https://github.com/speechmatics/speechmatics-js-sdk",
      "excerpt": "@speechmatics/batch-client for file upload transcription; @speechmatics/real-time-client for streaming audio transcription; @speechmatics/flow-client for the Flow API voice assistant engine.",
      "confidence": "high"
    },
    {
      "field": "error_format",
      "url": "https://docs.speechmatics.com/api-ref/realtime-transcription-websocket",
      "excerpt": "message (required): Constant value \"Error\"; type (required): Error category (e.g., invalid_message, not_authorised, quota_exceeded); reason (required): Human-readable explanation of the error; code (optional): Integer error code.",
      "confidence": "high"
    },
    {
      "field": "webhook_signing",
      "url": "https://docs.speechmatics.com/speech-to-text/batch/notifications",
      "excerpt": "If required to successfully authenticate to your specified notification location — auth_headers that you configure.",
      "confidence": "high"
    },
    {
      "field": "starting_price_usd",
      "url": "https://www.speechmatics.com/pricing",
      "excerpt": "from$0.129/hr — Pro tier starting price for Speech-to-Text. Billing calculated to the second, based on the cost per hour.",
      "confidence": "high"
    },
    {
      "field": "free_tier_limit",
      "url": "https://www.speechmatics.com/pricing",
      "excerpt": "Free 3,000 minutes (50 hours) per month for Speech-to-Text with no credit card required.",
      "confidence": "high"
    },
    {
      "field": "launched_at",
      "url": "https://en.wikipedia.org/wiki/Speechmatics",
      "excerpt": "Speechmatics was originally named Cantab Research Ltd when founded in 2006 by speech recognition specialist Dr. Tony Robinson.",
      "confidence": "high"
    },
    {
      "field": "requires_verification",
      "url": "https://www.speechmatics.com/developers",
      "excerpt": "Get started via portal.speechmatics.com/signup/ — The webpage does not mention any verification requirements for signing up.",
      "confidence": "medium"
    },
    {
      "field": "known_restrictions",
      "url": "https://docs.speechmatics.com/introduction/errors-rate-limits",
      "excerpt": "The list above is exhaustive - any file format outside the list above is explicitly not supported.",
      "confidence": "high"
    },
    {
      "field": "base_url",
      "url": "https://asr.api.speechmatics.com/v2",
      "excerpt": "Welcome to the Speechmatics Automatic Speech Recognition API v2",
      "confidence": "high"
    },
    {
      "field": "api_version",
      "url": "https://docs.speechmatics.com/api-ref/realtime-transcription-websocket",
      "excerpt": "wss://eu.rt.speechmatics.com/v2/",
      "confidence": "high"
    },
    {
      "field": "versioning_scheme",
      "url": "https://docs.speechmatics.com/api-ref/realtime-transcription-websocket",
      "excerpt": "wss://eu.rt.speechmatics.com/v2/",
      "confidence": "high"
    },
    {
      "field": "sdk_packages",
      "url": "https://github.com/speechmatics/speechmatics-python-sdk",
      "excerpt": "Speechmatics Python SDK provides convenient access to enterprise-grade speech-to-text APIs from Python applications. Four packages: speechmatics-batch, speechmatics-rt, speechmatics-voice, speechmatics-tts.",
      "confidence": "high"
    },
    {
      "field": "quickstart_url",
      "url": "https://docs.speechmatics.com/get-started/quickstart",
      "excerpt": "Explore our developer guides — Batch transcription, Realtime streaming, Text-to-speech.",
      "confidence": "high"
    },
    {
      "field": "webhook_events_url",
      "url": "https://docs.speechmatics.com/speech-to-text/batch/notifications",
      "excerpt": "Speechmatics supports the following notification statuses: success, error, fetch_error, trim_error.",
      "confidence": "high"
    },
    {
      "field": "rate_limit_requests",
      "url": "https://docs.speechmatics.com/speech-to-text/batch/limits",
      "excerpt": "10 new jobs per second (POST API calls); 50 job status requests per second (GET API calls); Maximum of 20,000 concurrent jobs allowed.",
      "confidence": "high"
    },
    {
      "field": "price_basis",
      "url": "https://www.speechmatics.com/pricing",
      "excerpt": "Billing for Pro customers occurs monthly on the 1st, calculated to the second, based on the cost per hour.",
      "confidence": "high"
    },
    {
      "field": "notable_customers",
      "url": "https://techcrunch.com/2022/06/28/speechmatics-raises-62m-for-its-inclusive-approach-to-speech-to-text-ai/",
      "excerpt": "notable names include what3words, 3Play Media, Veritone, Deloitte UK and Vonage",
      "confidence": "high"
    },
    {
      "field": "data_retention_policy_url",
      "url": "https://www.speechmatics.com/legal/privacy-policy",
      "excerpt": "Speechmatics retains data only as required or permitted by local law and while it has a legitimate business purpose.",
      "confidence": "medium"
    }
  ],
  "fields_not_found": [
    "pci_dss (not mentioned on security page)",
    "sla_published (no uptime SLA; ToS disclaims uninterrupted service)",
    "mcp_server_available",
    "deprecation_policy_url",
    "sla_url",
    "idempotency_supported",
    "ga_date",
    "mcp_url",
    "rate_limit_window_realtime"
  ],
  "source_confidence": "high",
  "last_verified_at": "2026-06-21T00:00:00.000Z",
  "contribute": {
    "note": "This data is crowd-editable. Suggest corrections or leave a review via these endpoints - no auth required, requests are rate-limited, and every submission is reviewed before it goes live. For a field edit, {field} is any key in this response and a citation is required.",
    "endpoints": [
      {
        "action": "review",
        "label": "Leave a review or comment",
        "method": "POST",
        "url": "https://apio.sh/api/feedback/speechmatics",
        "example_body": {
          "kind": "review",
          "rating": 5,
          "body": "Your experience with this API…"
        }
      },
      {
        "action": "field_edit",
        "label": "Suggest a correction to a field (cite a source)",
        "method": "POST",
        "url": "https://apio.sh/api/suggest/speechmatics/{field}",
        "example_body": {
          "value": "corrected value",
          "citations": [
            {
              "url": "https://source.example/page",
              "excerpt": "supporting quote"
            }
          ],
          "note": "what changed and why"
        }
      },
      {
        "action": "new_api",
        "label": "Suggest a new API to add (only name is required - send as much as you can cite)",
        "method": "POST",
        "url": "https://apio.sh/api/suggest/api",
        "example_body": {
          "value": {
            "name": "Acme Email API",
            "website_url": "https://acme.example",
            "vendor_name": "Acme",
            "categories": [
              "email"
            ],
            "pricing_model": "usage_based",
            "has_published_pricing": true,
            "free_tier_available": true,
            "price_points": [
              {
                "plan": "Pay as you go",
                "item": "1,000 emails",
                "amount_usd": 1,
                "per": "1,000 emails",
                "source_url": "https://acme.example/pricing"
              }
            ],
            "soc2": "type_2",
            "docs_url": "https://docs.acme.example"
          },
          "citations": [
            {
              "url": "https://acme.example/pricing",
              "excerpt": "$1 per 1,000 emails"
            }
          ]
        },
        "value_schema": [
          {
            "field": "name",
            "type": "string",
            "label": "Product name (the only required field)"
          },
          {
            "field": "website_url",
            "type": "string",
            "label": "Marketing website URL"
          },
          {
            "field": "vendor_name",
            "type": "string",
            "label": "Company/vendor name behind the product"
          },
          {
            "field": "vendor_description",
            "type": "string",
            "label": "One-line description, quoted from the vendor"
          },
          {
            "field": "categories",
            "type": "string[]",
            "label": "Category/leaf slugs it belongs to, e.g. [\"email\",\"sms\"]"
          },
          {
            "field": "primary_use_cases",
            "type": "string[]",
            "label": "What it's used for"
          },
          {
            "field": "supported_actions",
            "type": "string[]",
            "label": "Concrete API actions/capabilities"
          },
          {
            "field": "supported_regions",
            "type": "string[]",
            "label": "Countries/regions/data-residency"
          },
          {
            "field": "supported_languages",
            "type": "string[]",
            "label": "Human/spoken languages supported"
          },
          {
            "field": "input_types",
            "type": "string[]",
            "label": "Accepted input types/formats"
          },
          {
            "field": "output_types",
            "type": "string[]",
            "label": "Produced output types/formats"
          },
          {
            "field": "webhooks_supported",
            "type": "bool",
            "label": "Supports webhooks?"
          },
          {
            "field": "sandbox_available",
            "type": "bool",
            "label": "Dedicated sandbox/test mode?"
          },
          {
            "field": "sdk_languages",
            "type": "string[]",
            "label": "Languages with an official SDK"
          },
          {
            "field": "mcp_server_available",
            "type": "bool",
            "label": "Official MCP server?"
          },
          {
            "field": "pricing_model",
            "type": "enum",
            "label": "Pricing model",
            "values": [
              "usage_based",
              "subscription",
              "seat_based",
              "hybrid",
              "contact_sales"
            ]
          },
          {
            "field": "has_published_pricing",
            "type": "bool",
            "label": "Concrete prices published publicly?"
          },
          {
            "field": "free_tier_available",
            "type": "bool",
            "label": "Recurring/perpetual free tier (not a trial)?"
          },
          {
            "field": "free_tier_details",
            "type": "string",
            "label": "What the free tier includes"
          },
          {
            "field": "minimum_commitment",
            "type": "string",
            "label": "Any stated minimum spend/commitment"
          },
          {
            "field": "self_serve_signup",
            "type": "bool",
            "label": "Get an API key without talking to sales?"
          },
          {
            "field": "requires_sales_call",
            "type": "bool",
            "label": "Does going live require sales?"
          },
          {
            "field": "enterprise_plan_available",
            "type": "bool",
            "label": "Named enterprise tier?"
          },
          {
            "field": "starting_price_usd",
            "type": "number",
            "label": "Lowest published paid entry price (USD number)"
          },
          {
            "field": "price_basis",
            "type": "string",
            "label": "Unit the starting price is per, e.g. '1,000 emails'"
          },
          {
            "field": "free_tier_limit",
            "type": "string",
            "label": "Free-tier ceiling in literal terms"
          },
          {
            "field": "price_points",
            "type": "object[]",
            "label": "Structured prices: [{plan,item,amount_usd,amount_percent,per,source_url}]"
          },
          {
            "field": "soc2",
            "type": "enum",
            "label": "SOC 2 status",
            "values": [
              "type_2",
              "type_1",
              "in_progress",
              "none",
              "unknown"
            ]
          },
          {
            "field": "hipaa",
            "type": "bool",
            "label": "HIPAA (e.g. BAA available)?"
          },
          {
            "field": "gdpr",
            "type": "bool",
            "label": "GDPR compliance stated?"
          },
          {
            "field": "iso_27001",
            "type": "bool",
            "label": "ISO 27001 certified?"
          },
          {
            "field": "pci_dss",
            "type": "bool",
            "label": "PCI DSS compliant?"
          },
          {
            "field": "sla_published",
            "type": "bool",
            "label": "Published SLA / uptime commitment?"
          },
          {
            "field": "documented_rate_limits",
            "type": "string",
            "label": "Documented rate limits, quoted"
          },
          {
            "field": "known_restrictions",
            "type": "string[]",
            "label": "Notable documented restrictions/limits"
          },
          {
            "field": "auth_methods",
            "type": "string[]",
            "label": "Auth methods",
            "values": [
              "api_key",
              "oauth2",
              "jwt",
              "basic",
              "hmac_signature",
              "mtls",
              "session"
            ]
          },
          {
            "field": "api_style",
            "type": "enum",
            "label": "Primary API style",
            "values": [
              "rest",
              "graphql",
              "grpc",
              "soap",
              "websocket"
            ]
          },
          {
            "field": "base_url",
            "type": "string",
            "label": "API root/base URL"
          },
          {
            "field": "api_version",
            "type": "string",
            "label": "Current API version string"
          },
          {
            "field": "quickstart_url",
            "type": "string",
            "label": "Quickstart / hello-world URL"
          },
          {
            "field": "docs_url",
            "type": "string",
            "label": "Developer docs URL"
          },
          {
            "field": "api_reference_url",
            "type": "string",
            "label": "API reference URL"
          },
          {
            "field": "openapi_spec_url",
            "type": "string",
            "label": "OpenAPI spec URL"
          },
          {
            "field": "changelog_url",
            "type": "string",
            "label": "Changelog URL"
          },
          {
            "field": "status_page_url",
            "type": "string",
            "label": "Status page URL"
          },
          {
            "field": "notable_customers",
            "type": "string[]",
            "label": "Named public customers"
          },
          {
            "field": "launched_at",
            "type": "string",
            "label": "Launch date (ISO date or year)"
          }
        ]
      },
      {
        "action": "token",
        "label": "Optional - raise your rate limit",
        "method": "GET",
        "url": "https://apio.sh/api/feedback/token"
      }
    ]
  }
}