Test a source
Reaches the source once, as a run would, and reports what it answered; nothing is stored. A source fetched from a URL is asked for it; an API source's connector signs in with the stored credentials. Kinds that are not fetched (files) answer 422.
- Scopes
sources:write - Rate classexpensive
/v1/sources/{id}/testReaches the source once, as a run would, and reports what it answered; nothing is stored. A source fetched from a URL is asked for it; an API source's connector signs in with the stored credentials. Kinds that are not fetched (files) answer 422.
Authorization
apiKey An API key (fo_live_… / fo_test_…) as a bearer token
In: header
Path Parameters
Source (a vendor connection) ID
^src_[0-9A-Za-z]{22}$Header Parameters
Dated API version; pinned per organisation on first use and overridable per request
Value in
- "2026-10-01"
- "2026-10-04"
The data the request acts on: test is the organisation's sandbox. An OAuth token picks it (live by default); an API key's mode is fixed, and naming the other one is refused
Value in
- "live"
- "test"
This operation cannot be previewed (Contacts the source now): 422 preview_unsupported, nothing changes
Value in
- "true"
- "explain"
Response Body
application/json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
curl -X POST "https://example.com/v1/sources/string/test"{ "object": "source_test", "ok": true, "http_status": -9007199254740991, "content_type": "string", "latency_ms": 0, "detail": "string"}Set a source's credentials PUT
Replaces the source's credentials. They are sealed under the source's ID as they arrive and never returned; the response shows only `has_credentials`.
Update a source PATCH
Changes a source's name, connector, config, schedule, status or licence basis. Send the ETag of the source you read as `If-Match`; a stale one is refused.