API REST automatyzacji

Zautomatyzuj OrbitPage bez udostępniania sesji panelu kontrolnego.

Twórz tokeny o ograniczonym zakresie i zarządzaj pulpitem nawigacyjnym OrbitPage od początku do końca za pomocą skryptów, n8n, backendów lub CI.

Ostatnia wersja: 4 sierpnia 2026

Zarządzaj OrbitPage za pomocą tokenów osobistych: edytuj i publikuj strony oraz używaj mediów, domen, analityki, AI, Shop, newsletterów i rozliczeń.

API v1https://orbitpage.com/api/v1HTTPS · JSON · UTF-8
  1. 01Token osobisty
  2. 02Kontrola wersji
  3. 03Sprawdź i opublikuj
Granice API

Trzy granice uprawnień obejmują trzy różne zadania.

Ta strona dokumentuje wersjonowaną granicę REST. Token OrbitPage nie jest kluczem dostawcy OpenAI i nigdy nie uwierzytelnia punktów końcowych prywatnego pulpitu nawigacyjnego.

PowierzchniaPoświadczenieCel i wsparcie
API REST automatyzacjiop_pat_...Obsługiwane zewnętrzne API dla skryptów, n8n, backendów serwerów i CI. Zarządza obszarem roboczym powiązanym z tokenem poprzez /api/v1.
OrbitPage AIop_pat_... + ai:read/ai:writePrzepływ planu/zatwierdzenia publicznego przygotowuje i stosuje zatwierdzone propozycje sztucznej inteligencji. Wszelkie dane uwierzytelniające dostawcy OpenAI pozostają odrębną kwestią po stronie serwera i nigdy nie są tokenem nośnika OrbitPage.
Interfejsy API panelu kontrolnegoSesja Firebase w SaaS; sesja administratora w OSSPrywatne trasy z przeglądarki do aplikacji. Nie stanowią one stabilnej umowy na integrację zewnętrzną i nie mogą otrzymywać osobistych tokenów API.
Umowa

Wersjonowane zasoby obejmują pulpit nawigacyjny; punkty końcowe łącza pokazują pętlę bezpiecznej aktualizacji.

Każde żądanie jest powiązane z obszarem roboczym wybranym podczas tworzenia tokena. Token nie może wybrać innego dzierżawcy w adresie URL lub treści żądania, a bieżące uprawnienia obszaru roboczego są sprawdzane ponownie przy każdym wywołaniu.

Kontrakt wykorzystuje standardowe operacje HTTPS JSON — GET, POST, PUT, PATCH i DELETE — i obsługuje funkcję curl, węzeł żądań HTTP n8n oraz wygenerowanych klientów OpenAPI.

01
GET/api/v1/links

Przeczytaj każdy blok strony

Zwraca uporządkowaną kolekcję, tożsamość obszaru roboczego i bieżącą wersję.

Zakres: links:read
02
PATCH/api/v1/links/{linkId}

Zmień jeden istniejący blok

Łączy edytowalne pola, sprawdza poprawność całej strony i publikuje nową wersję.

Zakres: links:write
03
PUT/api/v1/links

Zastąp pełną kolekcję

Użyj tego, aby dodać, usunąć lub zmienić kolejność bloków po przeczytaniu i zachowaniu bieżącej kolekcji.

Zakres: links:write
Powierzchnia deski rozdzielczejŚcieżki APIZakresy
Przestrzeń robocza i pełna wersja robocza/workspace · /draftworkspace:read
Profil, motyw i podstrony/profile · /theme · /pagesprofile:* · theme:* · pages:*
Ustawienia ogólne, prywatności i menu/settings/*settings:*
Publikacja, wersje i kopia zapasowa/publication · /versions · /backuppublication:* · backup:*
Domeny multimedialne i niestandardowe/media/* · /domains/*media:* · domains:*
Analizy i przegląd zmian AI/analytics · /ai/*analytics:read · ai:*
Sklep i newsletter/shop/* · /newsletter/*shop:* · newsletter:*
Zespół i rozliczenia/team/* · /billing/*team:* · billing:*
Otwórz specyfikację OpenAPI 3.1
API v1 · 65 operacje

Każda obsługiwana operacja na pulpicie nawigacyjnym, pogrupowana według kontrolowanej przez nią powierzchni.

Poniższe ścieżki odnoszą się do https://orbitpage.com/api/v1. Metoda, ścieżka i zakres to stabilny kontrakt integracyjny; schematy żądań, formaty, wartości wyliczeniowe i modele odpowiedzi znajdują się w połączonym dokumencie OpenAPI 3.1. Nieznane trasy zwracają 404, a nieobsługiwane metody nigdy nie są konwertowane w trybie dyskretnym.

01
Przestrzeń robocza, zawartość i wyglądSprawdź obszar roboczy powiązany z tokenem i zarządzaj jego pełną wersją roboczą, profilem, blokami, motywem i podstronami.
11 operacje
Metoda i ścieżkaOperacjaWymagany zakresWejście i sterowanie
GET/workspacePrzeczytaj obszar roboczy, plan, dostęp, wykorzystanie i wersjęworkspace:read
GET/draftPrzeczytaj całą wersję roboczą edytowalnej stronyworkspace:read
GET/linksLista bloków strony i bieżącej wersjilinks:read
PUT/linksZastąp całą uporządkowaną kolekcję blokówlinks:writeLinksReplaceRequest · If-Match
PATCH/links/{linkId}Aktualizuj pola edytowalne w jednym blokulinks:writeLinkPatch · If-Match
GET/profileOdczytaj tożsamość profilu i metadaneprofile:read
PATCH/profileZaktualizuj pola profiluprofile:writeJSON · If-Match · ?publish=1
GET/themePrzeczytaj aktywny motyw roboczytheme:read
PUT/themeZastąp motyw roboczytheme:writeJSON · If-Match · ?publish=1
GET/pagesLista skonfigurowanych podstronpages:read
PUT/pagesZastąp skonfigurowane podstronypages:writearray | { pages } · If-Match · ?publish=1
02
Ustawienia i publikacjaKontroluj menu, prywatność, zarządzane pliki publiczne, generowanie map witryn i jawny cykl życia wersji roboczej do publicznej.
9 operacje
Metoda i ścieżkaOperacjaWymagany zakresWejście i sterowanie
GET/settingsPrzeczytaj ustawienia menu, prywatności, pliku tekstowego i mapy witrynysettings:read
PUT/settings/menuAktualizuj ustawienia menusettings:writeJSON · If-Match · ?publish=1
PUT/settings/privacyZaktualizuj ustawienia zgody i prywatnościsettings:writeJSON · If-Match · ?publish=1
POST/settings/text-filesUtwórz zarządzany publiczny plik tekstowysettings:writeTextFileCreateRequest · If-Match
PUT/settings/text-files/{key}Zaktualizuj zarządzany publiczny plik tekstowysettings:writeTextFileUpdateRequest · If-Match
DELETE/settings/text-files/{key}Usuń zarządzany publiczny plik tekstowysettings:writeIf-Match
POST/settings/sitemapWygeneruj ponownie zarządzaną mapę witrynysettings:writeIf-Match
GET/publicationPrzeczytaj wersję roboczą i status publikacjipublication:read
POST/publicationOpublikuj najnowszą zatwierdzoną wersję robocząpublication:write
03
Wersje, kopie zapasowe i nośnikiPrzywróć poprawioną zawartość, wyeksportuj lub zaimportuj dane obszaru roboczego i uruchom cykl życia multimediów: rezerwuj, przesyłaj, finalizuj.
9 operacje
Metoda i ścieżkaOperacjaWymagany zakresWejście i sterowanie
GET/versionsWyświetl listę opublikowanych wersji stron, które można przywrócićbackup:read
POST/versions/{revision}/restorePrzywróć i natychmiast opublikuj wersję historycznąbackup:writeIf-Match
GET/backupEksportuj kopię zapasową zarządzanego obszaru roboczegobackup:read?sections=profile,links,…
POST/backup/restoreSprawdź, przywróć i natychmiast opublikuj zarządzaną kopię zapasowąbackup:writeBackupRestoreRequest · If-Match
GET/mediaWyświetl metadane multimediów obszaru roboczego i ich wykorzystaniemedia:read
POST/media/cleanupWyświetl podgląd lub usuń multimedia, do których nie ma odniesieniamedia:writeMediaCleanupRequest
POST/media/uploads/reserveZarezerwuj bezpośrednie przesyłanie multimediówmedia:writeMediaUploadReserveRequest
POST/media/uploads/finalizeSfinalizuj i zarejestruj przesłany obiektmedia:writeUploadTokenRequest
DELETE/media/uploadsPrzerwij przesyłanie zarezerwowanych multimediówmedia:writeUploadTokenRequest
04
Domeny, analityka i sztuczna inteligencjaZarządzaj aktywacją DNS, czytaj raporty wydajności powiązane z planem i stosuj zmiany AI dopiero po zweryfikowaniu podglądu.
8 operacje
Metoda i ścieżkaOperacjaWymagany zakresWejście i sterowanie
GET/domainsOdczytaj status domeny i wymagania DNSdomains:read
POST/domainsPodłącz domenę niestandardowądomains:writeDomainConnectRequest
POST/domains/refreshOdśwież weryfikację i aktywacjędomains:write
DELETE/domainsOdłącz domenę niestandardowądomains:write
GET/analyticsPrzeczytaj raport analityczny panelu kontrolnegoanalytics:read?days=7|30|90
GET/ai/allowanceOdczytaj limit AI i bieżące wykorzystanieai:read
POST/ai/planWygeneruj zatwierdzony podgląd zmian AIai:writeAiPlanRequest
POST/ai/commitZatwierdź wcześniej zatwierdzony podgląd AIai:writeAiCommitRequest
05
ShopPołącz handel, zarządzaj produktami i wyglądem, przesyłaj chronione pliki, a następnie publikuj lub cofaj publikację zsynchronizowanego bloku sklepu.
10 operacje
Metoda i ścieżkaOperacjaWymagany zakresWejście i sterowanie
GET/shopOdczytaj produkty, zamówienia, klientów i stan Shop; operacja może zainicjować prywatne dane sklepu i odświeżyć stan Stripeshop:read?refresh=0|1
POST/shop/connectUtwórz lub kontynuuj wdrażanie Stripe Connectshop:write
POST/shop/productsUtwórz lub zaktualizuj produkt w Sklepieshop:writeShopProductRequest
DELETE/shop/products/{productId}Usuń produkt ze Sklepushop:write
PUT/shop/appearanceZastąp cały wygląd sklepushop:writeShopAppearanceRequest
POST/shop/publishPublikuj sklep i jego zsynchronizowany blok stronyshop:write
POST/shop/unpublishCofnij publikację sklepushop:write
POST/shop/uploads/reserveZarezerwuj przesyłanie pliku produktushop:writeShopFileUploadReserveRequest
POST/shop/uploads/finalizeZakończ przesyłanie pliku produktushop:writeShopUploadTokenRequest
DELETE/shop/uploadsAnuluj zarezerwowane przesyłanie pliku produktushop:writeShopUploadTokenRequest
06
BiuletynSkonfiguruj szyfrowane dostarczanie SMTP, zarządzaj subskrybentami, którzy wyrazili zgodę i kontroluj cały cykl życia kampanii.
9 operacje
Metoda i ścieżkaOperacjaWymagany zakresWejście i sterowanie
GET/newsletterOdczyt subskrybentów, kampanii i stanu SMTPnewsletter:read
PUT/newsletter/settingsZaktualizuj zaszyfrowane ustawienia SMTPnewsletter:writeNewsletterSmtpRequest
POST/newsletter/settings/testWyślij test konfiguracjinewsletter:writeEmailRecipientRequest
POST/newsletter/subscribersDodaj lub zaktualizuj zaakceptowanego subskrybentanewsletter:writeNewsletterSubscriberRequest
DELETE/newsletter/subscribers/{subscriberId}Usuń abonentanewsletter:write
POST/newsletter/campaignsUtwórz lub zaktualizuj kampanięnewsletter:writeNewsletterCampaignRequest
DELETE/newsletter/campaigns/{campaignId}Usuń kampanięnewsletter:write
POST/newsletter/campaigns/{campaignId}/sendUstaw w kolejce lub zaplanuj kampanięnewsletter:writeNewsletterSendRequest
DELETE/newsletter/campaigns/{campaignId}/sendAnuluj kampanię w kolejcenewsletter:write
07
Zespół i rozliczeniaZarządzaj współpracownikami i zaproszeniami, sprawdzaj subskrypcje i otwieraj uwierzytelnione sesje kasowe lub portalowe Stripe.
9 operacje
Metoda i ścieżkaOperacjaWymagany zakresWejście i sterowanie
GET/teamLista członków i oczekujących zaproszeńteam:read
POST/team/invitationsUtwórz link z zaproszeniem do obszaru roboczego bez wysyłania wiadomości e-mailteam:writeTeamInvitationRequest
PATCH/team/members/{memberUid}Zaktualizuj rolę członkateam:writeTeamRoleRequest
DELETE/team/members/{memberUid}Usuń członka obszaru roboczegoteam:write
DELETE/team/invitations/{invitationId}Odwołaj oczekujące zaproszenieteam:write
GET/billingPrzeczytaj stan planu i subskrypcjibilling:read
POST/billing/checkoutUtwórz kasę z planem Stripebilling:writeBillingCheckoutRequest
POST/billing/portalUtwórz sesję portalu rozliczeniowego Stripebilling:writeBillingPortalRequest
POST/billing/promotion-codeWykorzystaj kod promocyjny i zsynchronizuj uprawnienia wynikające z planubilling:writePromotionCodeRedeemRequest
Otwórz pełną umowę OpenAPI 3.1
Uwierzytelnianie

Utwórz jeden token dla jednej automatyzacji i jednego środowiska.

Otwórz Panel > Konto > Tokeny Personal API. Nadaj tokenowi nazwę identyfikującą jego właściciela i cel, wybierz pełny obszar roboczy, obszar roboczy tylko do odczytu, tylko łącza lub zakresy poszczególnych zasobów, a następnie wybierz okres wygaśnięcia 30, 90 lub 365 dni — lub brak wygaśnięcia, jeśli istnieje już udokumentowany proces rotacji.

01

Potwierdź swoją tożsamość

Utworzenie tokena to poufna czynność na koncie i wymaga niedawnego uwierzytelnienia Google lub hasła.

02

Wybierz najmniejszy zakres

Zakresy odczytu i zapisu są oddzielne dla każdego zasobu — na przykład theme:read, theme:write, shop:read i shop:write. Zakres zapisu automatycznie uwzględnia pasujący zakres odczytu.

03

Skopiuj sekret jeden raz

OrbitPage przechowuje skrót SHA-256, a nie możliwy do odzyskania sekret. Jeśli zostanie utracony, unieważnij go i utwórz kolejny token.

04

Przechowuj go poza kodem

Użyj zmiennej środowiskowej lub tajnego magazynu CI. Nigdy nie umieszczaj tokena w adresie URL, repozytorium, zrzucie ekranu, pakiecie przeglądarki lub dzienniku kompilacji.

macOS / Linuxbash
export ORBITPAGE_TOKEN='op_pat_...'

curl --silent --show-error --include \
  --header "Authorization: Bearer $ORBITPAGE_TOKEN" \
  https://orbitpage.com/api/v1/links
WindowsPowerShell
$env:ORBITPAGE_TOKEN = 'op_pat_...'
$headers = @{ Authorization = "Bearer $env:ORBITPAGE_TOKEN" }

Invoke-RestMethod -Uri 'https://orbitpage.com/api/v1/links' -Headers $headers
GET /links

Przeczytaj kolekcję i zapisz jej wersję przed każdą zmianą.

Treść odpowiedzi zawiera uporządkowane bloki danych i bieżącą wersję liczbową. Ta sama wersja pojawia się w X-OrbitPage-Revision i jako słaby ETag. Zapisz dowolną wartość dla If-Match; nie zgaduj ani nie buforuj go w niepowiązanych uruchomieniach.

Przykładowa odpowiedźHTTP + JSON
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"
  }
}
dataKompletna uporządkowana kolekcja bloków. Kolejność tablic to wizualna kolejność stron.
revisionWersja optymistycznie-współbieżna używana przy każdym zapisie.
workspaceNajemca, strona i nazwa użytkownika na stałe powiązane z tym tokenem.
ETagNajbezpieczniejsza wartość do przekazania bezpośrednio jako następny nagłówek If-Match.
PATCH /links/{linkId}

Użyj PATCH dla najmniejszej zmiany w istniejącym bloku.

URL-koduj identyfikator zwrócony przez GET i wysyłaj tylko te pola, które powinny się zmienić. OrbitPage łączy łatkę z istniejącym blokiem, chroni pola tożsamości i analityki, sprawdza poprawność całej strony pod kątem schematu i planu, a następnie natychmiast publikuje.

Zaktualizuj jeden blokcurl
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
  }'
Grupa pólPrzykładyZachowanie
Zawartośćtitle, description, url, content, textItemsMożliwość edycji, jeśli dotyczy istniejącego typu bloku.
Widoczność i czasisActive, status, availability, startDate, endDate, timezoneZatwierdzone razem z harmonogramem i zasadami planu.
Wygląd i multimediaicon, coverImage, backgroundColor, alignment, sizeAkceptowane tylko wtedy, gdy wartości odpowiadają schematowi strony.
Chronioneid, type, clickCount, ctaClicks, systemKeyZignorowano lub odrzucono. Bloki zarządzane przez system nie mogą być łatane.
PUT /links

Używaj PUT tylko wtedy, gdy sama kolekcja musi się zmienić.

PUT zastępuje kompletną uporządkowaną kolekcję. Jest to operacja dodania bloku, usunięcia bloku lub zmiany kolejności stron. Nie jest to skrót do aktualizacji jednego tytułu: pominięcie bloku powoduje jego usunięcie ze strony.

01GETOdczytaj każdy blok i ETag
02Modyfikuj lokalnieZachowaj identyfikatory i nietknięte bloki
03PUT + If-MatchSprawdź i opublikuj
Bezpieczny skrypt do odczytu, modyfikacji i zapisuNode.js 22+
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());
curl · n8n · OpenAPI

Użyj natywnego węzła n8n lub tego samego kontraktu z klienta HTTP, wygenerowanego klienta, backendu lub modułu CI.

OrbitPage nie wymaga SDK: kompatybilny jest każdy klient HTTPS, który może wysyłać JSON, uwierzytelnianie Bearer i standardowe żądania GET, POST, PUT, PATCH i DELETE. Poniższe wzorce obejmują części stanowe, które integracja musi jawnie obsługiwać.

01

Natywny węzeł n8n

Zainstaluj n8n-nodes-orbitpage i utwórz poświadczenie OrbitPage API z osobistym tokenem oraz Base URL. Test połączenia bezpiecznie odczytuje obszar roboczy; następnie akcje z przewodnikiem obsługują ścieżki, uprawnienia, powiązania elementów i zapisy uwzględniające wersje, bez umieszczania sekretu w JSON-ie workflow.

02

Projekt i publikacja

Zapisy w profilach, motywach, stronach i obsługiwanych ustawieniach wymagają domyślnie funkcji If-Match i aktualizacji wersji roboczej. Dodaj ?publish=1, aby uzyskać kwalifikującą się publikację natychmiastową, lub przejrzyj kilka odroczonych zmian i jednokrotnie wywołaj funkcję POST /publication. Linki PATCH i PUT zostaną natychmiast opublikowane.

03

Bezpośrednie przesyłanie multimediów

Najpierw zarezerwuj, prześlij bajty do zwróconego adresu URL magazynu, a następnie sfinalizuj. Wyślij token nośnika OrbitPage tylko do orbitpage.com; używaj tylko metody i tymczasowych nagłówków zwróconych dla żądania przechowywania.

04

Sprawdzono zatwierdzenie AI

Plan zwraca zweryfikowany podgląd bez zmiany strony. Zapisz i sprawdź previewToken, a następnie zatwierdź dokładnie tę propozycję. Ustaw publish w treści zatwierdzenia tylko wtedy, gdy automatyzacja może opublikować wynik.

Natywny szybki start n8nn8n
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)
Przesyłanie multimediów w trzech krokachHTTP + JSON
# 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>" }
Najpierw przejrzyj przepływ AIHTTP + JSON
# 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 }
Test uwierzytelniający

Użyj Base URL https://orbitpage.com, bez /api/v1. Prawidłowy zapis odczytuje /api/v1/workspace i potwierdza token, powiązanie obszaru roboczego oraz uprawnienie workspace:read bez zmiany danych.

Rozwiązywanie problemów z n8n

Błąd 401 wymaga prawidłowego tokena zastępczego; błąd 403 — brakującego uprawnienia. Przy powtarzających się przekierowaniach sprawdź Base URL lub odwrotne proxy. Przekaż wsparciu status i kod JSON, nigdy sekret.

Przeczytaj kompletny przewodnik po natywnych węzłach n8n

Operacje

Traktuj poświadczenia automatyzacji jako krótkie, obserwowalne cykle życia.

Obszar roboczy obsługuje do dziesięciu aktywnych tokenów osobistych na użytkownika. Lista Konta pokazuje prefiks, zakresy, daty utworzenia i wygaśnięcia każdego tokenu oraz ostatnie użycie. Ostatnio używane znaczniki czasu są celowo zapisywane najwyżej raz na pięć minut.

GitHub ActionsYAML
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
  • Nazwij tokeny według systemu i środowiska — na przykład „Akcje GitHub · produkcja”.
  • Zmień, tworząc zamiennik, aktualizując tajny magazyn, testując jeden odczyt, a następnie unieważniając stary token.
  • Unieważnij natychmiast po podejrzeniu ujawnienia, zmiany właściciela lub wycofania przepływu pracy. Rezygnacja staje się skuteczna od następnego żądania.
  • Nie buduj długotrwałego tokena współdzielonego. Oddzielne poświadczenia sprawiają, że dzienniki, rotacja i reakcja na incydenty są zrozumiałe.
Obsługa awarii

Oddział dotyczący statusu HTTP i kodu czytelnego maszynowo.

Błędy używają JSON z błędem i kodem. Nie analizuj ludzkiego zdania, aby kontrolować przepływ pracy. Większość odpowiedzi 4xx wymaga zmiany żądania lub danych uwierzytelniających; w ścieżce automatycznego ponawiania prób znajdują się tylko konflikty wersji i limity szybkości.

400INVALID_JSON · LINKS_REQUIRED · LINK_PATCH_INVALIDNapraw treść żądania lub pola odrzucone przez schemat strony.
401PERSONAL_TOKEN_*Zastąp brakujący, nieprawidłowy, wygasły lub unieważniony token. Nie próbuj ponownie z tym samym kluczem tajnym.
403PERSONAL_TOKEN_SCOPE_DENIED · SYSTEM_LINK_PROTECTEDUżyj wymaganego zakresu lub zatrzymaj: bieżąca tożsamość nie może wykonać tej operacji.
404LINK_NOT_FOUNDOdśwież kolekcję; identyfikator bloku mógł zostać usunięty lub zastąpiony.
409revision_conflictGET ponownie, zastosuj ponownie zamierzoną zmianę do nowego stanu i spróbuj ponownie z nową wersją.
413REQUEST_TOO_LARGETreść JSON powinna mieć wielkość 768 KiB lub mniejszą.
415UNSUPPORTED_CONTENT_ENCODINGWyślij nieskompresowaną treść żądania JSON.
428revision_requiredDodaj If-Match, używając wersji lub ETag zwróconego przez najnowszy GET.
429RATE_LIMITEDPoczekaj zgodnie z Retry-After, a następnie ponów próbę z wykładniczym opóźnieniem i losowym przesunięciem.

Obecne limity pozwalają na 120 żądań na minutę i 5000 dziennie na token. Ochrona przed nadużyciami może je zaostrzyć; zawsze respektuj Retry-After.

Bezpieczeństwo

Bezpieczna integracja jest wąska, tajna i uwzględnia możliwość rewizji.

01

Najmniejsze uprawnienia

Użyj tylko do odczytu, chyba że zadanie musi zostać opublikowane. Możliwości tokenu nigdy nie mogą przekraczać bieżącej roli właściciela w obszarze roboczym.

02

Tylko po stronie serwera

Wywołaj API z zaufanego skryptu, backendu lub modułu CI. Pakiet przeglądarki, klient mobilny lub repozytorium publiczne nie mogą zachować tajemnicy na okaziciela.

03

Brak zapisów w ciemno

Bezpośrednio przed zapisem wykonaj żądanie GET i użyj If-Match. Jeśli błąd 409 zwraca revision_conflict, ponownie odczytaj zasób i zastosuj zamierzoną zmianę; w przypadku każdego innego kodu rozwiąż udokumentowany problem biznesowy.

04

Zweryfikuj wyniki

Sprawdź status odpowiedzi, wersję i zwrócone dane. W przypadku ważnych zmian otwórz stronę publiczną po publikacji i powiadomij o niepowodzeniu bez logowania tokena.

Granica edycji

Interfejs API REST automatyzacji tokenu osobistego to zarządzana funkcja SaaS.

Repozytorium typu open source zawiera interfejs API Express używany przez dołączony do niego pulpit nawigacyjny, ale ten wewnętrzny interfejs API sesji administratora nie jest tą samą umową na automatyzację z wersjami. Nie wysyłaj tokena op_pat do serwera hostowanego samodzielnie i nie wysyłaj tokenu JWT administratora hostowanego samodzielnie do orbitpage.com/api/v1.

Zarządzany obszar roboczy

Skorzystaj z tego przewodnika, umowy OpenAPI i tokenów osobistych utworzonych na Koncie.

Instancja hostowana samodzielnie

Użyj dołączonego pulpitu nawigacyjnego na tym samym zaufanym źródle. Dokumentacja repozytorium wyjaśnia wewnętrzne granice dla autorów i opiekunów.

Przeczytaj granicę API typu open source
Automation REST API and personal tokens | OrbitPage