Upsert enabled flag and/or config for a single source. Cascades to every signal type the caller owns.
config blob for one data source. If enabled is included, the change cascades to every signal_type_sources row the caller owns — disabling a source here disables it across every one of your signal types in one shot. Omitting enabled leaves existing per-signal-type toggles alone.
The shape of config depends on the source; use List available data sources to fetch each source’s config_schema first.
{ source_id, enabled: false } flips the global toggle without touching any custom config. Sending just { source_id, config: {...} } updates the config without re-toggling.The cascade is the whole point. When a user says “stop scanning Reddit for me,” the right call is this endpoint with enabled: false — not a loop over every signal type. One call, 100% propagated.Validate source_id first. Pass a source not in listSourcesV1 and you get 400 invalid_request. The error message lists valid IDs.Related: List source configs (partner API) to read current state.Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Source identifier (e.g. reddit, linkedin_posts). Must match one returned by listSourcesV1.
Toggle whether signals from this source are collected. Cascades down to every signal-type-source row the caller owns.
Per-source config blob. Shape depends on the source — see config_schema in listSourcesV1.
Upserted config row.
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$