A API Notiondesk permite que você publique suas edições do Notion assim que estiverem prontas: sincronize uma central de ajuda inteira, uma coleção ou um artigo, a partir de um script, um pipeline de CI ou sua própria ferramenta. Você também pode ativar ou desativar a sincronização agendada. Seu conteúdo permanece no Notion; uma sincronização o lê novamente e publica as alterações.
| Método | Caminho | Escopo | Faz |
|---|---|---|---|
POST | /sites/{site_id}/sync | sync | Sincroniza toda a central de ajuda. |
POST | /sites/{site_id}/categories/{category_id}/sync | sync | Sincroniza uma coleção e seus artigos. |
POST | /sites/{site_id}/articles/{article_id}/sync | sync | Sincroniza um artigo |
PATCH | /sites/{site_id}/settings/auto-sync | sync | Ativa ou desativa a sincronização agendada. |
Nunca sincronizou nada? Leia primeiro Como sincronizar sua central de ajuda com o Notion .
Sincronize toda a central de ajuda.
Notiondesk lê novamente todos os artigos e coleções do Notion e publica as alterações. A rota responde 204 No Content assim que a sincronização é enfileirada, e a sincronização é executada em segundo plano.
Apenas uma sincronização do site é executada por vez. Enquanto uma sincronização da central de ajuda estiver na fila ou em execução, seja agendada, iniciada pelo painel de controle ou pela API, outro gatilho responderá com o código 409 conflict_error. Aguarde alguns minutos e tente novamente.
Conteúdo que não foi alterado desde a última sincronização não será traduzido novamente.
Sincronizar uma coleção
Use o atributo id da lista de coleções . O atributo Notiondesk lê a coleção e cada um de seus artigos do Notion novamente e, em seguida, publica apenas os artigos editados desde a última sincronização. Artigos inalterados não são traduzidos nem cobrados novamente.
Sincronizar um artigo
Use o id do artigo da lista de artigos .
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"Como a sincronização de coleções e artigos difere da sincronização do site?
| Sincronização do site | Sincronização de coleções ou artigos | |
|---|---|---|
| Lê-se a partir do Notion | Cada artigo e coleção | Uma coleção e seus artigos, ou um artigo |
| Enquanto outra sincronização do mesmo item é executada. | Respostas 409 __PRESERVADO_45__ | Enfileira outra sincronização. Nunca responde conflict_error |
| Limitado por | Uma sincronização por vez | Sua chave tem um limite de escrita de 20 solicitações por minuto. |
Cada sincronização concluída atualiza toda a central de ajuda. Inicie uma sincronização após cada edição no Notion, e não com base em um temporizador. Para atualizações regulares, use a sincronização agendada.
Confirme uma sincronização.
Um gatilho de sincronização retorna 204 quando a sincronização é enfileirada, não quando termina. Sincronizações iniciadas pela API não aparecem no status de sincronização , que lista apenas as execuções agendadas.
Para confirmar a sincronização, leia o conteúdo publicado:
- Inicie a sincronização e anote a hora.
- Leia o artigo editado com
GET /sites/{site_id}/articles/{article_id}a cada 30 segundos.
- Pare quando
last_updatedfor posterior ao horário que você anotou, outextmostrar sua edição.
- Se
sync_failedfortrue,sync_error_codeexplica o motivo. Corrija o artigo no Notion e sincronize novamente.
Ativar ou desativar a sincronização agendada
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}'| Campo | Tipo | Notas |
|---|---|---|
auto_sync_enabled | booleano | Se Notiondesk sincroniza com o Notion de acordo com um cronograma |
A rota responde a 204 No Content. Leia o novo estado em auto_sync_enabled da central de ajuda e o cronograma em seu status de sincronização.
- Envie os valores booleanos JSON
trueoufalse. Os valores0e"false"são lidos comotrue.
- A frequência de sincronização não pode ser alterada pela API: o envio de
auto_sync_frequencyresponde com 400validation_error. Altere-a no painel de controle.
- Seu plano deve incluir sincronização agendada.
- Ativar a sincronização agendada permite que sincronizações não supervisionadas iniciem traduções cobradas enquanto a tradução automática estiver ativada.
Essa rota precisa do escopo sync, e não do write, porque ela decide quando as sincronizações não assistidas são executadas.
Erros
| Status | Quando | code |
|---|---|---|
| 400 | Sincronização automática apenas: o corpo da mensagem contém um campo desconhecido, incluindo auto_sync_frequency | validation_error |
| 403 | A chave não possui o escopo sync | insufficient_scope |
| 403 | A central de ajuda está desativada, seu plano não inclui sincronização agendada ou o criador da chave não pode sincronizar esta central de ajuda. | permission_denied |
| 404 | O centro de ajuda, a coleção ou o artigo não existem no seu espaço de trabalho. | not_found |
| 409 | Sincronização apenas do site: uma sincronização da central de ajuda já está na fila ou em execução. | conflict_error |
| 409 | Uma solicitação com o mesmo Idempotency-Key ainda está sendo processada. | request_in_progress |
conflict_error e request_in_progress são erros diferentes com o mesmo status: ramificação em code. Consulte Erros de API, limites de taxa e novas tentativas de tratamento de Notiondesk .
Perguntas frequentes
É seguro tentar novamente um gatilho de sincronização?
Sim, com um Idempotency-Key. Uma nova tentativa com a mesma chave retorna 204 com X-Idempotent-Replay: true e não enfileira nada, mesmo enquanto a primeira sincronização ainda está em execução.
Como sei quando uma sincronização terminou?
Leia o artigo ou coleção sincronizada até que last_updated seja posterior ao seu gatilho, ou até que text mostre sua edição. Não confie apenas em sync_in_progress: ele pode permanecer false por alguns segundos após o gatilho, antes que a sincronização em fila seja iniciada. Sincronizações acionadas por API não são listadas no status de sincronização.
Devo sincronizar um artigo ou toda a central de ajuda?
Sincronize um artigo após editá-lo e uma coleção após editar vários artigos nela. Sincronize toda a central de ajuda após alterações maiores, como mover artigos entre coleções.
Posso sincronizar a partir do GitHub Actions?
Sim. Armazene a chave como um segredo do repositório e chame a rota de sincronização do site em uma etapa do fluxo de trabalho. Consulte Automatizar tarefas comuns da central de ajuda com a API Notiondesk .