빠른 시작
cURL, JavaScript, Python으로 2분 만에 API를 통해 첫 단축 링크를 만들어 봅니다.
2026년 8월 13일 업데이트
아무것도 없는 상태에서 동작하는 단축 링크까지 2분이면 충분합니다. links:write
스코프를 가진 워크스페이스 API 키가 필요하며, 대시보드의 설정 → API 키에서 만들 수
있습니다(전체 값은 한 번만 표시됩니다).
아래 예제는 기본 URL과 키를 환경 변수에서 읽습니다. 그래서 같은 명령을 운영 환경과 로컬 인스턴스 양쪽에 그대로 쓸 수 있습니다.
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를 지정하지
않으면 비어 있는 코드가 자동으로 생성됩니다. 타기팅 규칙, 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가
반환됩니다.