Raw Whitney API query
whitney_queryQuery any Whitney Museum API endpoint with raw Ransack predicates, filters, sorting, pagination, or by ID. Use for custom searches, field discovery, or reaching the pages endpoint.
Instructions
Escape hatch for queries the typed tools do not cover. Hits any endpoint with arbitrary Ransack predicates.
Args:
endpoint ('artists' | 'artworks' | 'exhibitions' | 'events' | 'guides' | 'pages')
id (string, optional): fetch a single record instead of a list
filters (object, optional): raw predicates, e.g. { "medium_cont_all_split": "graphite paper" }
sort (string, optional): e.g. 'popularity desc'
page (number, default 1), limit (number, 1-30, default 10)
response_format ('markdown' | 'json', default 'markdown')
Returns: a list result, or { record: {...} } when 'id' is supplied.
Prefer the typed tools where they fit — they return tidier records. Use this to discover field names, combine unusual predicates, or reach the 'pages' endpoint. Note that 'pages' mirrors the Museum's CMS structure and is rarely useful outside it.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Fetch one record by ID instead of listing | |
| page | No | 1-based page number; the API returns 30 records per page | |
| sort | No | Ransack sort string | |
| limit | No | Maximum records to return from the fetched page (1-30). Keep this low unless you need the detail — Whitney records are verbose. | |
| filters | No | Raw Ransack predicates, e.g. { "title_cont": "moon", "classification_eq": "Paintings" }. Matchers: _eq, _not_eq, _cont, _not_cont, _cont_all_split, _true, _false, _gt, _gteq, _lt, _lteq. | |
| endpoint | Yes | Which API endpoint to query | |
| response_format | No | Output format: 'markdown' for reading, 'json' for machine processing | markdown |