{
  "name": "SafeGraph Places",
  "slug": "safegraph-places",
  "website_url": "https://www.safegraph.com/products/places",
  "vendor_description": "\"The Source of Truth for Point of Interest (POI) Data\"",
  "categories": [
    "places"
  ],
  "summary": "SafeGraph Places is a global point-of-interest data product covering over 250 countries and territories, serving industries including retail site selection, commercial real estate, OOH advertising, financial services, and location-based app development. Access is enterprise-only, requiring a sales call and a 12-month minimum commitment, with published pricing starting at $150,000 per year. Data is delivered via a GraphQL API, bulk CSV/Parquet downloads, S3, Snowflake, or AWS Data Exchange, with Python and R SDKs available. License terms prohibit caching, sublicensing, and redistribution of the underlying data.",
  "capabilities": {
    "supported_actions": [
      "lookup by Placekey",
      "lookup by name and address",
      "search by brand / region / NAICS code",
      "bulk dataset download (CSV/Parquet)",
      "geometry/polygon data retrieval",
      "brand information lookup",
      "monthly patterns access",
      "weekly patterns access",
      "S3 bucket delivery",
      "Snowflake integration",
      "AWS Data Exchange delivery",
      "CARTO integration"
    ],
    "supported_regions": [
      "250 countries and territories globally",
      "Africa (58 countries)",
      "Asia (51 countries)",
      "Europe (52 countries)",
      "North America (13 countries)",
      "Oceania (25 countries)",
      "South America (42 countries)",
      "Tier 1 coverage: United States, Canada, Great Britain and other major markets"
    ],
    "supported_languages": [],
    "input_types": [
      "Placekey identifier",
      "place name + address",
      "brand name",
      "NAICS code",
      "region/geography filter",
      "lat/lon coordinates",
      "search criteria (category, brand, region)"
    ],
    "output_types": [
      "CSV (delimited files)",
      "Parquet",
      "JSON (for structured fields such as open_hours)",
      "pandas DataFrame (via Python library)",
      "S3 bulk file delivery",
      "Snowflake table delivery"
    ],
    "webhooks_supported": false,
    "sandbox_available": false,
    "sdk_languages": [
      "Python",
      "R"
    ],
    "mcp_server_available": false
  },
  "integration": {
    "api_style": "graphql",
    "base_url": "https://api.safegraph.com/v2/graphql",
    "api_version": "v2",
    "versioning_scheme": "url",
    "stability": "ga",
    "deprecation_policy_url": null,
    "auth_methods": [
      "api_key"
    ],
    "auth_docs_url": "https://docs.safegraph.com/reference/access-and-authentication",
    "idempotency_supported": null,
    "error_format": null,
    "webhook_signing": null,
    "webhook_events_url": null,
    "rate_limit_requests": 1000,
    "rate_limit_window": "minute",
    "sdk_packages": [
      {
        "package": "safegraphQL",
        "language": "Python",
        "official": true,
        "repo_url": "https://github.com/echong-SG/API-python-client-MKilic"
      },
      {
        "package": "safegraph_py",
        "language": "Python",
        "official": true,
        "repo_url": "https://github.com/SafeGraphInc/safegraph_py"
      },
      {
        "package": "SafeGraphR",
        "language": "R",
        "official": true,
        "repo_url": "https://github.com/SafeGraphInc/SafeGraphR"
      }
    ],
    "mcp_url": null,
    "quickstart_url": "https://docs.safegraph.com/docs/places-api"
  },
  "pricing": {
    "pricing_model": "contact_sales",
    "has_published_pricing": true,
    "starting_price_usd": "150000.0000",
    "price_basis": "year",
    "free_tier_available": false,
    "free_tier_limit": "Sample datasets available on request (no published call limit)",
    "free_tier_details": null,
    "minimum_commitment": "12 months",
    "self_serve_signup": false,
    "requires_sales_call": true,
    "requires_verification": true,
    "enterprise_plan_available": true,
    "price_points": [
      {
        "plan": "Annual Contract (AWS Marketplace — Geospatial Data for Entire US)",
        "item": "Places Data for Entire US — 12-month contract",
        "amount_usd": "150000.0000",
        "amount_percent": null,
        "per": "year",
        "currency": "USD",
        "source_url": "https://aws.amazon.com/marketplace/pp/prodview-o6cgghin4l7uu"
      },
      {
        "plan": "Annual Contract (AWS Marketplace — Places Data for Retail, Location & Marketing)",
        "item": "Places Data for Retail, Location & Marketing - Entire US — 12-month contract",
        "amount_usd": "150000.0000",
        "amount_percent": null,
        "per": "year",
        "currency": "USD",
        "source_url": "https://aws.amazon.com/marketplace/pp/prodview-juahceyzjui3y"
      },
      {
        "plan": "Free Sample (AWS Marketplace)",
        "item": "POI Data Free Sample: SafeGraph Places — Starbucks US locations (~14,000 POI)",
        "amount_usd": "0.0000",
        "amount_percent": null,
        "per": null,
        "currency": "USD",
        "source_url": "https://aws.amazon.com/marketplace/pp/prodview-m7wpr75mgk3ac"
      }
    ]
  },
  "compliance": {
    "soc2": null,
    "hipaa": null,
    "gdpr": false,
    "iso_27001": null,
    "pci_dss": null,
    "sla_published": null,
    "sla_url": null,
    "data_retention_policy_url": "https://www.safegraph.com/privacy-policy",
    "documented_rate_limits": "1,000 placekeys per API call; 1,000 requests per minute (GraphQL API)",
    "known_restrictions": [
      "API licensees shall not cache data in or on any medium for any period of time",
      "Sublicensing, redistribution, and resale are explicitly prohibited",
      "Users may not download or export material portions of data to third parties",
      "Cannot create competing databases or commercially available mailing lists",
      "Prohibited use: identifying individual behavior patterns",
      "Prohibited use: advertising targeting based on visits to health or sensitive facilities",
      "Prohibited use: financial services or investment use of Spend data",
      "Prohibited use: protest or social demonstration analysis",
      "Data must be deleted within 5 business days of contract termination; Placekeys may be retained indefinitely",
      "1-year license term - data must be deleted after 1 year unless renewed",
      "Attribution to SafeGraph is required when publishing content using the data",
      "UK Places require additional attribution under the Open Government Licence v3.0",
      "Non-exclusive, non-transferable, non-sublicensable, revocable license only"
    ]
  },
  "developer": {
    "docs_url": "https://docs.safegraph.com",
    "api_reference_url": "https://docs.safegraph.com/reference",
    "openapi_spec_url": null,
    "postman_collection_url": null,
    "changelog_url": "https://www.safegraph.com/whats-new",
    "status_page_url": null,
    "llms_txt_url": "https://docs.safegraph.com/llms.txt",
    "markdown_docs_url": null,
    "rendering": "static"
  },
  "adoption": {
    "launched_at": "2016-01-01",
    "ga_date": null,
    "github_stars": null,
    "github_stars_at": null,
    "notable_customers": [
      "Plaid",
      "INRIX",
      "Spade",
      "Avison Young",
      "Clear Channel Europe",
      "Dosh",
      "Adomni",
      "Sysco",
      "Olvin",
      "MikMak",
      "Socially Determined"
    ]
  },
  "scores": {
    "agent_friendliness": 35,
    "pricing_transparency": 70,
    "setup_speed": 20,
    "docs_quality": 55,
    "procurement_friction": 30,
    "trust_readiness": 0,
    "best_for": [
      "AI agents and automation - an agent-ready surface (MCP / llms.txt)",
      "Teams needing broad API coverage out of the box"
    ],
    "avoid_if": [
      "You need to start building today without contacting sales",
      "You want to try it free before paying",
      "You have strict compliance requirements"
    ]
  },
  "sources": [
    {
      "field": "vendor_description",
      "url": "https://www.safegraph.com/",
      "excerpt": "The Source of Truth for Point of Interest (POI) Data",
      "confidence": "high"
    },
    {
      "field": "supported_actions",
      "url": "https://pypi.org/project/safegraphQL/",
      "excerpt": "lookup() – Query data by Placekey(s); lookup_by_name() – Find locations by name and address details; search() – Search POI by multiple criteria (brand, region, NAICS code, etc.)",
      "confidence": "high"
    },
    {
      "field": "supported_regions",
      "url": "https://datarade.ai/data-products/safegraph-map-data-global-coverage-41m-places-safegraph",
      "excerpt": "75M+ global points of interest... 250 countries across all continents (Africa, Asia, Europe, North America, South America, and Oceania)",
      "confidence": "high"
    },
    {
      "field": "output_types",
      "url": "https://pypi.org/project/safegraphQL/",
      "excerpt": "Results default to pandas DataFrames but can return JSON responses via the return_type parameter",
      "confidence": "high"
    },
    {
      "field": "sdk_languages",
      "url": "https://safegraphinc.github.io/SafeGraphR/reference/safegraph_api.html",
      "excerpt": "Download SafeGraph data from the API — safegraph_api • SafeGraphR... Package for Processing and Analyzing SafeGraph Data (version 0.5.2)",
      "confidence": "high"
    },
    {
      "field": "pricing_model",
      "url": "https://aws.amazon.com/marketplace/pp/prodview-o6cgghin4l7uu",
      "excerpt": "Pricing is based on the duration and terms of your contract with the vendor. This entitles you to a specified quantity of use for the contract duration.",
      "confidence": "high"
    },
    {
      "field": "has_published_pricing",
      "url": "https://aws.amazon.com/marketplace/pp/prodview-juahceyzjui3y",
      "excerpt": "Places Data for Retail, Location & Marketing - Entire US. 12-month contract: $150,000.00 per 12 months.",
      "confidence": "high"
    },
    {
      "field": "minimum_commitment",
      "url": "https://www.safegraph.com/terms-of-service",
      "excerpt": "THIS IS A 1-YEAR LICENSE. YOU MUST DELETE THE DATA AFTER 1 YEAR.",
      "confidence": "high"
    },
    {
      "field": "free_tier_available",
      "url": "https://www.safegraph.com/pricing/",
      "excerpt": "We can cut custom samples that allow you to evaluate our data and get a clear idea of what you'd be purchasing.",
      "confidence": "high"
    },
    {
      "field": "self_serve_signup",
      "url": "https://www.safegraph.com/pricing/",
      "excerpt": "To obtain actual pricing, interested parties must complete the 'Schedule a Demo' or 'Get in Touch' call-to-action.",
      "confidence": "high"
    },
    {
      "field": "enterprise_plan_available",
      "url": "https://www.safegraph.com/pricing/",
      "excerpt": "SafeGraph works with customers to create custom Places packages tailored to their specific needs.",
      "confidence": "high"
    },
    {
      "field": "gdpr",
      "url": "https://www.safegraph.com/privacy-policy",
      "excerpt": "SafeGraph is not established and does not offer products or services involving the collection or sale of 'personal data' in European Economic Area (EEA) countries or the United Kingdom. The European Union General Data Protection Regulation (the 'GDPR') and the applicable data privacy laws of the United Kingdom ('UK GDPR') are not applicable.",
      "confidence": "high"
    },
    {
      "field": "hipaa",
      "url": "https://www.safegraph.com/",
      "excerpt": null,
      "confidence": "medium"
    },
    {
      "field": "documented_rate_limits",
      "url": "https://safegraphinc.github.io/SafeGraphR/reference/safegraph_api.html",
      "excerpt": "the 1000-per-minute rate limit",
      "confidence": "medium"
    },
    {
      "field": "known_restrictions",
      "url": "https://www.safegraph.com/terms-of-service",
      "excerpt": "THIS IS A 1-YEAR LICENSE. YOU MUST DELETE THE DATA AFTER 1 YEAR. cache the Data in or on any medium for any period of time [is explicitly prohibited for API access]... Sublicensing explicitly prohibited.",
      "confidence": "high"
    },
    {
      "field": "api_style",
      "url": "https://docs.safegraph.com/docs/places-api",
      "excerpt": "The SafeGraph Place API is described as 'a GraphQL API that is useful for looking up attributes of a point of interest (POI) by Placekey or location name.'",
      "confidence": "high"
    },
    {
      "field": "base_url",
      "url": "https://github.com/engelsjk/safegraph-api-example",
      "excerpt": "Base URL: https://api.safegraph.com/v1/graphql — also v2 endpoint available at https://api.safegraph.com/v2/graphql",
      "confidence": "high"
    },
    {
      "field": "auth_methods",
      "url": "https://github.com/engelsjk/safegraph-api-example",
      "excerpt": "The API uses an apikey header for authentication: -H 'apikey: {SAFEGRAPH_API_KEY}'",
      "confidence": "high"
    },
    {
      "field": "auth_docs_url",
      "url": "https://safegraphinc.github.io/SafeGraphR/reference/safegraph_api.html",
      "excerpt": "See https://docs.safegraph.com/reference/access-and-authentication to get one",
      "confidence": "high"
    },
    {
      "field": "api_version",
      "url": "https://github.com/engelsjk/safegraph-api-example",
      "excerpt": "API endpoint https://api.safegraph.com/v2/graphql demonstrated in example code",
      "confidence": "high"
    },
    {
      "field": "rate_limit_requests",
      "url": "https://safegraphinc.github.io/SafeGraphR/reference/safegraph_api.html",
      "excerpt": "the 1000-per-minute rate limit",
      "confidence": "medium"
    },
    {
      "field": "sdk_packages",
      "url": "https://pypi.org/project/safegraphQL/",
      "excerpt": "safegraphQL version 0.5.23 — Official SafeGraph Python client; maintainers: echong, felixsafegraph, mirkan1; repo: https://github.com/echong-SG/API-python-client-MKilic",
      "confidence": "high"
    },
    {
      "field": "primary_use_cases",
      "url": "https://www.safegraph.com/products/places",
      "excerpt": "Commercial real estate site selection analysis, Out-of-home (OOH) advertising campaign targeting, Card-linked offers and retail promotions, Catchment area analysis, Business and competitive intelligence, Location-driven investment analysis",
      "confidence": "high"
    },
    {
      "field": "supported_actions",
      "url": "https://docs.safegraph.com/docs/places",
      "excerpt": "Integration support: Snowflake, AWS Data Exchange, CARTO... Primary format: Delimited CSVs; Alternative formats: Parquet delivery available",
      "confidence": "high"
    },
    {
      "field": "output_types",
      "url": "https://docs.safegraph.com/docs/core-places",
      "excerpt": "Output Format: Delimited CSV files... Alternative format: Parquet available for SafeGraph data",
      "confidence": "high"
    },
    {
      "field": "sdk_languages",
      "url": "https://pypi.org/project/safegraphQL/",
      "excerpt": "SafegraphQL is a Python client library that provides access to SafeGraph's point-of-interest (POI) data through their GraphQL API.",
      "confidence": "high"
    },
    {
      "field": "pricing_model",
      "url": "https://www.safegraph.com/pricing/",
      "excerpt": "No pay-per-use policies or restrictive usage terms—get a custom dataset with flexible delivery and support for a straightforward fee. Costs calculated based on location rows, attribute columns, and usage rights.",
      "confidence": "high"
    },
    {
      "field": "has_published_pricing",
      "url": "https://aws.amazon.com/marketplace/pp/prodview-o6cgghin4l7uu",
      "excerpt": "12-month contract: $150,000.00 per 12 months. Refunds are not offered on this product.",
      "confidence": "high"
    },
    {
      "field": "minimum_commitment",
      "url": "https://aws.amazon.com/marketplace/pp/prodview-o6cgghin4l7uu",
      "excerpt": "12-month contract: $150,000.00 per 12 months",
      "confidence": "high"
    },
    {
      "field": "free_tier_available",
      "url": "https://aws.amazon.com/marketplace/pp/prodview-m7wpr75mgk3ac",
      "excerpt": "This product is available free of charge. Free subscriptions have no end date and may be canceled any time... an example of the data customers would see in the available, for-pay Places datasets.",
      "confidence": "high"
    },
    {
      "field": "sandbox_available",
      "url": "https://docs.safegraph.com/docs/about-safegraph",
      "excerpt": "free samples available for: Global brands, French Polynesia, US Starbucks/Dunkin' locations, Parking lots worldwide",
      "confidence": "high"
    },
    {
      "field": "requires_sales_call",
      "url": "https://www.safegraph.com/pricing/",
      "excerpt": "To obtain actual pricing, interested parties must complete the 'Schedule a Demo' or 'Get in Touch' call-to-action.",
      "confidence": "high"
    },
    {
      "field": "enterprise_plan_available",
      "url": "https://aws.amazon.com/marketplace/pp/prodview-o6cgghin4l7uu",
      "excerpt": "12-month contract: $150,000.00 per year for product access",
      "confidence": "high"
    },
    {
      "field": "soc2",
      "url": "https://www.safegraph.com/",
      "excerpt": null,
      "confidence": "medium"
    },
    {
      "field": "sla_published",
      "url": "https://www.safegraph.com/pricing/",
      "excerpt": "Every Places Customer Receives monthly data delivery to your environment of choice, along with dedicated Customer Success Manager support — no SLA terms or uptime guarantees published.",
      "confidence": "medium"
    },
    {
      "field": "documented_rate_limits",
      "url": "https://rdrr.io/github/SafeGraphInc/SafeGraphR/man/safegraph_api.html",
      "excerpt": "Batching threshold: Automatic batching triggered when more than 20 POIs are requested; Maximum entries: Cannot exceed 1,000 placekeys per call",
      "confidence": "medium"
    },
    {
      "field": "known_restrictions",
      "url": "https://www.safegraph.com/terms-of-service",
      "excerpt": "Attribution to SafeGraph is mandatory if publishing content using the data... Specific attribution terms apply for UK places, park visualizations, and future data requiring attribution.",
      "confidence": "high"
    },
    {
      "field": "api_style",
      "url": "https://pypi.org/project/safegraphQL/",
      "excerpt": "safegraphQL provides access to SafeGraph's GraphQL API using Python functions",
      "confidence": "high"
    },
    {
      "field": "base_url",
      "url": "https://pypi.org/project/safegraphQL/",
      "excerpt": "safegraphQL targets the SafeGraph GraphQL API at api.safegraph.com",
      "confidence": "high"
    },
    {
      "field": "auth_methods",
      "url": "https://pypi.org/project/safegraphQL/",
      "excerpt": "client.HTTP_Client(\"MY_API_KEY\") — API key obtained from the SafeGraph Shop",
      "confidence": "high"
    },
    {
      "field": "api_version",
      "url": "https://docs.safegraph.com/docs/places",
      "excerpt": "Current Version: v5.0 (schema/data version); API endpoints at /v1/graphql and /v2/graphql",
      "confidence": "high"
    },
    {
      "field": "versioning_scheme",
      "url": "https://github.com/engelsjk/safegraph-api-example",
      "excerpt": "Endpoints distinguished by URL path: https://api.safegraph.com/v1/graphql and https://api.safegraph.com/v2/graphql",
      "confidence": "high"
    },
    {
      "field": "rate_limit_requests",
      "url": "https://rdrr.io/github/SafeGraphInc/SafeGraphR/man/safegraph_api.html",
      "excerpt": "Batching threshold: Automatic batching triggered when more than 20 POIs are requested; Maximum entries: Cannot exceed 1,000 placekeys per call",
      "confidence": "medium"
    },
    {
      "field": "sdk_packages",
      "url": "https://github.com/SafeGraphInc",
      "excerpt": "SafeGraphInc maintains SafeGraphR (R, Apache-2.0, 17 stars) and safegraph_py (Python, Apache-2.0, 28 stars)",
      "confidence": "high"
    },
    {
      "field": "price_basis",
      "url": "https://www.safegraph.com/pricing/",
      "excerpt": "No pay-per-use policies or restrictive usage terms—get a custom dataset with flexible delivery and support for a straightforward fee. Costs calculated based on location rows, attribute columns, and usage rights.",
      "confidence": "high"
    },
    {
      "field": "free_tier_limit",
      "url": "https://www.safegraph.com/pricing/",
      "excerpt": "We can cut custom samples that allow you to evaluate our data and get a clear idea of what you'd be purchasing.",
      "confidence": "medium"
    },
    {
      "field": "notable_customers",
      "url": "https://www.safegraph.com/customers",
      "excerpt": "INRIX: Contextualizing vehicle and fleet data; Spade: bringing transparency and trust to the financial services industry; Plaid: Enriching transaction data; Avison Young: commercial real estate site selection; Clear Channel Europe: OOH advertising campaigns; Sysco: uncovering market and brand insights",
      "confidence": "high"
    },
    {
      "field": "launched_at",
      "url": "https://tracxn.com/d/companies/safegraph/__dFz7_o9-ucfTbZB5CyRwgEkp-zN3QvKCM-sggucZJI8",
      "excerpt": "SafeGraph is a series B company based in Denver (United States), founded in 2016 by Auren Hoffman and Brent Perez",
      "confidence": "high"
    },
    {
      "field": "requires_verification",
      "url": "https://www.safegraph.com/pricing/",
      "excerpt": "Custom pricing — customers must request a demo or contact the sales team for custom quotes",
      "confidence": "medium"
    },
    {
      "field": "starting_price_usd",
      "url": "https://aws.amazon.com/marketplace/pp/prodview-u5qwkbnmzowtm",
      "excerpt": "12-month contract: $150,000.00 per year for product access — Pricing is based on the duration and terms of your contract with the vendor",
      "confidence": "high"
    },
    {
      "field": "price_basis",
      "url": "https://aws.amazon.com/marketplace/pp/prodview-u5qwkbnmzowtm",
      "excerpt": "12-month contract: $150,000.00 per year for product access",
      "confidence": "high"
    },
    {
      "field": "free_tier_limit",
      "url": "https://docs.safegraph.com/docs/welcome",
      "excerpt": "Available offerings include: Global POI Sample Data, Geocoded Address Sample, Geometry Sample, Starbucks vs Dunkin' US Data, Spend Sample Data, Parking Lots Sample Data",
      "confidence": "medium"
    },
    {
      "field": "notable_customers",
      "url": "https://www.safegraph.com/customers/dosh-store-location-data-case-study/",
      "excerpt": "Dosh's Card-Linked Offers Platform Is Powered By SafeGraph Places Data",
      "confidence": "high"
    },
    {
      "field": "requires_verification",
      "url": "https://docs.safegraph.com/reference/access-and-authentication",
      "excerpt": "API Access Key required; obtained from the SafeGraph Shop — sales team consultation required for enterprise pricing",
      "confidence": "medium"
    },
    {
      "field": "data_retention_policy_url",
      "url": "https://www.safegraph.com/privacy-policy",
      "excerpt": "SafeGraph retains information only for as long as is reasonably necessary to fulfill the purpose for which it was collected",
      "confidence": "medium"
    },
    {
      "field": "stability",
      "url": "https://github.com/SafeGraphInc/SafeGraphR",
      "excerpt": "The package is currently in beta — the SafeGraph data itself changes format on occasion",
      "confidence": "medium"
    },
    {
      "field": "stability",
      "url": "https://docs.safegraph.com/docs/places",
      "excerpt": "Current Version: v5.0 — commercially available with monthly updates, AWS Data Exchange listing",
      "confidence": "medium"
    }
  ],
  "fields_not_found": [
    "soc2",
    "hipaa",
    "iso_27001",
    "pci_dss",
    "sla_published",
    "mcp_server_available",
    "ga_date",
    "deprecation_policy_url",
    "sla_url",
    "error_format",
    "idempotency_supported",
    "webhook_events_url",
    "webhook_signing",
    "mcp_url"
  ],
  "source_confidence": "high",
  "last_verified_at": "2026-06-14T00: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/safegraph-places",
        "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/safegraph-places/{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",
        "method": "POST",
        "url": "https://apio.sh/api/suggest/api",
        "example_body": {
          "value": {
            "name": "Acme API",
            "website_url": "https://acme.example"
          },
          "citations": [
            {
              "url": "https://acme.example"
            }
          ]
        }
      },
      {
        "action": "token",
        "label": "Optional - raise your rate limit",
        "method": "GET",
        "url": "https://apio.sh/api/feedback/token"
      }
    ]
  }
}