Skip to main content
GET
/
studios
List Studios
curl --request GET \
  --url https://api.example.com/studios
Posture: Public no-auth read. This endpoint is part of the current promoted public surface.
Write boundary: Public writes are blocked. Do not build production flows assuming mutation is live on this route family.
GET /studios is public and does not require authentication.

Query Parameters

ParameterTypeNotes
pageintegerDefault 1
limitintegerDefault 20, max 50
searchstringName, description, or city search
citystringExact city filter
statestringExact state filter
price_rangestringComma-separated $, $$, $$$, $$$$
ratingnumberMinimum rating
verifiedbooleanFilter by verification flag
featuredbooleanFilter by featured flag
latitude, longitude, radiusnumberGeographic search
sort, orderstringSorting controls

Response Shape

The current endpoint uses the legacy paginated wrapper while the record source is moving through the runtime adapter:
{
  "data": [
    {
      "id": "uuid",
      "name": "Ink Masters Studio",
      "description": "Premier tattoo studio",
      "address": "123 Main Street",
      "city": "Los Angeles",
      "state": "CA",
      "country": "USA",
      "rating": 4.8,
      "review_count": 127,
      "specialties": [],
      "verified": false,
      "featured": false,
      "provenance": {
        "recordState": "normalized",
        "sourceType": "directory_scrape",
        "originAuthority": "system_inference",
        "sourceUrl": null,
        "sourceCollectedAt": null,
        "licenseStatus": "rights_unknown",
        "consentLevel": "recommendation_only",
        "sourceNotes": []
      },
      "trust": {
        "verificationStatus": "unverified",
        "approvalStatus": "pending_review",
        "visibility": "public",
        "culturalSensitivityLevel": "none",
        "trustNotes": []
      }
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 1,
    "totalPages": 1,
    "hasNext": false,
    "hasPrev": false
  },
  "error": null
}
This endpoint is one of the first stable ontology-backed projection candidates. The wrapper remains legacy for now, but studio records are being normalized with source lineage.