링크 관리 API 레시피
캠페인 링크 일괄 생성, UTM 링크, 클릭 통계 조회 등 실무 시나리오별 API 예제를 제공합니다.
링크 관리 API 레시피
이 문서는 실무에서 자주 쓰는 링크 관리 시나리오를 API 호출 예제와 함께 정리합니다.
시작하기 전에
이 문서의 예제는 모두 GraphQL API 사용하기에서 설명한 MCP HTTP 호출 방식을 기반으로 합니다. 먼저 해당 문서를 읽고, API Key 관리에서 API Key를 발급받으세요.
모든 예제는 아래 헤더를 공통으로 사용합니다.
-H "Authorization: Bearer el_aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789abcd"
-H "Content-Type: application/json"
-H "Accept: application/json, text/event-stream"
레시피 1: 캠페인 링크 일괄 생성
마케팅 캠페인을 운영할 때 여러 URL을 한 번에 단축하면 효율적입니다. bulk_create_links 도구는 한 번에 최대 50개까지 생성합니다.
curl -X POST https://api.edgelink.me/mcp \
-H "Authorization: Bearer el_aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789abcd" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "bulk_create_links",
"arguments": {
"urls": [
{ "url": "https://example.com/event/a", "custom_key": "event-a" },
{ "url": "https://example.com/event/b", "custom_key": "event-b" },
{ "url": "https://example.com/event/c" }
]
}
}
}'
응답에는 성공·실패 개수와 함께 생성된 링크 목록이 포함됩니다.
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"content": [
{
"type": "text",
"text": "일괄 링크 생성 완료: 3개 성공, 0개 실패\n\n생성된 링크:\n1. https://edgelink.me/event-a → https://example.com/event/a\n2. https://edgelink.me/event-b → https://example.com/event/b\n3. https://edgelink.me/xY3kZq → https://example.com/event/c"
}
]
}
}
팁:
custom_key를 생략하면 6자리 키가 자동으로 생성됩니다. 일부 항목만 실패하면 응답의실패:섹션에 사유가 표시되므로, 해당 항목만 다시 시도하세요.
레시피 2: UTM 파라미터 포함 링크 생성
광고·뉴스레터 캠페인의 성과를 추적하려면 UTM 파라미터가 필요합니다. create_utm_link 도구는 UTM 값을 원본 URL에 자동으로 붙여 단축합니다.
직접 UTM 값 지정
curl -X POST https://api.edgelink.me/mcp \
-H "Authorization: Bearer el_aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789abcd" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "create_utm_link",
"arguments": {
"url": "https://example.com/product",
"utm_source": "newsletter",
"utm_medium": "email",
"utm_campaign": "spring_sale",
"custom_key": "spring-mail"
}
}
}'
UTM 템플릿 재사용
워크스페이스에 저장된 UTM 템플릿을 template_id로 지정하면 매번 같은 값을 입력하지 않아도 됩니다. 개별 utm_* 값을 함께 넘기면 템플릿 값보다 우선 적용됩니다.
{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "create_utm_link",
"arguments": {
"url": "https://example.com/product",
"template_id": "clxxxxxxxxxxxxxxxxxxxxxxx",
"utm_content": "banner-top"
}
}
}
응답에는 단축 URL, UTM이 포함된 원본 URL, 링크 ID, 적용된 UTM 파라미터가 함께 표시됩니다.
레시피 3: 링크 클릭 통계 조회
특정 링크의 성과를 확인하려면 먼저 링크 목록에서 링크 ID를 찾고, get_link_analytics로 기간별 통계를 조회합니다.
1단계: 링크 ID 확인
curl -X POST https://api.edgelink.me/mcp \
-H "Authorization: Bearer el_aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789abcd" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{
"jsonrpc": "2.0",
"id": 4,
"method": "tools/call",
"params": {
"name": "list_links",
"arguments": { "first": 20 }
}
}'
링크 상세 정보가 필요하면 get_link_info로 단건 조회할 수 있습니다.
{
"jsonrpc": "2.0",
"id": 5,
"method": "tools/call",
"params": {
"name": "get_link_info",
"arguments": { "link_id": "clxxxxxxxxxxxxxxxxxxxxxxx" }
}
}
2단계: 기간별 클릭 분석
curl -X POST https://api.edgelink.me/mcp \
-H "Authorization: Bearer el_aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789abcd" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{
"jsonrpc": "2.0",
"id": 6,
"method": "tools/call",
"params": {
"name": "get_link_analytics",
"arguments": {
"link_id": "clxxxxxxxxxxxxxxxxxxxxxxx",
"start_date": "2026-05-01",
"end_date": "2026-05-18"
}
}
}'
응답에는 총 클릭 수, 일별 클릭, 국가별·디바이스별·브라우저별·리퍼러별 분포가 포함됩니다.
{
"jsonrpc": "2.0",
"id": 6,
"result": {
"content": [
{
"type": "text",
"text": "링크 분석 (2026-05-01 ~ 2026-05-18):\n\n총 클릭 수: 1240\n\n국가별:\n KR: 980회 (79%)\n US: 150회 (12%)\n\n디바이스별:\n mobile: 870회 (70%)\n desktop: 370회 (30%)"
}
]
}
}
레시피 4: 워크스페이스 전체 요약
캠페인 종료 후 전체 성과를 한눈에 확인하려면 get_workspace_summary를 사용합니다. 총 링크·폴더·태그 수와 최근 기간의 인기 링크, 주요 국가를 반환합니다.
curl -X POST https://api.edgelink.me/mcp \
-H "Authorization: Bearer el_aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789abcd" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{
"jsonrpc": "2.0",
"id": 7,
"method": "tools/call",
"params": {
"name": "get_workspace_summary",
"arguments": { "days": 30 }
}
}'
운영 시 주의 사항
- MCP 엔드포인트는 초당 5회, 분당 60회 요청 제한이 적용됩니다. 대량 생성은
bulk_create_links한 번의 호출로 묶으세요. - 링크 생성은 플랜의 링크 생성 한도(Quota)를 소비합니다. 한도 초과 시 에러가 반환됩니다.
- 분석의 unique 지표는 Pro 플랜 전용입니다. 자세한 내용은 GraphQL API 사용하기를 참고하세요.
다음 단계
- MCP 활용 레시피 - Claude 및 AI 에이전트로 위 작업을 자연어로 자동화
- GraphQL API 사용하기 - 스키마 및 인증 방식 상세