Skip to main content
POST
Trigger a manual connector sync
For GitHub this enqueues one backfill github_sync job per repository in the installation (the same enqueue path used at connect time); the worker dedups content at ingest, and a backfill already in flight for a repo is absorbed by the queue’s dedup, so this is safe to call repeatedly. Returns the ids of the jobs that were newly enqueued. A connector that is not active (for example one that has been disconnected) returns 409; a connector that does not exist in this organization returns 404.

Authorization

This route requires the write scope. A missing or invalid credential returns 401 authentication_error. A valid credential without the scope returns 403 permission_denied, and the problem body names the exact scope required.

Headers

These are request conventions the contract does not declare as parameters, so they do not appear in the schema tables below.

Success responses

Errors

Every error is an RFC 9457 application/problem+json body carrying a stable code, a requestId, and a suggestedAction where Exo has one. See Errors.

Notes

  • Safe to call repeatedly. The queue absorbs a backfill already in flight, and the worker deduplicates content at ingest. The response lists only the jobs that were newly enqueued.

Authorizations

X-Exo-API-Key
string
header
required

An Exo API key (exo_...) sent as the X-Exo-API-Key header.

Path Parameters

connector
integer
required

The connector id (a GitHub installation id) returned by GET /v1/connectors.

Response

Successful Response

POST /v1/connectors/{id}/sync: the jobs enqueued by a manual re-sync.

connectorId
string
required
jobIds
string[]
required
jobsEnqueued
integer
required
provider
string
required