---
title: "Komi Page API"
method: GET
path: "/v1/komi/page"
tags: ["Komi"]
---

# Komi Page API

`GET /v1/komi/page`

## Request

- Base URL: `https://api.captapi.com`
- URL: `https://api.captapi.com/v1/komi/page`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Komi link-in-bio → identity, socials{} (incl.

Paste a Komi URL (komi.io/user or user.komi.io) and get the public page as clean JSON. Identity: id (string UUID), username, url, displayName, firstName/lastName, bio (may be an empty string), avatar. socials{} maps typed Komi social icons (instagram/tiktok/youtube/twitter/facebook/snapchat/spotify/appleMusic/…) and includes website when the creator publishes a WEBSITE row. links[] are content modules only — every row shares the same keys (id, moduleId, versionId, order, type, title, url, visible, thumbnail, price, currency); absent values are null, never missing keys. type distinguishes PRODUCT (price/currency filled) from LINK/YOUTUBE_VIDEO. YouTube embed rows read title/thumbnail from item.metadata when the module label is empty. Social icon rows are not duplicated into links[]. Komi does not expose follower counts or a verified badge. Flat 1 credit via Komi's public JSON APIs (not HTML scrape). Pass cache=true or cacheMaxAge (1d/3d/7d/14d/30d) for the shared response cache.

Docs: https://captapi.com/apis/komi-page

## Query parameters

- `url` string, required
- `cache` boolean
- `cacheMaxAge` '1d' | '3d' | '7d' | '14d' | '30d'

## Response `200`

Success. The data object for this endpoint.

- object
  - `success` unknown, required
  - `data` object, required
    - `platform` string: Platform identifier for this response (matches the endpoint's platform).
    - `id` string: Komi talentProfile id as a string UUID (catalog-wide id convention).
    - `url` string: On the page: https://komi.io/{username}. On a link row: outbound destination.
    - `username` string: Komi account username (bare, no @).
    - `handle` string: Account handle.
    - `displayName` string: Creator display name from Komi.
    - `name` string: Name of the item or account. On profile endpoints: deprecated alias of displayName (one release).
    - `firstName` string: First name.
    - `lastName` string: Last name.
    - `avatar` string: Avatar / profile picture URL. Canonical across profile endpoints.
    - `linkCount` integer: Number of content rows in links[] (hidden PRODUCT rows included when Komi marks visible:false).
    - `socials` object
      - `instagram` string: Instagram URL.
      - `tiktok` string: Tiktok URL.
      - `youtube` string: Youtube URL.
      - `twitter` string: Twitter URL.
      - `facebook` string: Facebook URL.
      - `snapchat` string: Snapchat URL.
    - `bio` string: Creator bio. Always present — empty string when Komi has none.
    - `description` string: Description text.
    - `links` object[]
      - `id` string: Id of this links item.
      - `url` string: On the page: https://komi.io/{username}. On a link row: outbound destination.
      - `title` string: Title of this links item.
      - `type` string: On links[]: Komi module type (LINK, PRODUCT, YOUTUBE_VIDEO, …).
      - `order` integer: Order. Example: 0.
      - `visible` boolean: Visible. Example: true.
      - `thumbnail` string: Thumbnail image URL.
      - `moduleId` string: Module id. Example: "e6ce39d2-e3df-4040-a5cc-ce016cacbc34".
      - `versionId` string: Version id. Example: "944094bf-f124-4b13-866a-3498c492736d".
      - `price` integer
      - `currency` string
    - `other` unknown[]: Typed social rows that did not map into socials{} [{url, title?, type?}]. Empty when every published social mapped.
      - unknown

## Other responses

- `400`: Bad request: wrong platform URL, unknown endpoint, or an invalid parameter value. Not billed.
- `401`: Missing, invalid or revoked API key. Not billed.
- `402`: Not enough credits for this request. Not billed.
- `404`: The resource does not exist or is not public. Not billed.
- `422`: A required parameter is missing or has the wrong type. Not billed.
- `429`: Rate limit reached. Wait for Retry-After seconds. Not billed.
- `502`: The platform could not be reached or returned nothing usable. Retryable, not billed. 503 and 504 use the same envelope.

---

[API](https://skmtc.dev/captapi/apis/captapi-api.md) · [All operations](https://skmtc.dev/captapi/apis/captapi-api/llms.txt) · [OpenAPI document](https://skmtc.dev/captapi/apis/captapi-api/revisions/c9b9ac5ff1bd?raw)
