Перейти к содержимому
LinkProfit

Быстрый старт

Создайте первую короткую ссылку через API за две минуты с помощью curl, JavaScript или Python.

Обновлено 13 августа 2026 г.

Две минуты от нуля до работающей короткой ссылки. Понадобится ключ API рабочего пространства с областью действия links:write — создайте его в панели в разделе Настройки → ключи API (полное значение показывается один раз).

Сниппеты читают базовый адрес и ключ из переменных окружения, поэтому одни и те же команды работают и с продакшеном, и с локальным экземпляром:

export LINKPROFIT_API_BASE="https://api.linkprofit.com/v1"
export LINKPROFIT_API_KEY="lp_live_…your key…"

1. Создание ссылки

curl -s -X POST "$LINKPROFIT_API_BASE/links" \
  -H "Authorization: Bearer $LINKPROFIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com/summer-sale", "title": "Summer sale"}'

Ответ — полный объект ссылки:

{
  "data": {
    "id": "lnk_2f8k1mVq3xZcW9yTb4Nda",
    "short_url": "https://go.your-brand.com/x7f2q1z",
    "domain": "go.your-brand.com",
    "slug": "x7f2q1z",
    "url": "https://example.com/summer-sale",
    "title": "Summer sale",
    "has_password": false,
    "public_stats": false,
    "created_at": "2026-08-13T10:00:00.000Z"
  }
}

Без domain_id ссылка попадает на ваш домен по умолчанию; без slug генерируется свободный код. Любая настройка модели ссылки — таргетинг, split-тест A/B, срок действия, пароль, UTM, пиксели — принимается в том же запросе, смотрите справочник.

2. Список ссылок

curl -s "$LINKPROFIT_API_BASE/links?limit=10" \
  -H "Authorization: Bearer $LINKPROFIT_API_KEY"

Списки разбиты курсорами: идите по pagination.next_cursor, пока он не станет null.

3. Чтение сводки

curl -s "$LINKPROFIT_API_BASE/analytics/summary" \
  -H "Authorization: Bearer $LINKPROFIT_API_KEY"

Требует область действия analytics:read. Без дат показываются последние 30 дней.

То же самое на JavaScript

const base = process.env.LINKPROFIT_API_BASE;
const key = process.env.LINKPROFIT_API_KEY;

const response = await fetch(`${base}/links`, {
  method: "POST",
  headers: {
    Authorization: `Bearer ${key}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ url: "https://example.com/summer-sale" }),
});

if (!response.ok) {
  const { error } = await response.json();
  throw new Error(`${error.code}: ${error.message}`);
}

const { data } = await response.json();
console.log(data.short_url);

То же самое на Python

import os
import requests

base = os.environ["LINKPROFIT_API_BASE"]
key = os.environ["LINKPROFIT_API_KEY"]

response = requests.post(
    f"{base}/links",
    headers={"Authorization": f"Bearer {key}"},
    json={"url": "https://example.com/summer-sale"},
    timeout=10,
)
response.raise_for_status()
print(response.json()["data"]["short_url"])

Создание, безопасное при повторе

Передавайте заголовок Idempotency-Key в любом изменяющем запросе. Повтор запроса с тем же ключом вернёт сохранённый ответ вместо создания второй ссылки — такой запрос безопасно повторить после сетевого таймаута:

curl -s -X POST "$LINKPROFIT_API_BASE/links" \
  -H "Authorization: Bearer $LINKPROFIT_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: order-42-launch" \
  -d '{"url": "https://example.com/launch"}'

Ключи хранятся 24 часа; тот же ключ с другим телом запроса отвечает 409 conflict.