Komi page
curl --request GET \
--url https://api.scraperize.com/v1/komi/page \
--header 'x-api-key: <api-key>'import requests
url = "https://api.scraperize.com/v1/komi/page"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.scraperize.com/v1/komi/page', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.scraperize.com/v1/komi/page",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.scraperize.com/v1/komi/page"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.scraperize.com/v1/komi/page")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.scraperize.com/v1/komi/page")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": {
"page": {
"username": "shxtsngigs",
"name": "ShxtsNGigs",
"displayName": "ShxtsNGigs",
"displayNameType": "IMAGE",
"displayNameImageUrl": "https://komi-production-assets.s3-accelerate.amazonaws.com/photos/qpUoVqwkkPOn4iRdqNdnz.png",
"avatarUrl": "https://komi-production-assets.s3-accelerate.amazonaws.com/photos/y9apL0SDVc6CrGkUElA6k.jpg?tr=w-810%2Ch-1018%2Ccm-extract%2Cx-0%2Cy-0&crp=%7B%22x%22%3A0%2C%22y%22%3A40.68571428571428%2C%22zoomVal%22%3A1%7D",
"avatarRatio": 1.25,
"category": null,
"currency": "USD",
"status": "active",
"isActive": true,
"createdAt": "2024-03-19T11:32:59.680Z",
"updatedAt": "2024-07-04T10:55:41.860Z",
"theme": {
"type": "CUSTOM",
"backgroundColor": "#D02E26",
"typographyColor": "#FFFFFF",
"overlayColor": "#FFFFFF",
"overlayOpacity": 0.1,
"showNavBar": true,
"showDisplayName": true
},
"socialLinks": [
{
"type": "TIKTOK",
"url": "https://www.tiktok.com/@shxtsngigs"
},
{
"type": "INSTAGRAM",
"url": "https://www.instagram.com/shxtsngigs/"
},
{
"type": "YOUTUBE",
"url": "https://www.youtube.com/@ShtsNGigsPodcast"
}
],
"sections": [
{
"id": "54ac6f12-45d8-45bc-8b49-7effd634daa8",
"title": "Daddy's Home Live Tour",
"order": 1,
"showTitle": true,
"items": [
{
"id": "0b7b97c1-8ae4-4ac9-ba7b-a3805963e231",
"type": "LINK",
"title": "UK & Ireland Tour Tickets! ",
"subtitle": null,
"url": "https://www.livenation.co.uk/shxtsngigs-tickets-adp1406143",
"imageUrl": "https://komi-production-assets.s3-accelerate.amazonaws.com/photos/x0hzq2QRLdBkF2wMKxHOM.jpg",
"order": 0,
"variant": null,
"price": null,
"currency": null,
"numberOfEpisodes": null,
"links": null,
"cta": null,
"fields": null,
"videos": null
}
]
},
{
"id": "dc6133a6-6e36-433b-ac17-0f909fca27fd",
"title": "Mailing list",
"order": 2,
"showTitle": true,
"items": [
{
"id": "f73f0042-b1f8-426a-be34-7319e03dda92",
"type": "DATA_CAPTURE_SIGNUP",
"title": "SNG mailing list",
"subtitle": "Sign up to the mailing list to be the first to know about new tour dates! ",
"url": null,
"imageUrl": "https://komi-production-assets.s3-accelerate.amazonaws.com/photos/fjs8sXjLet7-wbNlciDD6.jpg",
"order": 0,
"variant": "data-capture",
"price": null,
"currency": null,
"numberOfEpisodes": null,
"links": null,
"cta": "Subscribe",
"fields": [
{
"name": "email",
"label": "Email",
"type": "email",
"required": true,
"placeholder": "Enter your email address"
},
{
"name": "name",
"label": "Full Name",
"type": "full_name",
"required": true,
"placeholder": "Full name"
},
{
"name": "dob",
"label": "Date of birth",
"type": "date_of_birth",
"required": true,
"placeholder": null
}
],
"videos": null
}
]
},
{
"id": "97900181-dcf8-4f81-95fe-b06ade975b62",
"title": "Shop the Merch",
"order": 3,
"showTitle": true,
"items": [
{
"id": "b4032ffc-3267-4288-bfbc-8cd8ca8105c6",
"type": "PRODUCT",
"title": "Varsity Jacket",
"subtitle": null,
"url": "https://shxtsngigs.store/products/jacket",
"imageUrl": "https://komi-production-assets.s3-accelerate.amazonaws.com/photos/WTnxuCTIgdEwQhsPQyD-Y.png",
"order": 1,
"variant": null,
"price": 140,
"currency": "GBP",
"numberOfEpisodes": null,
"links": null,
"cta": null,
"fields": null,
"videos": null
},
{
"id": "fbb78327-7ee7-42da-8e58-7f07e731e542",
"type": "PRODUCT",
"title": "Joggers",
"subtitle": null,
"url": "https://shxtsngigs.store/products/joggers",
"imageUrl": "https://komi-production-assets.s3-accelerate.amazonaws.com/photos/rKHibxsR7PZ9eZlKdRAmD.png",
"order": 5,
"variant": null,
"price": 60,
"currency": "GBP",
"numberOfEpisodes": null,
"links": null,
"cta": null,
"fields": null,
"videos": null
}
]
}
],
"sectionCount": 9,
"itemCount": 16
},
"fetchedAt": "2026-10-05T14:43:54.851Z"
},
"meta": {
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f",
"creditsCharged": 1,
"creditsRemaining": 4999,
"cached": false
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "API key required — pass it in the `x-api-key` header.",
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f"
}
}{
"error": {
"code": "INSUFFICIENT_CREDITS",
"message": "This request costs 1 credit, but your balance is 0. Top up to continue.",
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f"
}
}{
"error": {
"code": "NOT_FOUND",
"message": "The requested content was not found (it may not exist, be deleted, or be private).",
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f"
}
}{
"error": {
"code": "VALIDATION_ERROR",
"message": "Request validation failed",
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f",
"details": [
{
"path": "url",
"message": "Required"
}
]
}
}{
"error": {
"code": "RATE_LIMITED",
"message": "Rate limit exceeded — max 100 requests per 60s. Retry in ~30s.",
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f"
}
}{
"error": {
"code": "UPSTREAM_BLOCKED",
"message": "The source is temporarily unavailable. Please try again shortly.",
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f"
}
}Komi
Komi page
Fetches a public Komi.io creator page by URL: the profile (name, display name, avatar, socials, theme) and its content sections — each with its title and the items it holds (links, products with prices, YouTube videos, podcast with streaming links, mailing-list forms, …), every item with its title, url and image.
GET
/
v1
/
komi
/
page
Komi page
curl --request GET \
--url https://api.scraperize.com/v1/komi/page \
--header 'x-api-key: <api-key>'import requests
url = "https://api.scraperize.com/v1/komi/page"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.scraperize.com/v1/komi/page', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.scraperize.com/v1/komi/page",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.scraperize.com/v1/komi/page"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.scraperize.com/v1/komi/page")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.scraperize.com/v1/komi/page")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": {
"page": {
"username": "shxtsngigs",
"name": "ShxtsNGigs",
"displayName": "ShxtsNGigs",
"displayNameType": "IMAGE",
"displayNameImageUrl": "https://komi-production-assets.s3-accelerate.amazonaws.com/photos/qpUoVqwkkPOn4iRdqNdnz.png",
"avatarUrl": "https://komi-production-assets.s3-accelerate.amazonaws.com/photos/y9apL0SDVc6CrGkUElA6k.jpg?tr=w-810%2Ch-1018%2Ccm-extract%2Cx-0%2Cy-0&crp=%7B%22x%22%3A0%2C%22y%22%3A40.68571428571428%2C%22zoomVal%22%3A1%7D",
"avatarRatio": 1.25,
"category": null,
"currency": "USD",
"status": "active",
"isActive": true,
"createdAt": "2024-03-19T11:32:59.680Z",
"updatedAt": "2024-07-04T10:55:41.860Z",
"theme": {
"type": "CUSTOM",
"backgroundColor": "#D02E26",
"typographyColor": "#FFFFFF",
"overlayColor": "#FFFFFF",
"overlayOpacity": 0.1,
"showNavBar": true,
"showDisplayName": true
},
"socialLinks": [
{
"type": "TIKTOK",
"url": "https://www.tiktok.com/@shxtsngigs"
},
{
"type": "INSTAGRAM",
"url": "https://www.instagram.com/shxtsngigs/"
},
{
"type": "YOUTUBE",
"url": "https://www.youtube.com/@ShtsNGigsPodcast"
}
],
"sections": [
{
"id": "54ac6f12-45d8-45bc-8b49-7effd634daa8",
"title": "Daddy's Home Live Tour",
"order": 1,
"showTitle": true,
"items": [
{
"id": "0b7b97c1-8ae4-4ac9-ba7b-a3805963e231",
"type": "LINK",
"title": "UK & Ireland Tour Tickets! ",
"subtitle": null,
"url": "https://www.livenation.co.uk/shxtsngigs-tickets-adp1406143",
"imageUrl": "https://komi-production-assets.s3-accelerate.amazonaws.com/photos/x0hzq2QRLdBkF2wMKxHOM.jpg",
"order": 0,
"variant": null,
"price": null,
"currency": null,
"numberOfEpisodes": null,
"links": null,
"cta": null,
"fields": null,
"videos": null
}
]
},
{
"id": "dc6133a6-6e36-433b-ac17-0f909fca27fd",
"title": "Mailing list",
"order": 2,
"showTitle": true,
"items": [
{
"id": "f73f0042-b1f8-426a-be34-7319e03dda92",
"type": "DATA_CAPTURE_SIGNUP",
"title": "SNG mailing list",
"subtitle": "Sign up to the mailing list to be the first to know about new tour dates! ",
"url": null,
"imageUrl": "https://komi-production-assets.s3-accelerate.amazonaws.com/photos/fjs8sXjLet7-wbNlciDD6.jpg",
"order": 0,
"variant": "data-capture",
"price": null,
"currency": null,
"numberOfEpisodes": null,
"links": null,
"cta": "Subscribe",
"fields": [
{
"name": "email",
"label": "Email",
"type": "email",
"required": true,
"placeholder": "Enter your email address"
},
{
"name": "name",
"label": "Full Name",
"type": "full_name",
"required": true,
"placeholder": "Full name"
},
{
"name": "dob",
"label": "Date of birth",
"type": "date_of_birth",
"required": true,
"placeholder": null
}
],
"videos": null
}
]
},
{
"id": "97900181-dcf8-4f81-95fe-b06ade975b62",
"title": "Shop the Merch",
"order": 3,
"showTitle": true,
"items": [
{
"id": "b4032ffc-3267-4288-bfbc-8cd8ca8105c6",
"type": "PRODUCT",
"title": "Varsity Jacket",
"subtitle": null,
"url": "https://shxtsngigs.store/products/jacket",
"imageUrl": "https://komi-production-assets.s3-accelerate.amazonaws.com/photos/WTnxuCTIgdEwQhsPQyD-Y.png",
"order": 1,
"variant": null,
"price": 140,
"currency": "GBP",
"numberOfEpisodes": null,
"links": null,
"cta": null,
"fields": null,
"videos": null
},
{
"id": "fbb78327-7ee7-42da-8e58-7f07e731e542",
"type": "PRODUCT",
"title": "Joggers",
"subtitle": null,
"url": "https://shxtsngigs.store/products/joggers",
"imageUrl": "https://komi-production-assets.s3-accelerate.amazonaws.com/photos/rKHibxsR7PZ9eZlKdRAmD.png",
"order": 5,
"variant": null,
"price": 60,
"currency": "GBP",
"numberOfEpisodes": null,
"links": null,
"cta": null,
"fields": null,
"videos": null
}
]
}
],
"sectionCount": 9,
"itemCount": 16
},
"fetchedAt": "2026-10-05T14:43:54.851Z"
},
"meta": {
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f",
"creditsCharged": 1,
"creditsRemaining": 4999,
"cached": false
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "API key required — pass it in the `x-api-key` header.",
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f"
}
}{
"error": {
"code": "INSUFFICIENT_CREDITS",
"message": "This request costs 1 credit, but your balance is 0. Top up to continue.",
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f"
}
}{
"error": {
"code": "NOT_FOUND",
"message": "The requested content was not found (it may not exist, be deleted, or be private).",
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f"
}
}{
"error": {
"code": "VALIDATION_ERROR",
"message": "Request validation failed",
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f",
"details": [
{
"path": "url",
"message": "Required"
}
]
}
}{
"error": {
"code": "RATE_LIMITED",
"message": "Rate limit exceeded — max 100 requests per 60s. Retry in ~30s.",
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f"
}
}{
"error": {
"code": "UPSTREAM_BLOCKED",
"message": "The source is temporarily unavailable. Please try again shortly.",
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f"
}
}Cost: 1 credit per successful request. Errors and cache hits (
cache_max_age) are free.Copy for AI assistant
Copy for AI assistant
Paste this into ChatGPT, Claude or your coding assistant to generate working code for this endpoint (use the copy button).
Prompt
I want to make an API call to /v1/komi/page. Here are the details:
Endpoint: GET https://api.scraperize.com/v1/komi/page
Description: Fetches a public Komi.io creator page by URL: the profile (name, display name, avatar, socials, theme) and its content sections — each with its title and the items it holds (links, products with prices, YouTube videos, podcast with streaming links, mailing-list forms, …), every item with its title, url and image.
Required Headers:
- x-api-key: Your API key
Parameters:
- url (string) [required]: Public Komi page URL, e.g. https://shxtsngigs.komi.io.
- cache_max_age (select): Optional. Return a cached result if one this age or newer exists — served for **0 credits** with `meta.cached=true` and `meta.cachedAt`. Otherwise a fresh scrape runs (**1 credit**) and refreshes the cache. Omit to always scrape fresh.
Example Response:
{
"data": {
"page": {
"username": "shxtsngigs",
"name": "ShxtsNGigs",
"displayName": "ShxtsNGigs",
"displayNameType": "IMAGE",
"displayNameImageUrl": "https://komi-production-assets.s3-accelerate.amazonaws.com/photos/qpUoVqwkkPOn4iRdqNdnz.png",
"avatarUrl": "https://komi-production-assets.s3-accelerate.amazonaws.com/photos/y9apL0SDVc6CrGkUElA6k.jpg?tr=w-810%2Ch-1018%2Ccm-extract%2Cx-0%2Cy-0&crp=%7B%22x%22%3A0%2C%22y…",
"avatarRatio": 1.25,
"category": null,
"currency": "USD",
"status": "active",
"isActive": true,
"createdAt": "2024-03-19T11:32:59.680Z",
"updatedAt": "2024-07-04T10:55:41.860Z",
"theme": {
"type": "CUSTOM",
"backgroundColor": "#D02E26",
"typographyColor": "#FFFFFF",
"overlayColor": "#FFFFFF",
"overlayOpacity": 0.1,
"showNavBar": true,
"showDisplayName": true
},
"socialLinks": [
{
"type": "TIKTOK",
"url": "https://www.tiktok.com/@shxtsngigs"
}
],
"sections": [
{
"id": "54ac6f12-45d8-45bc-8b49-7effd634daa8",
"title": "Daddy's Home Live Tour",
"order": 1,
"showTitle": true,
"items": [
{
"id": "0b7b97c1-8ae4-4ac9-ba7b-a3805963e231",
"type": "LINK",
"title": "UK & Ireland Tour Tickets! ",
"subtitle": null,
"url": "https://www.livenation.co.uk/shxtsngigs-tickets-adp1406143",
"imageUrl": "https://komi-production-assets.s3-accelerate.amazonaws.com/photos/x0hzq2QRLdBkF2wMKxHOM.jpg",
"order": 0,
"variant": null,
"price": null,
"currency": null,
"numberOfEpisodes": null,
"links": null,
"cta": null,
"fields": null,
"videos": null
}
]
}
],
"sectionCount": 9,
"itemCount": 16
},
"fetchedAt": "2026-10-05T14:43:54.851Z"
},
"meta": {
"requestId": "req_8f0c2b7e-1a2b-4c3d-9e8f-0a1b2c3d4e5f",
"creditsCharged": 1,
"creditsRemaining": 4999,
"cached": false
}
}
Please help me write code in my preferred programming language to make this API call and handle the response appropriately. Include error handling and best practices.
Authorizations
Your API key. Send it in the x-api-key header (or Authorization: Bearer <key>). Create and manage keys from your dashboard.
Query Parameters
Public Komi page URL, e.g. https://shxtsngigs.komi.io.
Optional. Return a cached result if one this age or newer exists — served for 0 credits with meta.cached=true and meta.cachedAt. Otherwise a fresh scrape runs (1 credit) and refreshes the cache. Omit to always scrape fresh.
Available options:
1d, 3d, 7d, 14d, 30d