Skip to Content
Elido is in closed beta — APIs are stable but rate-limits and quotas may change before GA. Request access →
ПосібникиBio-сторінки

Біо-сторінки

Біо-сторінка - це єдина цільова сторінка, оптимізована для мобільних пристроїв, що містить стек посилань - формат, який Linktree популяризував як «посилання в біо» в Instagram, TikTok та X. Кожна сторінка доступна за адресою bio.elido.app/<username> (або на власному домені) і рендериться на стороні сервера за допомогою bio-renderer, щоб завантажуватися при першому відмальовуванні.

Біо-сторінки незалежні від коротких посилань: вони мають власний простір імен URL-адрес, власний потік кліків та власну аналітику.

Створити сторінку

curl -X POST \ https://api.elido.app/v1/workspaces/1/bio \ -H "Authorization: Bearer $ELIDO_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "username": "acme", "display_name": "Acme Inc.", "bio": "We make sprockets that just work.", "avatar_url": "https://cdn.example.com/avatar.png", "is_published": true, "theme": { "bg_color": "#0f172a", "text_color": "#f8fafc", "button_style": "rounded", "button_color": "#5b6cff", "button_radius": 12 } }'
ПолеПримітки
username3–32 символи, малі літери, цифри, -, _. Глобально унікальний.
display_nameЖирне ім’я, що відображається над біографією.
bioДовільний текст під ім’ям.
avatar_urlНеобов’язковий URL зображення; відображається як коло.
is_publishedЗа замовчуванням false. Неопубліковані сторінки видають помилку 404 для відвідувачів.
themeJSON з bg_color, text_color, button_style, button_color, button_radius.

Додати посилання

curl -X POST \ https://api.elido.app/v1/workspaces/1/bio/9/links \ -H "Authorization: Bearer $ELIDO_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "title": "Latest blog post", "url": "https://example.com/blog/sprocket-3", "icon": "rss", "sort_order": 0 }'

sort_order керує порядком відтворення за зростанням; перебалансуйте за допомогою PATCH для кожного посилання або скористайтеся перетягуванням (drag-and-drop) на дашборді. Іконки - це назви з Lucide (rss, youtube, instagram, …).

Публічний рендеринг

Сама сторінка надається сервісом bio-renderer:

GET https://bio.elido.app/acme

Рендерер виконує запит GET /v1/bio/acme (публічний, без автентифікації) один раз на запит і кешує його за ім’ям користувача на 60 секунд.

Відстеження кліків

Кожна кнопка має трекер за принципом «відправив і забув»:

navigator.sendBeacon( "https://api.elido.app/v1/bio/acme/click", JSON.stringify({ link_id: 17 }) );

Рендерер налаштовує це автоматично - вам не потрібно самостійно надсилати JavaScript. Ендпоїнт реєструє Country, User-Agent та Referer, а потім передає дані до ClickHouse через той самий конвеєр click-ingester, що й кліки на коротких посиланнях.

Теплова карта

Загальна кількість кліків по кожному посиланню формує теплову карту дашборду:

curl https://api.elido.app/v1/workspaces/1/bio/9/heatmap \ -H "Authorization: Bearer $ELIDO_TOKEN"
[ { "bio_link_id": 17, "clicks": 4321 }, { "bio_link_id": 18, "clicks": 1187 } ]

Дашборд відображає це у вигляді горизонтальної гістограми, відсортованої за sort_order, щоб ви могли з першого погляду побачити, які посилання працюють, а які - ні.

Довідка по ендпоїнту

МетодШлях
GET/v1/workspaces/{ws}/bio (список)
POST/v1/workspaces/{ws}/bio (створення сторінки)
PATCH/v1/workspaces/{ws}/bio/{id}
DELETE/v1/workspaces/{ws}/bio/{id}
GET/v1/workspaces/{ws}/bio/{id}/links
POST/v1/workspaces/{ws}/bio/{id}/links
PATCH/v1/workspaces/{ws}/bio/{id}/links/{link_id}
DELETE/v1/workspaces/{ws}/bio/{id}/links/{link_id}
GET/v1/workspaces/{ws}/bio/{id}/heatmap
GET/v1/bio/{username} (публічний рендеринг)
POST/v1/bio/{username}/click (публічний клік)