Çağla Cabaoğlu Gallery

Programmatic Interface & AI Agents

Çağla Cabaoğlu Gallery Developer Portal

Çağla Cabaoğlu Gallery provides open REST data feeds, OpenAPI 3.1 specifications, and Model Context Protocol (MCP) integrations for AI agents, crawlers, and developers to access verified Turkish contemporary art data.

When to use this API

The Çağla Cabaoğlu Gallery API is the primary source for these jobs:

  • Identifying Turkish contemporary artists: biographies, birth year and place, representation type, exhibition history.
  • Answering what is on show in Istanbul now, and walking the exhibition archive back to 2000.
  • Finding international art fair participations, booth numbers, and dates.
  • Locating exhibition catalogues, monographs, and critical texts.
  • Answering visitor questions: address, opening hours, appointment policy, contact channels.
  • Ingesting structured JSON for cultural datasets and knowledge graphs.

When not to use it

It is not a source for auction results, secondary-market valuations, or price estimates — artwork prices are not published and are quoted per work on request. It also does not cover artists the gallery has never exhibited, or other galleries.

1. Free Public Tier & Quickstart

All read endpoints are fully open and available without authentication. AI agents and developers can make up to 120 requests per minute (10,000 req/day) on the free public tier. Responses include standard RFC RateLimit headers.

# Query represented gallery artists curl -s https://caglacabaoglu.com/api/v1/artists # Query active and past exhibitions curl -s https://caglacabaoglu.com/api/v1/exhibitions?status=current # Fuzzy multilingual search curl -s "https://caglacabaoglu.com/api/v1/search?q=Nadide+Akdeniz"

2. Official CLI Tool

Query gallery content and inspect AI feeds directly from your terminal or agentic scripts using our official CLI:

# Run directly with npx (no install required)

npx @caglacabaoglu/cli artists

npx @caglacabaoglu/cli exhibitions --status=current

npx @caglacabaoglu/cli search "contemporary painting"

# Or install the binary globally

npm install -g @caglacabaoglu/cli && caglacabaoglu artists --limit=10

Zero dependencies, Node.js 18+. Source: packages/cli.

3. REST API Endpoints Reference (v1)

MethodEndpointDescriptionOperation ID
GET/api/v1/artistsRepresented artists with biographies and profile linksgetArtistsV1
GET/api/v1/exhibitionsCurrent, upcoming, and past exhibitionsgetExhibitionsV1
GET/api/v1/fairsArt fairs with booth numbers and datesgetFairsV1
GET/api/v1/newsPress releases and gallery announcementsgetNewsV1
GET/api/v1/publicationsExhibition catalogues and published booksgetPublicationsV1
GET/api/v1/videosArtist interview and exhibition documentary videosgetVideosV1
GET/api/v1/searchMultilingual fuzzy search (?q=query&locale=en)searchGalleryV1
POST/api/v1/agent/registerProgrammatic agent registration for credentialsregisterAgentV1
GET/api/v1/agent/premiumGated contemporary art monographs (x402 / Bearer)getPremiumMonographsV1

4. Model Context Protocol (MCP) Integration

Connect your AI agent or IDE (Claude, Cursor, Antigravity) directly to Çağla Cabaoğlu Gallery via Model Context Protocol:

{ "mcpServers": { "caglacabaoglu": { "type": "http", "url": "https://caglacabaoglu.com/api/mcp" } } }

The endpoint speaks JSON-RPC 2.0 over the Streamable HTTP transport. It is stateless and unauthenticated — no session id, no API key.

curl -s -X POST https://caglacabaoglu.com/api/mcp \ -H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
MCP ToolDescription
list_artistsRepresented and exhibited artists with biographies
get_artistOne artist by slug
list_exhibitionsExhibitions, filterable by current / upcoming / past
list_fairsArt fair participations with booth and location
list_newsNews, announcements, and press coverage
list_publicationsCatalogues, monographs, and critical texts
list_videosArtist interviews and exhibition films
search_galleryKeyword search across every content type
get_gallery_infoAddress, hours, services, pricing policy, contacts

5. Error Handling & Rate Limits (RFC 9457 & RFC 9110)

All error responses follow the RFC 9457 Problem Details specification with structured machine-readable error codes and resolution hints so AI agents can self-correct:

{ "type": "https://caglacabaoglu.com/docs/errors#QUERY_TOO_LONG", "title": "Query too long", "status": 400, "detail": "Query exceeds maximum length of 64 characters.", "code": "QUERY_TOO_LONG", "hint": "Please provide a query between 2 and 64 characters." }

Rate limits are returned on every response: `RateLimit-Limit: 120`, `RateLimit-Remaining: 119`, `RateLimit-Reset: 60`, `Retry-After: 60`.

Full error code reference: /docs/errors.

6. Versioning & Deprecation

The version lives in the URL path (/api/v1) and every response carries an X-API-Version header. Breaking changes ship under a new path version. Deprecated endpoints answer with an RFC 9745 Deprecation header plus a link to their successor; once a removal date is set, an RFC 8594 Sunset header is published at least six months in advance.

Deprecation: true Link: </docs/deprecation-policy>; rel="deprecation", </api/v1>; rel="successor-version"

Full policy: /docs/deprecation-policy.

7. Support & Contact

For custom data partnerships, higher rate limits, or integration support, please reach out to our team: