Interfejs API Notiondesk umożliwia publikowanie zmian w Notion w momencie ich przygotowania: synchronizuj całe centrum pomocy, jedną kolekcję lub jeden artykuł, ze skryptu, procesu ciągłej integracji (CI) lub własnego narzędzia. Możesz również włączać i wyłączać synchronizację planową. Twoja zawartość pozostaje w Notion; synchronizacja odczytuje ją ponownie i publikuje zmiany.
| Metoda | Ścieżka | Zakres | Robi |
|---|---|---|---|
POST | /sites/{site_id}/sync | sync | Synchronizuje całe centrum pomocy |
POST | /sites/{site_id}/categories/{category_id}/sync | sync | Synchronizuje jedną kolekcję i jej artykuły |
POST | /sites/{site_id}/articles/{article_id}/sync | sync | Synchronizuje jeden artykuł |
PATCH | /sites/{site_id}/settings/auto-sync | sync | Włącza lub wyłącza synchronizację planową |
Dopiero zaczynasz synchronizować? Przeczytaj najpierw , jak zsynchronizować Centrum pomocy z Notion .
Synchronizuj całe centrum pomocy
Notiondesk ponownie odczytuje każdy artykuł i kolekcję z Notion i publikuje zmiany. Trasa odpowiada na 204 No Content, gdy tylko synchronizacja zostanie umieszczona w kolejce, a synchronizacja działa w tle.
Synchronizacja tylko jednej witryny jest wykonywana w danym momencie. Podczas gdy synchronizacja centrum pomocy jest w kolejce lub jest w trakcie, niezależnie od tego, czy została zaplanowana, uruchomiona z pulpitu nawigacyjnego, czy za pośrednictwem API, inny wyzwalacz odpowiada na błąd 409 conflict_error. Odczekaj kilka minut i wyzwól ponownie.
Treści, które nie uległy zmianie od ostatniej synchronizacji, nie są ponownie tłumaczone.
Synchronizuj jedną kolekcję
Użyj id kolekcji z listy kolekcji . Notiondesk odczytuje kolekcję i wszystkie jej artykuły z Notion ponownie, a następnie publikuje tylko artykuły edytowane od ostatniej synchronizacji. Niezmienione artykuły nie są ponownie tłumaczone ani rozliczane.
Synchronizuj jeden artykuł
Użyj id artykułu z listy artykułów .
curl -i -X POST "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/sync" \
-H "Authorization: Bearer $NOTIONDESK_API_KEY" \
-H "nd-version: 2026-10-16" \
-H "Idempotency-Key: 9b2e4c1a-sync-after-notion-edit"curl -i -X POST "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/categories/1761493027/sync" \
-H "Authorization: Bearer $NOTIONDESK_API_KEY" \
-H "nd-version: 2026-10-16" \
-H "Idempotency-Key: 2c8e5b7d-sync-billing"curl -i -X POST "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/articles/1761580412/sync" \
-H "Authorization: Bearer $NOTIONDESK_API_KEY" \
-H "nd-version: 2026-10-16" \
-H "Idempotency-Key: 4d7a0f3e-sync-getting-started"Czym synchronizacja kolekcji i artykułów różni się od synchronizacji witryny
| Synchronizacja witryny | Synchronizacja kolekcji lub artykułów | |
|---|---|---|
| Czyta z Notion | Każdy artykuł i kolekcja | Jedna kolekcja i jej artykuły, lub jeden artykuł |
| Podczas gdy inna synchronizacja tego samego elementu jest wykonywana | Odpowiedzi 409 conflict_error | Kolejkuje kolejną synchronizację. Nigdy nie odpowiada na conflict_error |
| Ograniczone przez | Jedna synchronizacja na raz | Budżet zapisu Twojego klucza wynosi 20 żądań na minutę |
Każda ukończona synchronizacja odświeża całe centrum pomocy. Synchronizuj raz po każdej edycji w Notion, a nie według timera. W przypadku regularnych aktualizacji użyj synchronizacji zaplanowanej.
Potwierdź synchronizację
Wyzwalacz synchronizacji odpowiada na 204, gdy synchronizacja jest w kolejce, a nie po jej zakończeniu. Synchronizacje rozpoczęte za pośrednictwem interfejsu API nie są wyświetlane w statusie synchronizacji , który zawiera jedynie listę zaplanowanych uruchomień.
Aby potwierdzić synchronizację, przeczytaj publikowaną treść:
- Uruchom synchronizację i zanotuj czas.
- Przeczytaj edytowany artykuł z
GET /sites/{site_id}/articles/{article_id}co 30 sekund.
- Zatrzymaj się, gdy
last_updatedjest późniejszy niż zanotowany czas lub gdytextpokazuje Twoją edycję.
- Jeśli
sync_failedtotrue,sync_error_codewyjaśnia przyczynę. Napraw artykuł w Notion i zsynchronizuj ponownie.
Włącz lub wyłącz synchronizację planową
curl -i -X PATCH "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/settings/auto-sync" \
-H "Authorization: Bearer $NOTIONDESK_API_KEY" \
-H "nd-version: 2026-10-16" \
-H "Content-Type: application/json" \
-d '{"auto_sync_enabled": true}'| Pole | Typ | Notatki |
|---|---|---|
auto_sync_enabled | wartość logiczna | Czy Notiondesk synchronizuje się z Notion zgodnie z harmonogramem |
Trasa odpowiada 204 No Content. Przeczytaj nowy stan w auto_sync_enabled w Centrum pomocy oraz harmonogram w jego statusie synchronizacji.
- Wyślij wartości logiczne JSON
truelubfalse. Wartości0i"false"są odczytywane jakotrue.
- Częstotliwości synchronizacji nie można zmienić za pomocą interfejsu API: wysyłanie odpowiedzi
auto_sync_frequency400validation_error. Zmień ją w panelu.
- Twój plan musi obejmować zaplanowaną synchronizację.
- Włączenie synchronizacji zaplanowanej umożliwia nienadzorowanym synchronizacjom rozpoczęcie tłumaczenia płatnego, gdy włączone jest tłumaczenie automatyczne.
Ta trasa wymaga zakresu sync, a nie write, ponieważ decyduje on, kiedy uruchamiane są nienadzorowane synchronizacje.
Błędy
| Status | Gdy | code |
|---|---|---|
| 400 | Tylko automatyczna synchronizacja: treść zawiera nieznane pole, w tym auto_sync_frequency | validation_error |
| 403 | Klucz nie ma zakresu sync | insufficient_scope |
| 403 | Centrum pomocy jest wyłączone, Twój plan nie obejmuje zaplanowanej synchronizacji lub twórca klucza nie może zsynchronizować tego centrum pomocy | permission_denied |
| 404 | Centrum pomocy, kolekcja lub artykuł nie znajdują się w Twoim obszarze roboczym | not_found |
| 409 | Tylko synchronizacja witryny: synchronizacja centrum pomocy jest już w kolejce lub jest uruchomiona | conflict_error |
| 409 | Żądanie z tym samym Idempotency-Key jest nadal przetwarzane | request_in_progress |
conflict_error i request_in_progress to różne błędy o tym samym statusie: rozgałęzienie na code. Zobacz Obsługa błędów API Notiondesk, limitów szybkości i ponownych prób .
Często zadawane pytania
Czy ponowna próba uruchomienia synchronizacji jest bezpieczna?
Tak, z Idempotency-Key. Ponowna próba z tym samym kluczem daje odpowiedź 204 z X-Idempotent-Replay: true i nie umieszcza niczego w kolejce, nawet gdy pierwsza synchronizacja jest nadal aktywna.
Skąd będę wiedzieć, że synchronizacja się zakończyła?
Odczytaj zsynchronizowany artykuł lub kolekcję, dopóki stan last_updated nie będzie późniejszy niż stan wyzwalacza lub dopóki stan text nie pokaże Twojej edycji. Nie polegaj wyłącznie na stanie sync_in_progress: może on pozostać w stanie false przez kilka sekund po uruchomieniu wyzwalacza, zanim rozpocznie się synchronizacja w kolejce. Synchronizacje wyzwalane przez API nie są wyświetlane w statusie synchronizacji.
Czy powinienem synchronizować jeden artykuł czy całe centrum pomocy?
Synchronizuj jeden artykuł po edycji tego artykułu i jedną kolekcję po edycji kilku artykułów w niej zawartych. Synchronizuj całe centrum pomocy po wprowadzeniu większych zmian, takich jak przenoszenie artykułów między kolekcjami.
Czy mogę synchronizować z GitHub Actions?
Tak. Przechowuj klucz jako sekret repozytorium i wywołaj ścieżkę synchronizacji witryny w kroku przepływu pracy. Zobacz Automatyzacja typowych zadań Centrum pomocy za pomocą interfejsu API Notiondesk .