{
  "name": "OpenAI Text to Speech (gpt-4o-mini-tts / tts-1)",
  "slug": "openai-tts",
  "website_url": "https://platform.openai.com/docs/guides/text-to-speech",
  "vendor_description": "\"Transform text into lifelike spoken audio\" - OpenAI's TTS service enabling blog narration, multilingual audio production, and realtime voice output via gpt-4o-mini-tts, tts-1, and tts-1-hd models.",
  "categories": [
    "text-to-speech"
  ],
  "summary": "OpenAI Text to Speech converts text into lifelike spoken audio via three models, gpt-4o-mini-tts, tts-1, and tts-1-hd, targeting use cases such as voice agents, audiobooks, video narration, accessibility tools, and IVR. Pricing is usage-based at $15.00 per million characters with no sales call required to get started. The REST API ships with official SDKs for Python, Node.js, Java, Go, Ruby, and .NET, and the service is backed by SOC 2 Type II, ISO 27001, HIPAA, GDPR, and PCI DSS compliance alongside a published SLA.",
  "capabilities": {
    "supported_actions": [
      "synthesize_speech",
      "streaming_tts",
      "voice_design",
      "speed_control",
      "instruction_based_voice_control",
      "realtime_tts",
      "custom_voice_creation"
    ],
    "supported_regions": [],
    "supported_languages": [
      "Afrikaans",
      "Arabic",
      "Armenian",
      "Azerbaijani",
      "Belarusian",
      "Bosnian",
      "Bulgarian",
      "Catalan",
      "Chinese",
      "Croatian",
      "Czech",
      "Danish",
      "Dutch",
      "English",
      "Estonian",
      "Finnish",
      "French",
      "Galician",
      "German",
      "Greek",
      "Hebrew",
      "Hindi",
      "Hungarian",
      "Icelandic",
      "Indonesian",
      "Italian",
      "Japanese",
      "Kannada",
      "Kazakh",
      "Korean",
      "Latvian",
      "Lithuanian",
      "Macedonian",
      "Malay",
      "Marathi",
      "Maori",
      "Nepali",
      "Norwegian",
      "Persian",
      "Polish",
      "Portuguese",
      "Romanian",
      "Russian",
      "Serbian",
      "Slovak",
      "Slovenian",
      "Spanish",
      "Swahili",
      "Swedish",
      "Tagalog",
      "Tamil",
      "Thai",
      "Turkish",
      "Ukrainian",
      "Urdu",
      "Vietnamese",
      "Welsh"
    ],
    "input_types": [
      "plain text"
    ],
    "output_types": [
      "mp3",
      "opus",
      "aac",
      "flac",
      "wav",
      "pcm"
    ],
    "webhooks_supported": false,
    "sandbox_available": false,
    "sdk_languages": [
      "Python",
      "Node.js",
      "Java",
      "Go",
      "Ruby",
      ".NET"
    ],
    "mcp_server_available": false
  },
  "integration": {
    "api_style": "rest",
    "base_url": "https://api.openai.com/v1",
    "api_version": "v1",
    "versioning_scheme": "url",
    "stability": "ga",
    "deprecation_policy_url": "https://developers.openai.com/api/docs/deprecations",
    "auth_methods": [
      "api_key"
    ],
    "auth_docs_url": "https://developers.openai.com/api/reference/overview",
    "idempotency_supported": false,
    "error_format": "vendor-specific",
    "webhook_signing": null,
    "webhook_events_url": null,
    "rate_limit_requests": 500,
    "rate_limit_window": "minute",
    "sdk_packages": [
      {
        "package": "openai",
        "language": "Python",
        "official": true,
        "repo_url": "https://github.com/openai/openai-python"
      },
      {
        "package": "openai",
        "language": "Node.js",
        "official": true,
        "repo_url": "https://github.com/openai/openai-node"
      },
      {
        "package": "openai-java",
        "language": "Java",
        "official": true,
        "repo_url": "https://github.com/openai/openai-java"
      },
      {
        "package": "openai-go",
        "language": "Go",
        "official": true,
        "repo_url": "https://github.com/openai/openai-go"
      },
      {
        "package": "openai",
        "language": "Ruby",
        "official": true,
        "repo_url": "https://github.com/openai/openai-ruby"
      },
      {
        "package": "OpenAI",
        "language": ".NET",
        "official": true,
        "repo_url": "https://github.com/openai/openai-dotnet"
      }
    ],
    "mcp_url": "https://developers.openai.com/mcp",
    "quickstart_url": "https://developers.openai.com/api/docs/guides/text-to-speech"
  },
  "pricing": {
    "pricing_model": "usage_based",
    "has_published_pricing": true,
    "starting_price_usd": "15.0000",
    "price_basis": "1M characters",
    "free_tier_available": false,
    "free_tier_limit": null,
    "free_tier_details": null,
    "minimum_commitment": null,
    "self_serve_signup": true,
    "requires_sales_call": false,
    "requires_verification": false,
    "enterprise_plan_available": true,
    "price_points": [
      {
        "plan": "Pay As You Go",
        "item": "Speech synthesis (tts-1)",
        "amount_usd": "15.0000",
        "amount_percent": null,
        "per": "1M characters",
        "currency": "USD",
        "source_url": "https://developers.openai.com/api/docs/models/tts-1"
      },
      {
        "plan": "Pay As You Go",
        "item": "Speech synthesis (tts-1-hd)",
        "amount_usd": "30.0000",
        "amount_percent": null,
        "per": "1M characters",
        "currency": "USD",
        "source_url": "https://developers.openai.com/api/docs/models/tts-1-hd"
      },
      {
        "plan": "Pay As You Go",
        "item": "Speech synthesis text input (gpt-4o-mini-tts)",
        "amount_usd": "0.6000",
        "amount_percent": null,
        "per": "1M text tokens",
        "currency": "USD",
        "source_url": "https://developers.openai.com/api/docs/models/gpt-4o-mini-tts"
      },
      {
        "plan": "Pay As You Go",
        "item": "Speech synthesis audio output (gpt-4o-mini-tts)",
        "amount_usd": "12.0000",
        "amount_percent": null,
        "per": "1M audio tokens",
        "currency": "USD",
        "source_url": "https://developers.openai.com/api/docs/models/gpt-4o-mini-tts"
      }
    ]
  },
  "compliance": {
    "soc2": "type_2",
    "hipaa": true,
    "gdpr": true,
    "iso_27001": true,
    "pci_dss": true,
    "sla_published": true,
    "sla_url": "https://openai.com/api-scale-tier/",
    "data_retention_policy_url": "https://developers.openai.com/api/docs/guides/your-data",
    "documented_rate_limits": "tts-1/tts-1-hd: Free 3 RPM / 200 RPD; Tier 1: 500 RPM; Tier 2: 2,500 RPM; Tier 3: 5,000 RPM; Tier 4: 7,500 RPM; Tier 5: 10,000 RPM. gpt-4o-mini-tts: Tier 1 500 RPM / 50,000 TPM; Tier 5 10,000 RPM / 8,000,000 TPM.",
    "known_restrictions": [
      "Maximum input length: 4096 characters per request (tts-1/tts-1-hd); 2,000 tokens for gpt-4o-mini-tts",
      "Custom voices limited to up to 20 per organization; requires eligibility and sales contact",
      "Custom voice audio samples must be 30 seconds or less",
      "Instructions parameter (voice control) not available on tts-1 or tts-1-hd; only gpt-4o-mini-tts",
      "SSE stream_format not available for tts-1/tts-1-hd",
      "Usage policies require clear disclosure to end users that TTS voice is AI-generated",
      "Custom voice consent phrases required in specific languages",
      "SSML not supported",
      "Speed parameter range: 0.25 to 4.0"
    ]
  },
  "developer": {
    "docs_url": "https://developers.openai.com/api/docs",
    "api_reference_url": "https://platform.openai.com/api/reference/overview",
    "openapi_spec_url": null,
    "postman_collection_url": null,
    "changelog_url": null,
    "status_page_url": null,
    "llms_txt_url": null,
    "markdown_docs_url": "https://platform.openai.com/docs/guides/text-to-speech.md",
    "rendering": "static"
  },
  "adoption": {
    "launched_at": "2023-11-06",
    "ga_date": "2023-11-06",
    "github_stars": null,
    "github_stars_at": null,
    "notable_customers": []
  },
  "scores": {
    "agent_friendliness": 30,
    "pricing_transparency": 85,
    "setup_speed": 60,
    "docs_quality": 50,
    "procurement_friction": 85,
    "trust_readiness": 100,
    "best_for": [
      "Regulated or enterprise workloads - compliance attestations and an enterprise plan",
      "Cost-sensitive teams - low, transparent entry price"
    ],
    "avoid_if": [
      "You want to try it free before paying"
    ]
  },
  "sources": [
    {
      "field": "hipaa",
      "url": "https://openai.com/api/",
      "excerpt": "Business Associate Agreements for HIPAA compliance available for eligible customers.",
      "confidence": "high"
    },
    {
      "field": "supported_actions",
      "url": "https://developers.openai.com/api/docs/guides/text-to-speech",
      "excerpt": "The gpt-4o-mini-tts model accepts instructions to control accent, emotional range, intonation, impressions, speech speed, tone, and whispering.",
      "confidence": "high"
    },
    {
      "field": "webhooks_supported",
      "url": "https://developers.openai.com/api/docs/guides/text-to-speech",
      "excerpt": "The TTS API is a request-based API that generates audio directly in response to API calls; no webhook mechanism is used for standard TTS endpoints.",
      "confidence": "high"
    },
    {
      "field": "output_types",
      "url": "https://developers.openai.com/api/reference/resources/audio/subresources/speech/methods/create",
      "excerpt": "response_format: mp3, opus, aac, flac, wav, pcm",
      "confidence": "high"
    },
    {
      "field": "pricing_model",
      "url": "https://developers.openai.com/api/docs/models/gpt-4o-mini-tts",
      "excerpt": "Input: $0.60 per 1M text tokens; Output: $12.00 per 1M audio tokens",
      "confidence": "high"
    },
    {
      "field": "has_published_pricing",
      "url": "https://developers.openai.com/api/docs/models/tts-1-hd",
      "excerpt": "$30.00 per 1 million characters",
      "confidence": "high"
    },
    {
      "field": "soc2",
      "url": "https://trust.openai.com",
      "excerpt": "SOC 2 Type 2 (covering Security, Availability, Confidentiality, and Privacy). SOC 2 Type 2 report available for period Jan 1 - Jun 30, 2025.",
      "confidence": "high"
    },
    {
      "field": "pci_dss",
      "url": "https://trust.openai.com",
      "excerpt": "PCI DSS v4.0.1 (for payment processing components)",
      "confidence": "medium"
    },
    {
      "field": "hipaa",
      "url": "https://help.openai.com/en/articles/8660679-how-can-i-get-a-business-associate-agreement-baa-with-openai-for-the-api-services",
      "excerpt": "OpenAI is able to sign Business Associate Agreements (BAA) in support of customers' compliance with HIPAA. Most API services are covered by the BAA.",
      "confidence": "high"
    },
    {
      "field": "sla_published",
      "url": "https://openai.com/api-scale-tier/",
      "excerpt": "Scale Tier traffic offers a 99.9% uptime SLA and prioritized compute.",
      "confidence": "medium"
    },
    {
      "field": "documented_rate_limits",
      "url": "https://developers.openai.com/api/docs/models/gpt-4o-mini-tts",
      "excerpt": "Tier 1: 500 RPM / 50,000 TPM; Tier 5: 10,000 RPM / 8,000,000 TPM",
      "confidence": "high"
    },
    {
      "field": "vendor_description",
      "url": "https://developers.openai.com/api/docs/guides/text-to-speech",
      "excerpt": "Transform text into lifelike spoken audio — OpenAI's TTS service enabling blog narration, multilingual audio production, and realtime voice output.",
      "confidence": "high"
    },
    {
      "field": "supported_actions",
      "url": "https://developers.openai.com/api/docs/guides/text-to-speech",
      "excerpt": "Organizations can create up to 20 custom voices from audio samples (≤30 seconds), though this requires special eligibility.",
      "confidence": "high"
    },
    {
      "field": "supported_languages",
      "url": "https://developers.openai.com/api/docs/guides/text-to-speech",
      "excerpt": "The API generally follows the Whisper model in terms of language support. Includes: Afrikaans, Arabic, Armenian, Azerbaijani, Belarusian, Bosnian, Bulgarian, Catalan, Chinese, Croatian, Czech, Danish, Dutch, English, Estonian, Finnish, French, Galician, German, Greek, Hebrew, Hindi, Hungarian, Icelandic, Indonesian, Italian, Japanese, Kannada, Kazakh, Korean, Latvian, Lithuanian, Macedonian, Malay, Marathi, Maori, Nepali, Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovenian, Spanish, Swahili, Swedish, Tagalog, Tamil, Thai, Turkish, Ukrainian, Urdu, Vietnamese, Welsh.",
      "confidence": "high"
    },
    {
      "field": "pricing_model",
      "url": "https://developers.openai.com/api/docs/models/tts-1",
      "excerpt": "$15.00 per 1M characters for speech generation",
      "confidence": "high"
    },
    {
      "field": "has_published_pricing",
      "url": "https://developers.openai.com/api/docs/models/tts-1",
      "excerpt": "$15.00 per 1M characters",
      "confidence": "high"
    },
    {
      "field": "free_tier_available",
      "url": "https://developers.openai.com/api/docs/models/tts-1",
      "excerpt": "Free tier: 3 RPM, 200 RPD — this is a rate-limit tier, not a recurring free-character allowance",
      "confidence": "high"
    },
    {
      "field": "iso_27001",
      "url": "https://trust.openai.com",
      "excerpt": "ISO/IEC 27001:2022 — certificate documents operation of an Information Security Management System that conforms to ISO/IEC 27001:2022 for OpenAI's API, ChatGPT Enterprise, and ChatGPT Edu services.",
      "confidence": "high"
    },
    {
      "field": "gdpr",
      "url": "https://trust.openai.com",
      "excerpt": "GDPR compliance",
      "confidence": "high"
    },
    {
      "field": "documented_rate_limits",
      "url": "https://developers.openai.com/api/docs/models/tts-1",
      "excerpt": "Rate Limits by Tier: Free: 3 RPM, Tier 1: 500 RPM, Tier 2: 2,500 RPM, Tier 3: 5,000 RPM, Tier 4: 7,500 RPM, Tier 5: 10,000 RPM",
      "confidence": "high"
    },
    {
      "field": "sdk_languages",
      "url": "https://developers.openai.com/api/docs/libraries",
      "excerpt": "Official SDKs: JavaScript/TypeScript (npm), Python (pip), C#/.NET (NuGet, in collaboration with Microsoft), Java (Maven, beta), Go (beta), Ruby (gem)",
      "confidence": "high"
    },
    {
      "field": "known_restrictions",
      "url": "https://developers.openai.com/api/reference/resources/audio/subresources/speech/methods/create",
      "excerpt": "The maximum length is 4096 characters for the input text parameter.",
      "confidence": "high"
    },
    {
      "field": "auth_methods",
      "url": "https://developers.openai.com/api/reference/overview",
      "excerpt": "The OpenAI API accepts bearer credentials from API keys or from short-lived access tokens created with workload identity federation",
      "confidence": "high"
    },
    {
      "field": "base_url",
      "url": "https://developers.openai.com/api/docs/guides/text-to-speech",
      "excerpt": "Base URL: https://api.openai.com/v1",
      "confidence": "high"
    },
    {
      "field": "api_version",
      "url": "https://developers.openai.com/api/reference/overview",
      "excerpt": "API Version Header: openai-version: 2020-10-01",
      "confidence": "high"
    },
    {
      "field": "stability",
      "url": "https://developers.openai.com/api/docs/models/tts-1",
      "excerpt": "The model is optimized for realtime text-to-speech use cases ... no indication of deprecated status",
      "confidence": "high"
    },
    {
      "field": "sdk_packages",
      "url": "https://developers.openai.com/api/docs/libraries",
      "excerpt": "JavaScript/TypeScript: openai (npm) openai-node; Python: openai (pip) openai-python; Java: openai-java; Go: openai-go; Ruby: openai",
      "confidence": "high"
    },
    {
      "field": "sdk_packages",
      "url": "https://github.com/openai/openai-node",
      "excerpt": null,
      "confidence": "high"
    },
    {
      "field": "quickstart_url",
      "url": "https://developers.openai.com/api/docs/guides/text-to-speech",
      "excerpt": "Authentication Method: Bearer token via Authorization header with $OPENAI_API_KEY ... Base URL: https://api.openai.com/v1",
      "confidence": "high"
    },
    {
      "field": "rate_limit_window",
      "url": "https://developers.openai.com/api/docs/models/tts-1",
      "excerpt": "Rate Limits by Tier: Free: 3 RPM, Tier 1: 500 RPM",
      "confidence": "high"
    },
    {
      "field": "data_retention_policy_url",
      "url": "https://developers.openai.com/api/docs/guides/your-data",
      "excerpt": "Abuse monitoring logs: OpenAI retains these for up to 30 days, unless longer retention is required by law, or is reasonably necessary to protect our services",
      "confidence": "high"
    },
    {
      "field": "price_basis",
      "url": "https://developers.openai.com/api/docs/models/tts-1",
      "excerpt": "$15.00 per 1M characters ... Half the cost of TTS-1 HD ($30/1M characters)",
      "confidence": "high"
    },
    {
      "field": "ga_date",
      "url": "https://developers.openai.com/api/docs/changelog",
      "excerpt": "Released GPT-4 Turbo Preview, updated GPT-3.5 Turbo, GPT-4 Turbo with Vision, Assistants API, DALL·E 3 in the API, and text-to-speech API (November 6, 2023)",
      "confidence": "high"
    },
    {
      "field": "mcp_server_available",
      "url": "https://developers.openai.com/api/docs/docs-mcp",
      "excerpt": "The MCP server provides read-only access to OpenAI developer documentation (search + page content) — not a TTS action server.",
      "confidence": "high"
    },
    {
      "field": "known_restrictions",
      "url": "https://developers.openai.com/api/docs/guides/text-to-speech",
      "excerpt": "Usage policies require clear disclosure to end users that the TTS voice they are hearing is AI-generated and not a human voice.",
      "confidence": "high"
    },
    {
      "field": "auth_docs_url",
      "url": "https://developers.openai.com/api/reference/overview",
      "excerpt": "Primary reference: https://platform.openai.com/api/reference/overview#authentication",
      "confidence": "high"
    },
    {
      "field": "base_url",
      "url": "https://developers.openai.com/api/reference/overview",
      "excerpt": "Base URL: https://api.openai.com/v1/",
      "confidence": "high"
    },
    {
      "field": "versioning_scheme",
      "url": "https://developers.openai.com/api/docs/guides/text-to-speech",
      "excerpt": "Base URL: https://api.openai.com/v1 ... Speech Generation: /audio/speech",
      "confidence": "high"
    },
    {
      "field": "deprecation_policy_url",
      "url": "https://developers.openai.com/api/docs/deprecations",
      "excerpt": "At least 6 months notice for generally available models, and at least 3 months for specialized variants ... unless safety or compliance concerns require us to retire a model sooner",
      "confidence": "high"
    },
    {
      "field": "sdk_packages",
      "url": "https://github.com/openai/openai-python",
      "excerpt": null,
      "confidence": "high"
    },
    {
      "field": "mcp_url",
      "url": "https://developers.openai.com/api/docs/docs-mcp",
      "excerpt": "Official URL: https://developers.openai.com/mcp ... The MCP server provides read-only access to OpenAI developer documentation (search + page content)",
      "confidence": "high"
    },
    {
      "field": "rate_limit_requests",
      "url": "https://developers.openai.com/api/docs/models/tts-1",
      "excerpt": "Rate Limits by Tier: Free: 3 RPM, Tier 1: 500 RPM, Tier 2: 2,500 RPM, Tier 3: 5,000 RPM, Tier 4: 7,500 RPM, Tier 5: 10,000 RPM",
      "confidence": "high"
    },
    {
      "field": "sla_url",
      "url": "https://openai.com/api-scale-tier/",
      "excerpt": "Scale Tier traffic offers a 99.9% uptime SLA and prioritized compute",
      "confidence": "medium"
    },
    {
      "field": "starting_price_usd",
      "url": "https://developers.openai.com/api/docs/models/tts-1",
      "excerpt": "Pricing (per 1M characters): Speech generation: $15.00",
      "confidence": "high"
    },
    {
      "field": "launched_at",
      "url": "https://developers.openai.com/api/docs/changelog",
      "excerpt": "Released GPT-4 Turbo Preview, updated GPT-3.5 Turbo, GPT-4 Turbo with Vision, Assistants API, DALL·E 3 in the API, and text-to-speech API (November 6, 2023)",
      "confidence": "high"
    },
    {
      "field": "error_format",
      "url": "https://developers.openai.com/api/reference/overview",
      "excerpt": "Error codes documented at: https://platform.openai.com/docs/guides/error-codes ... Response headers include x-request-id for troubleshooting",
      "confidence": "medium"
    }
  ],
  "fields_not_found": [
    "supported_regions",
    "first_audio_latency_ttfb",
    "free_tier_limit",
    "notable_customers",
    "idempotency_supported_confirmed",
    "webhook_signing",
    "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/openai-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/openai-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"
      }
    ]
  }
}