Riseart.com Artist & Artwork Scraper
Pricing
from $5.00 / 1,000 results
Riseart.com Artist & Artwork Scraper
Scrape Riseart.com artworks and artist profiles via the site's own public GraphQL search API, with built-in delta mode. No login required.
Riseart.com Artist & Artwork Scraper
Pricing
from $5.00 / 1,000 results
Scrape Riseart.com artworks and artist profiles via the site's own public GraphQL search API, with built-in delta mode. No login required.
You can access the Riseart.com Artist & Artwork Scraper programmatically from your own applications by using the Apify API. You can also choose the language preference from below. To use the Apify API, youโll need an Apify account and your API token, found in API & Integrations in Apify Console.
{ "openapi": "3.0.1", "info": { "version": "0.1", "x-build-id": "BclHhymJomSWeXpqE" }, "servers": [ { "url": "https://api.apify.com/v2" } ], "paths": { "/acts/artsiom_k~riseart-scraper/run-sync-get-dataset-items": { "post": { "operationId": "run-sync-get-dataset-items-artsiom_k-riseart-scraper", "x-openai-isConsequential": false, "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK" } } } }, "/acts/artsiom_k~riseart-scraper/runs": { "post": { "operationId": "runs-sync-artsiom_k-riseart-scraper", "x-openai-isConsequential": false, "summary": "Executes an Actor and returns information about the initiated run in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/runsResponseSchema" } } } } } } }, "/acts/artsiom_k~riseart-scraper/run-sync": { "post": { "operationId": "run-sync-artsiom_k-riseart-scraper", "x-openai-isConsequential": false, "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK" } } } } }, "components": { "schemas": { "inputSchema": { "type": "object", "properties": { "entityType": { "title": "Entity type", "enum": [ "artworks", "artists" ], "type": "string", "description": "Scrape artworks or artist profiles, via Riseart's own public GraphQL search API. Each produces a different output shape (see dataset_schema.json). Artist records include a real rollup (total_artworks/avg_price/for_sale_artworks/enquire_only_artworks/sold_artworks).", "default": "artworks" }, "store": { "title": "Store / currency", "enum": [ "eu", "uk", "us" ], "type": "string", "description": "Which of Riseart's three regional stores to price artworks in โ confirmed live: \"eu\" = EUR, \"uk\" = GBP, \"us\" = USD. For entityType \"artists\", also prices the per-artist rollup stats (avg_price/currency).", "default": "eu" }, "sort": { "title": "Sort order", "type": "string", "description": "Passed straight through to Riseart's own search API (e.g. \"featured\", \"relevance\"). Only affects the order items are discovered/pushed in, not which items are found โ a full run covers the whole catalog regardless.", "default": "featured" }, "rankingCountry": { "title": "Ranking country", "type": "string", "description": "Optional 2-letter country code passed to Riseart's search ranking (e.g. \"AT\", \"US\", \"GB\"). Affects result ordering only." }, "artistIds": { "title": "Artist IDs (artworks only)", "type": "array", "description": "Optional list of Riseart artist ids (the external_id field on an artist record). When set and entityType is \"artworks\", fetches every artwork for exactly these artists โ sold pieces included, unlike the general catalog โ instead of the whole site. Pair this with an entityType=\"artists\" run using minSoldArtworks to first collect the artist ids you want, e.g. everyone with at least one sale, then feed those ids in here for full per-artwork detail. Gets its own delta-mode tracking scope, independent of a general-catalog run. Ignored when entityType is \"artists\".", "items": { "type": "string" } }, "maxItems": { "title": "Max results", "minimum": 1, "type": "integer", "description": "Stop after pushing this many dataset items. Defaults to 50 โ a fast, cheap preview, and what keeps an unconfigured run within Apify's automated 5-minute QA check. A full, uncapped run covers Riseart's entire catalog (~48,800 artworks or ~1,625 artists as of this build) โ raise this or clear it (set to null) for that.", "default": 50 }, "minSoldArtworks": { "title": "Minimum sold artworks (artists only)", "minimum": 0, "type": "integer", "description": "Only push artist records with at least this many sold artworks (rollup field sold_artworks). Set to 1 to skip artists who have never sold anything. Artists are still fully tracked internally either way (delta baseline, delisted-detection), so this only filters what gets pushed to the dataset, not the incremental logic. Ignored when entityType is \"artworks\".", "default": 0 }, "mode": { "title": "Incremental mode", "enum": [ "auto", "full", "incremental" ], "type": "string", "description": "\"auto\" (recommended): full scan on the first run for a given entityType/store, incremental (new/changed only) afterwards. \"full\": always push every item and refresh the baseline โ schedule this periodically to catch delistings. \"incremental\": always push only new/changed items. Only an uncapped run can detect delistings or update the baseline.", "default": "auto" }, "concurrency": { "title": "Concurrency", "minimum": 1, "type": "integer", "description": "How many search-result pages (100 items each) to fetch in parallel. Defaults to 20 โ validated live against Riseart's own GraphQL endpoint with zero blocking at concurrency up to 50 (up to ~66 req/s in testing). Lower it only if you start seeing errors; there's no anti-bot reason to.", "default": 20 }, "impersonate": { "title": "TLS impersonation target", "type": "string", "description": "curl_cffi browser TLS-impersonation target. Defaults to \"chrome\" internally, though no anti-bot friction was found anywhere on the endpoint this actor uses. Override only if that stops holding." }, "proxyConfiguration": { "title": "Proxy configuration", "type": "object", "description": "Apify Proxy configuration. Leave off unless you start seeing blocks from your own IP reputation โ no anti-bot friction was found while building this actor.", "default": { "useApifyProxy": false } } } }, "runsResponseSchema": { "type": "object", "properties": { "data": { "type": "object", "properties": { "id": { "type": "string" }, "actId": { "type": "string" }, "userId": { "type": "string" }, "startedAt": { "type": "string", "format": "date-time", "example": "2025-01-08T00:00:00.000Z" }, "finishedAt": { "type": "string", "format": "date-time", "example": "2025-01-08T00:00:00.000Z" }, "status": { "type": "string", "example": "READY" }, "meta": { "type": "object", "properties": { "origin": { "type": "string", "example": "API" }, "userAgent": { "type": "string" } } }, "stats": { "type": "object", "properties": { "inputBodyLen": { "type": "integer", "example": 2000 }, "rebootCount": { "type": "integer", "example": 0 }, "restartCount": { "type": "integer", "example": 0 }, "resurrectCount": { "type": "integer", "example": 0 }, "computeUnits": { "type": "integer", "example": 0 } } }, "options": { "type": "object", "properties": { "build": { "type": "string", "example": "latest" }, "timeoutSecs": { "type": "integer", "example": 300 }, "memoryMbytes": { "type": "integer", "example": 1024 }, "diskMbytes": { "type": "integer", "example": 2048 } } }, "buildId": { "type": "string" }, "defaultKeyValueStoreId": { "type": "string" }, "defaultDatasetId": { "type": "string" }, "defaultRequestQueueId": { "type": "string" }, "buildNumber": { "type": "string", "example": "1.0.0" }, "containerUrl": { "type": "string" }, "usage": { "type": "object", "properties": { "ACTOR_COMPUTE_UNITS": { "type": "integer", "example": 0 }, "DATASET_READS": { "type": "integer", "example": 0 }, "DATASET_WRITES": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_READS": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_WRITES": { "type": "integer", "example": 1 }, "KEY_VALUE_STORE_LISTS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_READS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_WRITES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_INTERNAL_GBYTES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_EXTERNAL_GBYTES": { "type": "integer", "example": 0 }, "PROXY_RESIDENTIAL_TRANSFER_GBYTES": { "type": "integer", "example": 0 }, "PROXY_SERPS": { "type": "integer", "example": 0 } } }, "usageTotalUsd": { "type": "number", "example": 0.00005 }, "usageUsd": { "type": "object", "properties": { "ACTOR_COMPUTE_UNITS": { "type": "integer", "example": 0 }, "DATASET_READS": { "type": "integer", "example": 0 }, "DATASET_WRITES": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_READS": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_WRITES": { "type": "number", "example": 0.00005 }, "KEY_VALUE_STORE_LISTS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_READS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_WRITES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_INTERNAL_GBYTES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_EXTERNAL_GBYTES": { "type": "integer", "example": 0 }, "PROXY_RESIDENTIAL_TRANSFER_GBYTES": { "type": "integer", "example": 0 }, "PROXY_SERPS": { "type": "integer", "example": 0 } } } } } } } } }}OpenAPI is a standard for designing and describing RESTful APIs, allowing developers to define API structure, endpoints, and data formats in a machine-readable way. It simplifies API development, integration, and documentation.
OpenAPI is effective when used with AI agents and GPTs by standardizing how these systems interact with various APIs, for reliable integrations and efficient communication.
By defining machine-readable API specifications, OpenAPI allows AI models like GPTs to understand and use varied data sources, improving accuracy. This accelerates development, reduces errors, and provides context-aware responses, making OpenAPI a core component for AI applications.
You can download the OpenAPI definitions for Riseart.com Artist & Artwork Scraper from the options below:
If youโd like to learn more about how OpenAPI powers GPTs, read our blog post.
You can also check out our other API clients: