{
  "name": "Speechmatics Text to Speech",
  "slug": "speechmatics-tts",
  "website_url": "https://www.speechmatics.com/text-to-speech",
  "vendor_description": "\"Natural, human-like synthetic voices\" with low latency designed for real-time conversational applications and voice AI agents.",
  "categories": [
    "text-to-speech"
  ],
  "summary": "Speechmatics Text to Speech is a REST API for low-latency speech synthesis aimed at voice AI agents and real-time conversational applications, offering streaming output with initial audio latency under 200ms. Pricing starts at $0.011 per 1,000 characters with a free tier of 1 million characters per month, and enterprise plans are available. The service is certified SOC 2 Type 2, HIPAA, GDPR, and ISO 27001, and supports both SaaS and on-premises deployment. Current coverage is English only (US and UK voices), with SDKs for Python, Node.js, .NET, and Rust.",
  "capabilities": {
    "supported_actions": [
      "synthesize_speech",
      "streaming_tts",
      "low_latency_synthesis"
    ],
    "supported_regions": [
      "global (SaaS)",
      "on-premises deployment"
    ],
    "supported_languages": [
      "English (US)",
      "English (UK)"
    ],
    "input_types": [
      "plain text"
    ],
    "output_types": [
      "wav",
      "pcm"
    ],
    "webhooks_supported": false,
    "sandbox_available": false,
    "sdk_languages": [
      "Python",
      "Node.js",
      ".NET",
      "Rust"
    ],
    "mcp_server_available": false
  },
  "integration": {
    "api_style": "rest",
    "base_url": "https://preview.tts.speechmatics.com",
    "api_version": null,
    "versioning_scheme": "none",
    "stability": "beta",
    "deprecation_policy_url": null,
    "auth_methods": [
      "api_key",
      "jwt"
    ],
    "auth_docs_url": "https://docs.speechmatics.com/get-started/authentication",
    "idempotency_supported": false,
    "error_format": "vendor-specific",
    "webhook_signing": null,
    "webhook_events_url": null,
    "rate_limit_requests": null,
    "rate_limit_window": null,
    "sdk_packages": [
      {
        "package": "speechmatics-tts",
        "language": "Python",
        "official": true,
        "repo_url": "https://github.com/speechmatics/speechmatics-python-sdk"
      },
      {
        "package": "speechmatics-python-sdk",
        "language": "Python",
        "official": true,
        "repo_url": "https://github.com/speechmatics/speechmatics-python-sdk"
      },
      {
        "package": "@speechmatics/real-time-client",
        "language": "Node.js",
        "official": true,
        "repo_url": "https://github.com/speechmatics/speechmatics-js-sdk"
      },
      {
        "package": "@speechmatics/batch-client",
        "language": "Node.js",
        "official": true,
        "repo_url": "https://github.com/speechmatics/speechmatics-js-sdk"
      },
      {
        "package": "speechmatics-dotnet",
        "language": ".NET",
        "official": true,
        "repo_url": "https://github.com/speechmatics/speechmatics-dotnet"
      },
      {
        "package": "speechmatics-rs",
        "language": "Rust",
        "official": true,
        "repo_url": "https://github.com/speechmatics/speechmatics-rs"
      }
    ],
    "mcp_url": null,
    "quickstart_url": "https://docs.speechmatics.com/text-to-speech/quickstart"
  },
  "pricing": {
    "pricing_model": "hybrid",
    "has_published_pricing": true,
    "starting_price_usd": "0.0110",
    "price_basis": "1,000 characters",
    "free_tier_available": true,
    "free_tier_limit": "1,000,000 characters/month",
    "free_tier_details": "1 million characters (~20 hours) per month included free on Free and Pro plans, English language only.",
    "minimum_commitment": null,
    "self_serve_signup": true,
    "requires_sales_call": false,
    "requires_verification": false,
    "enterprise_plan_available": true,
    "price_points": [
      {
        "plan": "Free",
        "item": "Text-to-speech synthesis",
        "amount_usd": "0.0000",
        "amount_percent": null,
        "per": "1,000,000 characters per month (included)",
        "currency": "USD",
        "source_url": "https://www.speechmatics.com/pricing"
      },
      {
        "plan": "Pro",
        "item": "Text-to-speech synthesis (included allowance)",
        "amount_usd": "0.0000",
        "amount_percent": null,
        "per": "1,000,000 characters per month (included)",
        "currency": "USD",
        "source_url": "https://www.speechmatics.com/pricing"
      },
      {
        "plan": null,
        "item": "Text-to-speech synthesis (overage / pay-as-you-go)",
        "amount_usd": "0.0110",
        "amount_percent": null,
        "per": "1,000 characters",
        "currency": "USD",
        "source_url": "https://www.speechmatics.com/text-to-speech"
      }
    ]
  },
  "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/terms-of-service",
    "documented_rate_limits": "No specific numeric rate/concurrency limits published for TTS. Documentation notes: \"If you encounter rate limit errors, use retry with exponential backoff.\" Initial audio latency: less than 200ms, with subsequent chunks faster than real time.",
    "known_restrictions": [
      "English language only (US and UK voices); additional languages in development",
      "No SSML support documented",
      "No bidirectional streaming - output streaming only",
      "No voice speed/pitch/emphasis controls",
      "Python SDK only (TTS-specific); no official Node.js/other SDK for TTS yet",
      "Input text and generated audio retained during preview to improve the service; production will offer non-retentive option",
      "4 voices only: Sarah (UK Female), Theo (UK Male), Megan (US Female), Jack (US Male)",
      "Audio output at 16 kHz, 16-bit, mono only",
      "Product still in preview (billing announced for October 2025)"
    ]
  },
  "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": [
      "VAPI",
      "LiveKit",
      "AI Media",
      "Content Guru",
      "Echo360",
      "Pipecat",
      "Ubisoft (Blue Mammoth Games)"
    ]
  },
  "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",
      "Cost-sensitive teams - low, transparent entry price"
    ],
    "avoid_if": []
  },
  "sources": [
    {
      "field": "categories",
      "url": "https://www.speechmatics.com/text-to-speech",
      "excerpt": "$0.011 per 1k characters — making Speechmatics one of the most affordable TTS options available.",
      "confidence": "high"
    },
    {
      "field": "supported_languages",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "We support English. We plan to launch additional languages in 2025.",
      "confidence": "high"
    },
    {
      "field": "supported_actions",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "The API supports streaming audio output (you can play audio as it arrives), but not full bidirectional streaming.",
      "confidence": "high"
    },
    {
      "field": "sdk_languages",
      "url": "https://docs.speechmatics.com/integrations-and-sdks/sdks",
      "excerpt": "TTS (Python) - Convert text to speech — available in the speechmatics-python-sdk repository, sdk/tts directory.",
      "confidence": "high"
    },
    {
      "field": "pricing_model",
      "url": "https://www.speechmatics.com/pricing",
      "excerpt": "Free 1 million characters (~20hrs) per month",
      "confidence": "high"
    },
    {
      "field": "has_published_pricing",
      "url": "https://www.speechmatics.com/text-to-speech",
      "excerpt": "$0.011 per 1k characters — making Speechmatics one of the most affordable TTS options available.",
      "confidence": "medium"
    },
    {
      "field": "free_tier_available",
      "url": "https://www.speechmatics.com/pricing",
      "excerpt": "Free 1 million characters (~20hrs) per month",
      "confidence": "high"
    },
    {
      "field": "enterprise_plan_available",
      "url": "https://www.speechmatics.com/pricing",
      "excerpt": "SaaS or On-premises deployment",
      "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/security",
      "excerpt": "No SLA or uptime commitment mentioned on the security or trust pages.",
      "confidence": "high"
    },
    {
      "field": "sandbox_available",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "Text to speech is currently in preview and free to use.",
      "confidence": "high"
    },
    {
      "field": "documented_rate_limits",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "We expect to support high concurrency when released. If you encounter rate limit errors, use retry with exponential backoff.",
      "confidence": "high"
    },
    {
      "field": "known_restrictions",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "During preview, input text and generated audio are retained to improve the service. Production will offer non-retentive and data-retentive options.",
      "confidence": "high"
    },
    {
      "field": "mcp_server_available",
      "url": "https://www.speechmatics.com/flow",
      "excerpt": "Speechmatics' Flow platform allows integration with existing services, LLMs, chatbots, LangGraph agents, and MCP servers",
      "confidence": "medium"
    },
    {
      "field": "auth_methods",
      "url": "https://docs.speechmatics.com/get-started/authentication",
      "excerpt": "For client-side applications, temporary keys (JWTs) are recommended for client-side calls to authenticate requests, and these can be passed as a query param to the Websocket connection request URL.",
      "confidence": "high"
    },
    {
      "field": "website_url",
      "url": "https://www.speechmatics.com/text-to-speech",
      "excerpt": "Free Text to Speech Online — Natural AI Voices in Real Time | Speechmatics",
      "confidence": "high"
    },
    {
      "field": "vendor_description",
      "url": "https://www.speechmatics.com/text-to-speech",
      "excerpt": "Natural, human-like synthetic voices with low latency designed for real-time conversational applications and voice AI agents.",
      "confidence": "high"
    },
    {
      "field": "supported_languages",
      "url": "https://www.speechmatics.com/text-to-speech",
      "excerpt": "Currently available in English (both British and American variants).",
      "confidence": "high"
    },
    {
      "field": "output_types",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "Raw PCM (Pulse Code Modulation) data",
      "confidence": "high"
    },
    {
      "field": "sdk_languages",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "Official SDKs for different programming languages are not available yet. The API can be accessed using standard HTTP requests as shown in the quickstart example. We will release official SDKs later.",
      "confidence": "high"
    },
    {
      "field": "pricing_model",
      "url": "https://www.speechmatics.com/text-to-speech",
      "excerpt": "$0.011 per 1k characters",
      "confidence": "high"
    },
    {
      "field": "has_published_pricing",
      "url": "https://www.speechmatics.com/company/articles-and-news/best-tts-apis-in-2025-top-12-text-to-speech-services-for-developers",
      "excerpt": "at $0.011 per 1,000 characters, Speechmatics is 11–27× cheaper than ElevenLabs",
      "confidence": "medium"
    },
    {
      "field": "free_tier_details",
      "url": "https://www.speechmatics.com/pricing",
      "excerpt": "Free 1 million characters (~20hrs) per month",
      "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": "SOC 2 Type II-certified... ISO/IEC 27001:2022 accreditation... Fully compliant with HIPAA... GDPR",
      "confidence": "high"
    },
    {
      "field": "webhooks_supported",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "Webhook and callback support is not available. This feature may be added in future releases for handling long-running synthesis requests.",
      "confidence": "high"
    },
    {
      "field": "documented_rate_limits",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "The initial audio chunk typically returns in less than 200ms, with subsequent audio chunks returning faster than real time.",
      "confidence": "high"
    },
    {
      "field": "known_restrictions",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "No voice control for speed, pitch, or emphasis yet",
      "confidence": "high"
    },
    {
      "field": "self_serve_signup",
      "url": "https://portal.speechmatics.com/signup/",
      "excerpt": "Self-serve signup available at portal.speechmatics.com/signup/",
      "confidence": "high"
    },
    {
      "field": "auth_methods",
      "url": "https://docs.speechmatics.com/get-started/authentication",
      "excerpt": "Your API key must be used with any interaction with the Speechmatics API to authenticate to the service. Any interaction without this key will receive a HTTP 401 - Unauthorized response.",
      "confidence": "high"
    },
    {
      "field": "auth_docs_url",
      "url": "https://docs.speechmatics.com/get-started/authentication",
      "excerpt": "Your API key must be used with any interaction with the Speechmatics API to authenticate to the service.",
      "confidence": "high"
    },
    {
      "field": "api_style",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "The documentation shows the generate endpoint structure: https://preview.tts.speechmatics.com/generate/<voice_id>",
      "confidence": "high"
    },
    {
      "field": "stability",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "Text to speech is currently in preview and free to use.",
      "confidence": "high"
    },
    {
      "field": "sdk_packages",
      "url": "https://docs.speechmatics.com/integrations-and-sdks/sdks",
      "excerpt": "Python TTS SDK at github.com/speechmatics/speechmatics-python-sdk/tree/main/sdk/tts — pip install speechmatics-tts",
      "confidence": "high"
    },
    {
      "field": "sdk_packages",
      "url": "https://github.com/speechmatics/speechmatics-js-sdk",
      "excerpt": "Javascript and Typescript SDK for Speechmatics",
      "confidence": "high"
    },
    {
      "field": "idempotency_supported",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "Idempotency not mentioned in documentation.",
      "confidence": "medium"
    },
    {
      "field": "rate_limit_requests",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "We expect to support high concurrency when released. If you encounter rate limit errors, use retry with exponential backoff.",
      "confidence": "high"
    },
    {
      "field": "starting_price_usd",
      "url": "https://www.speechmatics.com/text-to-speech",
      "excerpt": "Just $0.011/1k characters — making Speechmatics one of the most affordable TTS options available.",
      "confidence": "high"
    },
    {
      "field": "free_tier_limit",
      "url": "https://www.speechmatics.com/pricing",
      "excerpt": "Free 1 million characters (~20hrs) per month",
      "confidence": "high"
    },
    {
      "field": "launched_at",
      "url": "https://www.speechmatics.com/ai-info",
      "excerpt": "Founded: 2006 — Headquarters: Cambridge, United Kingdom",
      "confidence": "high"
    },
    {
      "field": "error_format",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "Responses include HTTP status codes; error details returned in response text.",
      "confidence": "low"
    },
    {
      "field": "mcp_url",
      "url": "https://registry.modelcontextprotocol.io/",
      "excerpt": null,
      "confidence": "high"
    },
    {
      "field": "base_url",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "Base URL: https://preview.tts.speechmatics.com — Endpoint Pattern: /generate/<voice_id>",
      "confidence": "high"
    },
    {
      "field": "stability",
      "url": "https://www.speechmatics.com/company/articles-and-news/why-we-built-our-low-latency-text-to-speech",
      "excerpt": "The Text-to-Speech Preview is live today.",
      "confidence": "high"
    },
    {
      "field": "sdk_packages",
      "url": "https://github.com/speechmatics/speechmatics-python-sdk",
      "excerpt": "Python SDKs for Speechmatics APIs",
      "confidence": "high"
    },
    {
      "field": "quickstart_url",
      "url": "https://docs.speechmatics.com/",
      "excerpt": "/text-to-speech/quickstart.md – Learn how to convert text to speech using our API",
      "confidence": "high"
    },
    {
      "field": "webhook_signing",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "Webhook and callback support is not available. This feature may be added in future releases.",
      "confidence": "high"
    },
    {
      "field": "starting_price_usd",
      "url": "https://www.speechmatics.com/text-to-speech",
      "excerpt": "Scalable pricing → $0.011 per 1k characters keeps costs low.",
      "confidence": "high"
    },
    {
      "field": "price_basis",
      "url": "https://www.speechmatics.com/text-to-speech",
      "excerpt": "$0.011 per 1k characters",
      "confidence": "high"
    },
    {
      "field": "data_retention_policy_url",
      "url": "https://www.speechmatics.com/legal/terms-of-service",
      "excerpt": "Seven days after termination of the Subscription Term, Speechmatics shall delete all copies of all or any of the AV Files.",
      "confidence": "medium"
    },
    {
      "field": "notable_customers",
      "url": "https://www.speechmatics.com/ai-info",
      "excerpt": "Notable customers listed: VAPI, AI Media, Content Guru, Echo360, LiveKit, Ubisoft (Blue Mammoth Games), Pipecat",
      "confidence": "high"
    },
    {
      "field": "versioning_scheme",
      "url": "https://docs.speechmatics.com/text-to-speech/quickstart",
      "excerpt": "API Version: Preview only (no versioning scheme in URL or headers)",
      "confidence": "medium"
    }
  ],
  "fields_not_found": [
    "pci_dss (not mentioned on security page - set false)",
    "sla_published (security page exists but no SLA referenced)",
    "maximum characters per request",
    "explicit concurrency limits for TTS",
    "webhooks",
    "api_version",
    "deprecation_policy_url",
    "sla_url",
    "rate_limit_requests",
    "rate_limit_window",
    "ga_date",
    "webhook_events_url"
  ],
  "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-tts",
        "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-tts/{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"
      }
    ]
  }
}