Skip to main content
PATCH
Changes a source’s name, configuration or status. Every field is optional and a field you leave out is unchanged, but the request must change something: an empty body returns 400. An update ingests nothing and removes nothing. What the source already produced stays retrievable, and your assistants keep answering from it, until you sync the source. That sync reads the source under its new configuration, adds what now matches and removes what no longer does. This endpoint does not start it. configuration replaces the stored configuration whole. It is not merged, so send every setting, not only the one you changed, and it is validated exactly as Create a source validates it for the source’s type. A source’s type and collection cannot be changed: a body that names source_type, collection_id or credential_ref returns 400 rather than being ignored. The files of an upload source cannot be edited either; delete the source and upload again. Setting status to paused stops the source being read: a sync of it fails and a scheduled re-sync skips it. Its documents stay and are still answered from. A run already in progress is not interrupted; cancel the job for that. active resumes it. Updating a source requires a role that can manage knowledge: Owner, Administrator, Editor or Knowledge operator. Syncing is a separate permission, so a caller may be able to save an update and not start the sync that applies it. Returns 404 for an ID that does not exist and for a source that belongs to another organization.
string
required
Source ID (a UUID).
string
New display name, 1 to 255 characters after trimming.
object
The whole new configuration for the source’s type, as Create a source documents it. At most 50 keys, and each value at most 8,192 characters. Changing it sets last_source_version to null until the next sync completes.
string
active or paused. Any other value returns 400.

Response

The updated source, in the same shape as Get a source.
string
required
Source ID (a UUID).
string
required
Collection the source ingests into.
string
required
The source_type the source was created with.
string
required
Display name.
object
required
Stored configuration, after validation. Every value is a string.
string
required
active, paused or disabled.
string | null
required
null after a configuration change, until the next ingestion run ends succeeded or partial. A rename or a pause leaves it as it was.
string | null
required
ISO 8601 timestamp in UTC of the last ingestion run that ended succeeded or partial. null if never ingested.
string
required
ISO 8601 timestamp, in UTC.
string
required
ISO 8601 timestamp, in UTC.
Last modified on October 12, 2026