Skip to content
언어: 한국어

개발자를 위한 API

영역별 API 엔드포인트

2026년 11월 1일 업데이트 6분 분량

API 키로 쓸 수 있는 모든 엔드포인트를 영역별로 메서드, 경로, 필요한 스코프, 하는 일과 함께 정리했습니다.

이 개요에는 API 키의 토큰으로 작동하는 모든 엔드포인트가 나열되어 있습니다. 모든 경로는 https://dock.at-harbor.com으로 시작합니다. 각 엔드포인트의 정확한 필드는 https://dock.at-harbor.com/openapi.yaml의 OpenAPI 명세에 있습니다.

인증과 공개 엔드포인트

메서드와 경로인증용도
POST /v1/token없음(본문에 키 ID와 시크릿)API 키를 액세스 토큰으로 교환
GET /v1/plans없음플랜과 가격
GET /v1/pages/available?handle=…없음핸들이 사용 가능한지 확인

페이지

메서드와 경로스코프용도
GET /v1/pagesread:pages워크스페이스의 모든 페이지(ID, 핸들, 제목, 상태, 공개 버전, 공개 범위, URL 포함)
POST /v1/pageswrite:pages페이지 만들기. 필수: handle(2~64자, 문자, 숫자, 하이픈)과 template_key. 선택: title, domain_id, theme_config
GET /v1/pages/{id}read:pages페이지 하나. has_unpublished_changes도 포함(초안이 게시된 버전과 다르면 true)
PATCH /v1/pages/{id}write:pagestitle, handle, discoverable(디렉터리 노출) 변경
PATCH /v1/pages/{id}/visibilitywrite:pagespublic, private, password(4~72자 password 포함). 즉시 적용
POST /v1/pages/{id}/publishwrite:pages초안 게시. 응답에 새 버전 포함
GET /v1/pages/{id}/versionsread:pages게시된 버전
GET /v1/pages/{id}/versions/{version}read:pages버전 하나
POST /v1/pages/{id}/versions/{version}/restorewrite:pages버전을 초안으로 되돌림. current는 모든 초안 변경을 버림
GET /v1/pages/{id}/seoread:pagesSEO 및 공유 텍스트
PATCH /v1/pages/{id}/seowrite:pagesseo_title, seo_description, og_title, og_description, og_image_asset_id, canonical_url, noindex
POST /v1/pages/{id}/invite-linkwrite:pages게시된 비공개 페이지의 초대 링크. days 1~30, 기본 7. 그 밖에는 409 page_not_private 또는 page_not_published
POST /v1/pages/{id}/invite-link/revokewrite:pages초대 링크 폐기
POST /v1/pages/{id}/uploadswrite:assets페이지용 파일 업로드

초안

메서드와 경로스코프용도
GET /v1/pages/{id}/draftread:pages현재 초안: template_key, config, theme_config, custom_css, seo, 이미지 할당, 링크
PATCH /v1/pages/{id}/draftwrite:pages다음 중 하나 이상: config(JSON으로 최대 64 KB, 각 텍스트 최대 5,000자), theme_config, custom_css(최대 50,000자, 65,535바이트), seo, template_key, template_asset_bindings
GET /v1/pages/{id}/draft/validateread:pages초안을 게시할 수 있는지 확인

블록

메서드와 경로스코프용도
GET /v1/pages/{id}/blocksread:pages페이지의 블록
POST /v1/pages/{id}/blockswrite:pages블록 만들기. 필수: type과 config
PATCH /v1/pages/{id}/blocks/{blockId}write:pages블록 편집
DELETE /v1/pages/{id}/blocks/{blockId}write:pages블록 삭제
POST /v1/pages/{id}/blocks/reorderwrite:pages순서 지정
GET /v1/blocks/schemasread:pages모든 블록 종류와 config 스키마

만들 수 있는 유형: text, image, embed, spacer, social_links, form, integration, donation, modal, heading, notice, coupon, contact, opening_hours, tour, file, vcard, countdown, gallery. 링크 블록은 고정되어 있어 이 엔드포인트로 만들지 않습니다. 플랜에 없는 블록 유형은 API가 403 block_type_requires_plan으로 거부합니다. 블록의 config는 JSON으로 최대 128 KB이고 그 안의 각 텍스트는 최대 10,000자입니다. 정보 모달의 modal_body_html은 최대 50,000자, 65,535바이트입니다.

링크

메서드와 경로스코프용도
GET /v1/pages/{id}/linksread:links페이지의 링크
POST /v1/pages/{id}/linkswrite:links링크 만들기. 필수: title(1~200)과 target_url_template(8~2048)
GET /v1/pages/{id}/links/{linkId}read:links링크 하나
PATCH /v1/pages/{id}/links/{linkId}write:links링크 편집
DELETE /v1/pages/{id}/links/{linkId}write:links링크 삭제
POST /v1/pages/{id}/links/reorderwrite:links순서 지정: {"order":[IDs]}

만들기와 편집 시 선택 필드: enabled, geo(mode allowlist 또는 denylist와 countries가 있는 국가 규칙), device(기기별 별도 대상), starts_at과 ends_at(예약), protection_tier(봇 보호), age_restriction. 예약, 국가 및 기기 규칙은 Creator Pro부터 쓸 수 있습니다. 순서를 바꿀 때는 앞으로 옮길 ID만 보내면 되며, 나머지 링크는 이전 순서대로 뒤따릅니다. 페이지에 속하지 않는 ID는 API가 422 validation_failed로 거부하며, details.missing_link_ids에 나열됩니다.

단축 링크

메서드와 경로스코프용도
GET /v1/short-linksread:short_linkslimit, offset, sort, 검색 q가 있는 단축 링크. 응답에 total 포함
POST /v1/short-linkswrite:short_links만들기. 필수: target_url(http 또는 https, 8~2048). 선택: title(최대 120)과 custom_slug(3~32, 소문자, 숫자, 하이픈)
GET /v1/short-links/{id}read:short_links단축 링크 하나
PATCH /v1/short-links/{id}write:short_linkstarget_url 또는 title 변경
DELETE /v1/short-links/{id}write:short_links단축 링크 삭제

플랜의 단축 링크 한도에 도달하면 API가 402 plan_limit_reached로 응답합니다.

에셋

메서드와 경로스코프용도
GET /v1/assetsread:assets워크스페이스의 에셋
POST /v1/assetswrite:assets파일 업로드(multipart/form-data, 필드 file. 선택: page_id, kind, title, alt_text)
DELETE /v1/assets/{assetId}write:assets에셋 삭제

폼

메서드와 경로스코프용도
GET /v1/formsread:forms폼
POST /v1/formswrite:forms폼 만들기. 필수: name과 fields(필드 1~100개)
GET /v1/forms/{id}read:forms폼 하나
PATCH /v1/forms/{id}write:forms폼 편집
DELETE /v1/forms/{id}write:forms폼 삭제
GET /v1/forms/{id}/summaryread:forms요약
GET /v1/forms/{id}/submissionsread:forms제출 내역, 최신순(limit 1~500, 기본 100. 다음 페이지는 cursor = next_cursor)
GET /v1/forms/{id}/submissions/exportread:forms모든 제출 내역을 CSV 파일로, 최신순, 플랜의 내보내기 한도까지(Creator Pro부터). X-Export-Truncated 헤더로 잘렸는지 알 수 있음

통계

메서드와 경로스코프용도
GET /v1/stats/pages/{id}/summaryread:stats페이지의 주요 수치
GET /v1/stats/pages/{id}/timeseriesread:stats페이지의 시계열
GET /v1/stats/pages/{id}/compareread:stats이전 기간과 비교
GET /v1/stats/pages/{id}/linksread:stats링크별 클릭수
GET /v1/stats/pages/{id}/widgetsread:stats위젯 클릭수
GET /v1/stats/pages/{id}/conversions/breakdownread:stats페이지의 전환
GET /v1/stats/workspaces/me/summaryread:stats모든 페이지의 주요 수치
GET /v1/stats/workspaces/me/timeseriesread:stats모든 페이지의 시계열
GET /v1/stats/workspaces/me/compareread:stats이전 기간과 비교
GET /v1/stats/workspaces/me/top-pagesread:stats인기 페이지
GET /v1/stats/workspaces/me/conversions/breakdownread:stats워크스페이스의 전환
GET /v1/stats/workspaces/me/donationsread:donations후원 결제 합계

기간은 페이지네이션에서 설명한 대로 period 또는 from과 to로 고릅니다. 얼마나 이전까지 볼 수 있는지는 플랜에 따라 다릅니다. Creator Pro와 Agency는 365일, Enterprise는 730일입니다. 그보다 이전 기간은 이 한도로 줄어듭니다.

푸시(읽기 전용)

메서드와 경로스코프용도
GET /v1/push/historyread:stats푸시 기록(limit, offset)
GET /v1/push/usageread:stats주간 한도 사용량

푸시 알림 보내기와 푸시 규칙 관리는 대시보드에서만 할 수 있습니다.

워크스페이스, 템플릿, 도메인

메서드와 경로스코프용도
GET /v1/workspaces/me/entitlementsread:workspaces플랜 기능과 한도
GET /v1/workspaces/me/usageread:workspaces현재 사용량
GET /v1/workspaces/me/usage/meteringread:workspaces사용량 기록
GET /v1/workspaces/me/membersread:workspaces멤버 목록
GET /v1/workspaces/me/settingsread:workspaces워크스페이스 설정
GET /v1/workspaces/me/callback-secretsread:workspaces콜백 시크릿(평문 시크릿 제외)
GET /v1/workspaces/me/callback-secrets/{id}read:workspaces콜백 시크릿 하나(평문 시크릿 제외)
GET /v1/templatesread:workspaces모든 템플릿
GET /v1/templates/availableread:workspaces유효한 template_key 값이 있는 기본 제공 및 활성 워크스페이스 템플릿. 워크스페이스 템플릿의 키는 ws:<key>이고 type은 workspace
GET /v1/templates/{key}read:workspaces템플릿 하나
GET /v1/workspaces/me/templatesread:workspaces자체 워크스페이스 템플릿
GET /v1/workspaces/me/templates/{id}read:workspaces워크스페이스 템플릿 하나
POST, PATCH, DELETE /v1/workspaces/me/templates[/{id}]write:templates워크스페이스 템플릿 만들기, 편집, 삭제. html은 최대 60,000바이트(넘으면 details.reason maxBytes와 함께 422 validation_failed), asset_slots 최대 32개
GET /v1/domainsread:workspaces커스텀 도메인
GET /v1/domains/availableread:workspaces페이지에 쓸 수 있는 도메인

API 키로 쓸 수 없는 것

웹훅, 연동, 푸시 알림 보내기, 도메인 관리, 멤버, 결제, 페이지 삭제는 대시보드에서만 쓸 수 있습니다. 콜백 시크릿도 대시보드에서만 만들고 관리할 수 있으며, 나열하고 읽는 것(평문 시크릿 제외)은 read:workspaces로 가능합니다. 전체 목록은 스코프 자세히 보기에 있습니다. 들어오는 데이터(판매와 자체 라이브 데이터)는 별도의 시크릿으로 콜백에 설명된 엔드포인트로 보냅니다.

원하는 내용을 찾지 못했나요?

필요한 내용을 알려 주시면 지원팀이 직접 도와드립니다.

지원팀에 문의