대시보드 세션을 공유하지 않고 OrbitPage를 자동화합니다.
범위가 지정된 토큰을 생성하고 스크립트, n8n, 백엔드 또는 CI에서 OrbitPage 대시보드를 엔드 투 엔드로 관리하세요.
최신 개정판: 2026년 8월 4일범위가 제한된 개인 토큰으로 OrbitPage 작업 공간을 관리하세요. 페이지 편집·게시와 미디어, 도메인, 분석, AI, Shop, 뉴스레터 및 결제를 사용할 수 있습니다.
세 가지 자격 증명 경계는 세 가지 다른 작업을 포괄합니다.
이 페이지에는 버전이 지정된 REST 경계가 설명되어 있습니다. OrbitPage 토큰은 OpenAI 공급자 키가 아니며 개인 대시보드 엔드포인트를 인증하지 않습니다.
| 표면 | 자격 증명 | 목적 및 지원 |
|---|---|---|
| 자동화 REST API | op_pat_... | 스크립트, n8n, 서버 백엔드 및 CI에 대해 지원되는 외부 API입니다. /api/v1을 통해 토큰 바인딩된 작업 공간을 관리합니다. |
| OrbitPage AI | op_pat_... + ai:read/ai:write | 공개 계획/커밋 흐름은 검증된 AI 제안을 준비하고 적용합니다. 모든 OpenAI 공급자 자격 증명은 별도의 서버 측 문제로 유지되며 결코 OrbitPage 전달자 토큰이 아닙니다. |
| 대시보드 API | SaaS의 Firebase 세션; OSS의 관리 세션 | 개인 브라우저에서 앱으로의 경로입니다. 안정적인 외부 통합 계약이 아니므로 개인 API 토큰을 받아서는 안 됩니다. |
버전이 지정된 리소스는 대시보드를 포함합니다. 링크 끝점에는 안전 업데이트 루프가 표시됩니다.
모든 요청은 토큰이 생성될 때 선택된 작업 공간에 바인딩됩니다. 토큰은 URL 또는 요청 본문에서 다른 테넌트를 선택할 수 없으며 호출할 때마다 현재 작업 영역 권한이 다시 확인됩니다.
계약은 표준 HTTPS JSON 작업(GET, POST, PUT, PATCH 및 DELETE)을 사용하고 컬, n8n의 HTTP 요청 노드 및 생성된 OpenAPI 클라이언트를 지원합니다.
GET/api/v1/links모든 페이지 블록 읽기
정렬된 컬렉션, 작업공간 ID 및 현재 개정판을 반환합니다.
범위:links:readPATCH/api/v1/links/{linkId}기존 블록 하나 변경
편집 가능한 필드를 병합하고 전체 페이지의 유효성을 검사한 후 새 개정판을 게시합니다.
범위:links:writePUT/api/v1/links전체 컬렉션 교체
현재 컬렉션을 읽고 보존한 후 블록을 추가, 제거 또는 재정렬하려면 이 옵션을 사용합니다.
범위:links:write| 대시보드 표면 | API 경로 | 범위 |
|---|---|---|
| 작업공간 및 전체 초안 | /workspace · /draft | workspace:read |
| 프로필, 테마 및 하위 페이지 | /profile · /theme · /pages | profile:* · theme:* · pages:* |
| 일반, 개인 정보 보호 및 메뉴 설정 | /settings/* | settings:* |
| 출판물, 버전 및 백업 | /publication · /versions · /backup | publication:* · backup:* |
| 미디어 및 사용자 정의 도메인 | /media/* · /domains/* | media:* · domains:* |
| AI 변경 사항 분석 및 검토 | /analytics · /ai/* | analytics:read · ai:* |
| 상점 및 뉴스레터 | /shop/* · /newsletter/* | shop:* · newsletter:* |
| 팀 및 청구 | /team/* · /billing/* | team:* · billing:* |
지원되는 모든 대시보드 작업은 제어하는 표면별로 그룹화됩니다.
아래 경로는 https://orbitpage.com/api/v1 을 기준으로 합니다. 메서드, 경로 및 범위가 안정적인 통합 계약이며 요청 스키마, 형식, 열거형 값 및 응답 모델은 연결된 OpenAPI 3.1 문서에 있습니다. 알 수 없는 경로는 404를 반환하고 지원되지 않는 메서드는 자동 변환하지 않습니다.
01작업 공간, 콘텐츠 및 모양토큰 바인딩 작업공간을 검사하고 전체 초안, 프로필, 블록, 테마 및 하위 페이지를 관리하세요.11 작업
| 방법 및 경로 | 작전 | 필수 범위 | 입력 및 제어 |
|---|---|---|---|
GET/workspace | 작업공간, 계획, 액세스, 사용 및 개정 읽기 | workspace:read | — |
GET/draft | 편집 가능한 전체 페이지 초안 읽기 | workspace:read | — |
GET/links | 목록 페이지 블록 및 현재 개정판 | links:read | — |
PUT/links | 순서가 지정된 전체 블록 컬렉션 교체 | links:write | LinksReplaceRequest · If-Match |
PATCH/links/{linkId} | 한 블록의 편집 가능한 필드 업데이트 | links:write | LinkPatch · If-Match |
GET/profile | 프로필 ID 및 메타데이터 읽기 | profile:read | — |
PATCH/profile | 프로필 필드 업데이트 | profile:write | JSON · If-Match · ?publish=1 |
GET/theme | 활성 초안 테마 읽기 | theme:read | — |
PUT/theme | 임시 테마 교체 | theme:write | JSON · If-Match · ?publish=1 |
GET/pages | 구성된 하위 페이지 나열 | pages:read | — |
PUT/pages | 구성된 하위 페이지 교체 | pages:write | array | { pages } · If-Match · ?publish=1 |
02설정 및 게시메뉴, 개인 정보 보호, 관리되는 공개 파일, 사이트맵 생성 및 명시적인 초안에서 공개로의 수명 주기를 제어합니다.9 작업
| 방법 및 경로 | 작전 | 필수 범위 | 입력 및 제어 |
|---|---|---|---|
GET/settings | 읽기 메뉴, 개인 정보 보호, 텍스트 파일 및 사이트맵 설정 | settings:read | — |
PUT/settings/menu | 메뉴 설정 업데이트 | settings:write | JSON · If-Match · ?publish=1 |
PUT/settings/privacy | 동의 및 개인정보 보호 설정 업데이트 | settings:write | JSON · If-Match · ?publish=1 |
POST/settings/text-files | 관리형 공개 텍스트 파일 생성 | settings:write | TextFileCreateRequest · If-Match |
PUT/settings/text-files/{key} | 관리되는 공개 텍스트 파일 업데이트 | settings:write | TextFileUpdateRequest · If-Match |
DELETE/settings/text-files/{key} | 관리되는 공개 텍스트 파일 삭제 | settings:write | If-Match |
POST/settings/sitemap | 관리형 사이트맵 재생성 | settings:write | If-Match |
GET/publication | 초안 및 출판 상태 읽기 | publication:read | — |
POST/publication | 검증된 최신 초안 게시 | publication:write | — |
03버전, 백업 및 미디어수정된 콘텐츠를 복원하고, 작업 공간 데이터를 내보내거나 가져오고, 예약-업로드-완결 미디어 수명 주기를 실행하세요.9 작업
| 방법 및 경로 | 작전 | 필수 범위 | 입력 및 제어 |
|---|---|---|---|
GET/versions | 복원 가능한 게시된 페이지 버전 나열 | backup:read | — |
POST/versions/{revision}/restore | 이전 버전을 복원하고 즉시 게시 | backup:write | If-Match |
GET/backup | 관리형 작업공간 백업 내보내기 | backup:read | ?sections=profile,links,… |
POST/backup/restore | 관리형 백업을 검증하고 복원한 뒤 즉시 게시 | backup:write | BackupRestoreRequest · If-Match |
GET/media | 작업공간 미디어 메타데이터 및 사용량 나열 | media:read | — |
POST/media/cleanup | 참조되지 않은 미디어 미리보기 또는 삭제 | media:write | MediaCleanupRequest |
POST/media/uploads/reserve | 직접 미디어 업로드 예약 | media:write | MediaUploadReserveRequest |
POST/media/uploads/finalize | 업로드된 객체 마무리 및 등록 | media:write | UploadTokenRequest |
DELETE/media/uploads | 예약된 미디어 업로드 중단 | media:write | UploadTokenRequest |
04도메인, 분석 및 AIDNS 활성화를 관리하고, 계획에 따른 성능 보고서를 읽고, 검증된 미리 보기 후에만 AI 변경 사항을 적용합니다.8 작업
| 방법 및 경로 | 작전 | 필수 범위 | 입력 및 제어 |
|---|---|---|---|
GET/domains | 도메인 상태 및 DNS 요구 사항 읽기 | domains:read | — |
POST/domains | 커스텀 도메인 연결 | domains:write | DomainConnectRequest |
POST/domains/refresh | 새로고침 확인 및 활성화 | domains:write | — |
DELETE/domains | 사용자 정의 도메인 연결 해제 | domains:write | — |
GET/analytics | 대시보드 분석 보고서 읽기 | analytics:read | ?days=7|30|90 |
GET/ai/allowance | AI 허용량 및 현재 사용량 읽기 | ai:read | — |
POST/ai/plan | 검증된 AI 변경 미리보기 생성 | ai:write | AiPlanRequest |
POST/ai/commit | 이전에 검증된 AI 미리보기 커밋 | ai:write | AiCommitRequest |
05Shop상거래를 연결하고, 제품 및 외관을 관리하고, 보호된 파일을 업로드한 다음 동기화된 Shop 블록을 게시하거나 게시 취소합니다.10 작업
| 방법 및 경로 | 작전 | 필수 범위 | 입력 및 제어 |
|---|---|---|---|
GET/shop | 제품, 주문, 고객 및 Shop 상태를 읽습니다. 이 작업은 Shop 비공개 데이터를 초기화하고 Stripe 상태를 새로 고칠 수 있습니다. | shop:read | ?refresh=0|1 |
POST/shop/connect | Stripe Connect 온보딩 생성 또는 계속 | shop:write | — |
POST/shop/products | Shop 제품 생성 또는 업데이트 | shop:write | ShopProductRequest |
DELETE/shop/products/{productId} | Shop 상품 삭제 | shop:write | — |
PUT/shop/appearance | 상점 전체 디자인 바꾸기 | shop:write | ShopAppearanceRequest |
POST/shop/publish | Shop과 동기화된 페이지 블록 게시 | shop:write | — |
POST/shop/unpublish | 상점 게시 취소 | shop:write | — |
POST/shop/uploads/reserve | 제품 파일 업로드 예약 | shop:write | ShopFileUploadReserveRequest |
POST/shop/uploads/finalize | 제품 파일 업로드 완료 | shop:write | ShopUploadTokenRequest |
DELETE/shop/uploads | 예약된 상품 파일 업로드 취소 | shop:write | ShopUploadTokenRequest |
06뉴스레터암호화된 SMTP 전달을 구성하고 동의한 가입자를 관리하며 전체 캠페인 수명주기를 제어합니다.9 작업
| 방법 및 경로 | 작전 | 필수 범위 | 입력 및 제어 |
|---|---|---|---|
GET/newsletter | 구독자, 캠페인 및 SMTP 상태 읽기 | newsletter:read | — |
PUT/newsletter/settings | 암호화된 SMTP 설정 업데이트 | newsletter:write | NewsletterSmtpRequest |
POST/newsletter/settings/test | 구성 테스트 보내기 | newsletter:write | EmailRecipientRequest |
POST/newsletter/subscribers | 동의한 구독자 추가 또는 업데이트 | newsletter:write | NewsletterSubscriberRequest |
DELETE/newsletter/subscribers/{subscriberId} | 구독자 제거 | newsletter:write | — |
POST/newsletter/campaigns | 캠페인 생성 또는 업데이트 | newsletter:write | NewsletterCampaignRequest |
DELETE/newsletter/campaigns/{campaignId} | 캠페인 삭제 | newsletter:write | — |
POST/newsletter/campaigns/{campaignId}/send | 캠페인 대기열 또는 예약 | newsletter:write | NewsletterSendRequest |
DELETE/newsletter/campaigns/{campaignId}/send | 대기 중인 캠페인 취소 | newsletter:write | — |
07팀 및 청구공동 작업자 및 초대를 관리하고, 구독을 검사하고, 인증된 Stripe 결제 또는 포털 세션을 엽니다.9 작업
| 방법 및 경로 | 작전 | 필수 범위 | 입력 및 제어 |
|---|---|---|---|
GET/team | 회원 및 보류 중인 초대 나열 | team:read | — |
POST/team/invitations | 이메일을 보내지 않고 워크스페이스 초대 링크 만들기 | team:write | TeamInvitationRequest |
PATCH/team/members/{memberUid} | 회원 역할 업데이트 | team:write | TeamRoleRequest |
DELETE/team/members/{memberUid} | 작업공간 구성원 제거 | team:write | — |
DELETE/team/invitations/{invitationId} | 대기 중인 초대 취소 | team:write | — |
GET/billing | 요금제 및 구독 상태 읽기 | billing:read | — |
POST/billing/checkout | Stripe 계획 체크아웃 생성 | billing:write | BillingCheckoutRequest |
POST/billing/portal | Stripe 청구 포털 세션 생성 | billing:write | BillingPortalRequest |
POST/billing/promotion-code | 프로모션 코드를 사용하고 요금제 이용 권한을 동기화 | billing:write | PromotionCodeRedeemRequest |
하나의 자동화와 하나의 환경에 대해 하나의 토큰을 생성합니다.
대시보드 > 계정 > 개인 API 토큰을 엽니다. 토큰에 소유자와 목적을 식별하는 이름을 지정하고, 전체 작업 영역, 읽기 전용 작업 영역, 링크 전용 또는 개별 리소스 범위를 선택한 다음 30일, 90일 또는 365일의 만료를 선택하거나 문서화된 순환 프로세스가 이미 있는 경우 만료 없음을 선택합니다.
본인 확인
토큰 생성은 민감한 계정 작업이며 최근 Google 또는 비밀번호 인증이 필요합니다.
가장 작은 범위를 선택하세요.
읽기 및 쓰기 범위는 각 리소스마다 별개입니다. 예를 들어 theme:read, theme:write, shop:read 및 shop:write. 쓰기 범위에는 일치하는 읽기 범위가 자동으로 포함됩니다.
비밀번호를 한 번 복사하세요.
OrbitPage는 복구 가능한 비밀이 아닌 SHA-256 해시를 저장합니다. 분실한 경우 취소하고 다른 토큰을 생성하세요.
코드 외부에 저장
환경 변수 또는 CI 비밀 저장소를 사용하십시오. URL, 저장소, 스크린샷, 브라우저 번들 또는 빌드 로그에 토큰을 넣지 마십시오.
export ORBITPAGE_TOKEN='op_pat_...'
curl --silent --show-error --include \
--header "Authorization: Bearer $ORBITPAGE_TOKEN" \
https://orbitpage.com/api/v1/links$env:ORBITPAGE_TOKEN = 'op_pat_...'
$headers = @{ Authorization = "Bearer $env:ORBITPAGE_TOKEN" }
Invoke-RestMethod -Uri 'https://orbitpage.com/api/v1/links' -Headers $headers모든 변경 전에 컬렉션을 읽고 개정판을 캡처합니다.
응답 본문에는 데이터의 순서가 지정된 블록과 현재 숫자 개정이 포함됩니다. 동일한 개정판이 X-OrbitPage-Revision에 약한 ETag로 나타납니다. If-Match에 대한 값 중 하나를 저장하십시오. 관련되지 않은 실행에서 이를 추측하거나 캐시하지 마세요.
HTTP/2 200
etag: W/"42"
x-orbitpage-revision: 42
content-type: application/json; charset=utf-8
{
"object": "list",
"data": [
{
"id": "portfolio-main",
"type": "link",
"title": "Selected work",
"description": "Recent projects and case studies",
"url": "https://example.com/work",
"isActive": true,
"status": "live",
"availability": "available",
"clickCount": 18,
"position": 0
}
],
"revision": 42,
"workspace": {
"tenantId": "tenant_...",
"pageId": "page_...",
"username": "your-page"
}
}data순서가 지정된 전체 블록 컬렉션입니다. 배열 순서는 시각적인 페이지 순서입니다.revision모든 쓰기에 사용되는 낙관적 동시성 버전입니다.workspace이 토큰에 영구적으로 바인딩된 테넌트, 페이지 및 사용자 이름입니다.ETag다음 If-Match 헤더로 직접 전달하는 가장 안전한 값입니다.기존 블록에 대한 최소 변경 사항에는 PATCH를 사용합니다.
GET에서 반환된 ID를 URL로 인코딩하고 변경해야 하는 필드만 보냅니다. OrbitPage는 패치를 기존 블록에 병합하고, ID 및 분석 필드를 보호하고, 스키마 및 계획에 대해 전체 페이지의 유효성을 검사한 다음 즉시 게시합니다.
curl --request PATCH \
--url https://orbitpage.com/api/v1/links/portfolio-main \
--header "Authorization: Bearer $ORBITPAGE_TOKEN" \
--header 'Content-Type: application/json' \
--header 'If-Match: W/"42"' \
--data '{
"title": "Book a consultation",
"url": "https://example.com/book",
"isActive": true
}'| 필드 그룹 | 예시 | 행동 |
|---|---|---|
| 콘텐츠 | title, description, url, content, textItems | 기존 블록 유형에 유효한 경우 편집 가능합니다. |
| 가시성과 타이밍 | isActive, status, availability, startDate, endDate, timezone | 일정 및 계획 규칙과 함께 검증됩니다. |
| 외관 및 매체 | icon, coverImage, backgroundColor, alignment, size | 값이 페이지 스키마와 일치하는 경우에만 허용됩니다. |
| 보호됨 | id, type, clickCount, ctaClicks, systemKey | 무시되거나 거부되었습니다. 시스템 관리 블록은 패치할 수 없습니다. |
컬렉션 자체를 변경해야 하는 경우에만 PUT을 사용하세요.
PUT은 주문된 전체 컬렉션을 대체합니다. 블록을 추가하거나, 블록을 제거하거나, 페이지 순서를 변경하는 작업입니다. 하나의 제목을 업데이트하는 지름길은 아닙니다. 블록을 생략하면 페이지에서 해당 제목이 제거됩니다.
const token = process.env.ORBITPAGE_TOKEN;
if (!token) throw new Error("ORBITPAGE_TOKEN is missing");
const endpoint = "https://orbitpage.com/api/v1/links";
const authorization = { Authorization: `Bearer ${token}` };
const read = await fetch(endpoint, { headers: authorization });
if (!read.ok) throw new Error(`GET failed: ${read.status} ${await read.text()}`);
const current = await read.json();
const revision = read.headers.get("etag") ?? String(current.revision);
// Preserve the full collection and change only the intended block.
const links = current.data.map((block) =>
block.id === "portfolio-main"
? { ...block, title: "Work and case studies" }
: block
);
const write = await fetch(endpoint, {
method: "PUT",
headers: {
...authorization,
"Content-Type": "application/json",
"If-Match": revision
},
body: JSON.stringify({ links })
});
if (!write.ok) throw new Error(`PUT failed: ${write.status} ${await write.text()}`);
console.log(await write.json());기본 n8n 노드 또는 HTTP 클라이언트, 생성된 클라이언트, 백엔드 또는 CI 실행기의 동일한 계약을 사용합니다.
OrbitPage에는 SDK가 필요하지 않습니다. JSON, Bearer 인증 및 표준 GET, POST, PUT, PATCH 및 DELETE 요청을 보낼 수 있는 모든 HTTPS 클라이언트가 호환됩니다. 아래 패턴은 통합이 명시적으로 처리해야 하는 상태 저장 부분을 다룹니다.
네이티브 n8n 노드
n8n-nodes-orbitpage를 설치하고 개인 토큰과 Base URL로 OrbitPage API 자격 증명을 만드세요. 연결 테스트는 작업공간을 안전하게 읽습니다. 이후 안내 작업은 비밀을 워크플로 JSON에 저장하지 않고 경로, 권한, 항목 연결과 리비전 인식 쓰기를 처리합니다.
초안 및 출판
프로필, 테마, 페이지 및 지원되는 설정 쓰기에는 If-Match가 필요하며 기본적으로 초안을 업데이트합니다. 적합한 즉시 게시를 위해 ?publish=1을 추가하거나 여러 가지 지연된 변경 사항을 검토하고 POST /publication을 한 번 호출하세요. PATCH와 PUT을 연결하면 즉시 게시됩니다.
직접 미디어 업로드
먼저 업로드를 예약하고 반환된 저장소 URL에 데이터를 보낸 뒤 완료하세요. OrbitPage bearer token은 orbitpage.com 에만 보내고 저장소 요청에는 반환된 메서드와 임시 헤더만 사용하세요.
AI 커밋을 검토함
Plan은 페이지를 변경하지 않고 검증된 미리보기를 반환합니다. previewToken을 저장하고 검토한 다음 해당 제안만 commit하세요. 자동화에 공개 권한이 있을 때만 commit 본문에서 publish를 설정하세요.
Install community node: n8n-nodes-orbitpage
Credential: OrbitPage API
OrbitPage API Token: op_pat_...
OrbitPage Base URL: https://orbitpage.com
Connection test: GET /api/v1/workspace
First safe workflow step:
Node: OrbitPage
Resource: Workspace & Draft
Operation: Get Workspace Overview
First revision-controlled write:
Resource: Theme
Operation: Replace Entire Theme Draft
Revision Check: Use Latest Automatically (Recommended)# 1. Reserve an upload and receive uploadUrl, slot and uploadToken
POST /api/v1/media/uploads/reserve
{ "filename": "cover.jpg", "contentType": "image/jpeg", "sizeBytes": 245760 }
# 2. Upload the bytes directly using the returned URL, method and headers
# Do not forward the OrbitPage Authorization header to the storage URL.
# 3. Register the uploaded object in the workspace
POST /api/v1/media/uploads/finalize
{ "slot": "<slot>", "uploadToken": "<uploadToken>" }# 1. Generate a validated preview without changing the page
POST /api/v1/ai/plan
{ "message": "Make the primary CTA clearer" }
# 2. Review the returned operations and previewToken
# 3. Apply the exact reviewed preview; publishing remains explicit
POST /api/v1/ai/commit
{ "previewToken": "<previewToken>", "publish": false }Base URL에는 /api/v1을 붙이지 않고 https://orbitpage.com을 사용하세요. 저장에 성공하면 /api/v1/workspace를 읽어 데이터를 변경하지 않은 채 토큰, 작업공간 연결 및 workspace:read 권한을 확인합니다.
401 오류에는 유효한 대체 토큰이 필요하고, 403 오류에는 누락된 권한이 필요합니다. 리디렉션이 반복되면 Base URL 또는 역방향 프록시를 확인하세요. 지원팀에는 상태와 JSON 코드만 공유하고 비밀은 절대 공유하지 마세요.
자동화 자격 증명을 짧고 관찰 가능한 수명 주기로 취급합니다.
작업공간은 사용자당 최대 10개의 활성 개인 토큰을 지원합니다. 계정 목록에는 각 토큰의 접두사, 범위, 생성 및 만료 날짜, 최근 사용이 표시됩니다. 마지막으로 사용된 타임스탬프는 의도적으로 최대 5분마다 한 번씩 기록됩니다.
name: Update OrbitPage
on: workflow_dispatch
jobs:
update:
runs-on: ubuntu-latest
env:
ORBITPAGE_TOKEN: ${{ secrets.ORBITPAGE_TOKEN }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
- run: node scripts/update-orbitpage.mjs- 시스템 및 환경별로 토큰 이름을 지정합니다(예: "GitHub Actions · Production").
- 대체 항목을 생성하고, 비밀 저장소를 업데이트하고, 한 번의 읽기를 테스트한 다음, 이전 토큰을 취소하여 순환합니다.
- 공개, 소유권 변경 또는 워크플로 종료가 의심되는 경우 즉시 취소합니다. 취소는 다음 요청부터 적용됩니다.
- 수명이 긴 공유 토큰을 구축하지 마세요. 별도의 자격 증명을 통해 로그, 교체 및 사고 대응을 이해할 수 있습니다.
HTTP 상태 및 기계 판독 가능 코드에 대한 분기입니다.
오류는 오류 및 코드와 함께 JSON을 사용합니다. 워크플로를 제어하기 위해 사람의 문장을 구문 분석하지 마세요. 대부분의 4xx 응답에서는 요청 또는 자격 증명을 변경해야 합니다. 개정 충돌과 속도 제한만 자동 재시도 경로에 속합니다.
INVALID_JSON · LINKS_REQUIRED · LINK_PATCH_INVALID페이지 스키마에서 거부된 요청 본문 또는 필드를 수정하세요.PERSONAL_TOKEN_*누락되거나 유효하지 않거나 만료되거나 취소된 토큰을 교체합니다. 동일한 비밀번호로 다시 시도하지 마세요.PERSONAL_TOKEN_SCOPE_DENIED · SYSTEM_LINK_PROTECTED필요한 범위를 사용하거나 중지하십시오. 현재 ID는 이 작업을 수행할 수 없습니다.LINK_NOT_FOUND컬렉션을 새로 고칩니다. 블록 ID가 제거되었거나 교체되었을 수 있습니다.revision_conflict다시 GET하여 의도한 변경 사항을 새 상태에 다시 적용하고 새 개정판으로 다시 시도하세요.REQUEST_TOO_LARGEJSON 본문을 768KiB 이하로 유지하세요.UNSUPPORTED_CONTENT_ENCODING압축되지 않은 JSON 요청 본문을 보냅니다.revision_required최신 GET에서 반환된 개정 또는 ETag를 사용하여 If-Match를 추가합니다.RATE_LIMITEDRetry-After를 기다린 다음 지수 백오프 및 지터를 사용하여 다시 시도합니다.현재 가드레일은 분당 120개의 요청과 토큰당 일일 5,000개의 요청을 허용합니다. 남용 방지 중에는 제한이 더 엄격해질 수 있습니다. 항상 Retry-After를 존중합니다.
안전한 통합은 범위가 좁고 비밀이며 개정을 인식합니다.
최소 권한
작업을 게시해야 하는 경우가 아니면 읽기 전용을 사용하십시오. 토큰 기능은 소유자의 현재 작업 영역 역할을 초과할 수 없습니다.
서버측에만 해당
신뢰할 수 있는 스크립트, 백엔드 또는 CI 실행기에서 API를 호출합니다. 브라우저 번들, 모바일 클라이언트 또는 공개 저장소는 전달자를 비밀로 유지할 수 없습니다.
블라인드 쓰기 금지
쓰기 직전에 GET 요청을 수행하고 If-Match를 사용하세요. 409 오류가 revision_conflict를 반환하면 리소스를 다시 읽고 의도한 변경을 다시 적용하세요. 그 외의 코드에서는 문서에 설명된 비즈니스 조건을 해결하세요.
결과 검증
응답 상태, 개정 및 반환된 데이터를 확인하세요. 중요한 변경 사항의 경우 게시 후 공개 페이지를 열고 토큰을 기록하지 않고 실패 시 경고합니다.
개인 토큰 자동화 REST API는 관리형 SaaS 기능입니다.
오픈 소스 저장소에는 번들 대시보드가 사용하는 Express API가 있지만 이 내부 관리자 세션 API는 같은 버전의 자동화 계약이 아닙니다. op_pat 토큰을 자체 호스팅 서버에 보내지 말고 자체 호스팅 관리자 JWT를 orbitpage.com/api/v1 로 보내지 마세요.
이 가이드를 사용하여 계정에서 생성된 OpenAPI 계약 및 개인 토큰을 사용하세요.
신뢰할 수 있는 동일한 출처에서 번들 대시보드를 사용하세요. 저장소 문서에서는 기여자와 유지관리자의 내부 경계를 설명합니다.