Object sources
The systems that own the product data records are pulled from, with the mapping onto object types and the runs that loaded or refreshed the catalog from them.
List object sources
Beta — this operation may change on 30 days notice. See versioning.
The upstream systems this workspace pulls records from. Secrets inside src_config come back masked.
Requires the module-objects license feature. Without it the request is refused with 403 license_required — see plans and modules.
query Parameters
cursor^[A-Za-z0-9_-]+$limitoffsetsort^-?[a-z0-9_]+$src_activesrc_idsrc_namesrc_providerHeaders
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
List object sources › Responses
Success
has_moreWhether more rows exist past this page.
next_cursorPass back as cursor for the next page. Null on the last page.
Create an object source
Beta — this operation may change on 30 days notice. See versioning.
Registers a connection to the system that owns the product data. src_config carries baseUrl, auth (basic or OAuth client credentials), context, workspace, the roots to walk, classifications to mirror, the types mapping onto object types, an optional eventQueue and a schedule. Enabling the schedule provisions the delta job.
Requires the module-objects license feature. Without it the request is refused with 403 license_required — see plans and modules.
Headers
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Create an object source › Request Body
src_namesrc_configsrc_providersrc_metadataCreate an object source › Responses
Success
src_idsrc_activesrc_createdsrc_updatedsrc_created_bysrc_namesrc_providersrc_configsrc_statesrc_metadataGet an object source
Beta — this operation may change on 30 days notice. See versioning.
Returns one source with its connection, scope and mapping. Secrets are masked; send the mask back unchanged to keep a stored value.
Requires the module-objects license feature. Without it the request is refused with 403 license_required — see plans and modules.
path Parameters
idHeaders
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Get an object source › Responses
Success
src_idsrc_activesrc_createdsrc_updatedsrc_created_bysrc_namesrc_providersrc_configsrc_statesrc_metadataDelete an object source
Beta — this operation may change on 30 days notice. See versioning.
Deactivates the source, cancels a run in progress and pauses its schedule. Records already pulled stay where they are.
Requires the module-objects license feature. Without it the request is refused with 403 license_required — see plans and modules.
path Parameters
idHeaders
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Delete an object source › Responses
Success
Update an object source
Beta — this operation may change on 30 days notice. See versioning.
Applies the fields present. A src_config replaces the stored one whole, with masked secrets restored from what is stored. The schedule follows the new config.
Requires the module-objects license feature. Without it the request is refused with 403 license_required — see plans and modules.
path Parameters
idHeaders
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Update an object source › Request Body
src_providersrc_namesrc_configsrc_metadataUpdate an object source › Responses
Success
src_idsrc_activesrc_createdsrc_updatedsrc_created_bysrc_namesrc_providersrc_configsrc_statesrc_metadataDraft a schema from source
Beta — this operation may change on 30 days notice. See versioning.
Reads a sample record of step_type (sample_id from the connection test, otherwise the first one found under the configured roots), reads the definitions of the attributes it carries, and returns object-schema fields plus the field mapping to review. Nothing is saved.
Requires the module-objects license feature. Without it the request is refused with 403 license_required — see plans and modules.
path Parameters
idHeaders
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Draft a schema from source › Request Body
step_typesample_idsrc_configDraft a schema from source › Responses
Success
stepTypesampleIdsampleNameStart a full load
Beta — this operation may change on 30 days notice. See versioning.
Walks every configured root and writes what it finds. Answers 202 with the run; follow it under /object-sources/{id}/jobs. force rewrites records whose content did not change. Refused while another run is active, and refused outright when no type and no scheme is mapped.
Requires the module-objects license feature. Without it the request is refused with 403 license_required — see plans and modules.
path Parameters
idHeaders
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Start a full load › Responses
Success
osj_idosj_sourceosj_kindosj_triggerosj_statusosj_createdosj_updatedosj_startedosj_finishedosj_created_byosj_optionsosj_totalosj_doneosj_failedosj_resultosj_failuresosj_errorosj_cancelosj_stalledRunning, but its worker has stopped reporting in. Resume it.
List runs
Beta — this operation may change on 30 days notice. See versioning.
Every recent run against the source, newest first, with counts and the records each could not settle.
Requires the module-objects license feature. Without it the request is refused with 403 license_required — see plans and modules.
path Parameters
idquery Parameters
cursor^[A-Za-z0-9_-]+$limitoffsetosj_idosj_kindosj_statusosj_triggersort^-?[a-z0-9_]+$Headers
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
List runs › Responses
Success
has_moreWhether more rows exist past this page.
next_cursorPass back as cursor for the next page. Null on the last page.
Get a run
Beta — this operation may change on 30 days notice. See versioning.
One run with its progress. osj_stalled marks a run whose worker went away; resume it.
Requires the module-objects license feature. Without it the request is refused with 403 license_required — see plans and modules.
path Parameters
idjob_idHeaders
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Get a run › Responses
Success
osj_idosj_sourceosj_kindosj_triggerosj_statusosj_createdosj_updatedosj_startedosj_finishedosj_created_byosj_optionsosj_totalosj_doneosj_failedosj_resultosj_failuresosj_errorosj_cancelosj_stalledRunning, but its worker has stopped reporting in. Resume it.
Cancel a run
Beta — this operation may change on 30 days notice. See versioning.
Stops the run at its next checkpoint. Everything applied so far stays.
Requires the module-objects license feature. Without it the request is refused with 403 license_required — see plans and modules.
path Parameters
idjob_idHeaders
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Cancel a run › Responses
Success
osj_idosj_sourceosj_kindosj_triggerosj_statusosj_createdosj_updatedosj_startedosj_finishedosj_created_byosj_optionsosj_totalosj_doneosj_failedosj_resultosj_failuresosj_errorosj_cancelosj_stalledRunning, but its worker has stopped reporting in. Resume it.
Resume a run
Beta — this operation may change on 30 days notice. See versioning.
Puts a stalled or failed run back in the queue from its last checkpoint.
Requires the module-objects license feature. Without it the request is refused with 403 license_required — see plans and modules.
path Parameters
idjob_idHeaders
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Resume a run › Responses
Success
osj_idosj_sourceosj_kindosj_triggerosj_statusosj_createdosj_updatedosj_startedosj_finishedosj_created_byosj_optionsosj_totalosj_doneosj_failedosj_resultosj_failuresosj_errorosj_cancelosj_stalledRunning, but its worker has stopped reporting in. Resume it.
Retry failed records
Beta — this operation may change on 30 days notice. See versioning.
Starts a new run over exactly the records this one could not settle.
Requires the module-objects license feature. Without it the request is refused with 403 license_required — see plans and modules.
path Parameters
idjob_idHeaders
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Retry failed records › Responses
Success
osj_idosj_sourceosj_kindosj_triggerosj_statusosj_createdosj_updatedosj_startedosj_finishedosj_created_byosj_optionsosj_totalosj_doneosj_failedosj_resultosj_failuresosj_errorosj_cancelosj_stalledRunning, but its worker has stopped reporting in. Resume it.
Pull changes now
Beta — this operation may change on 30 days notice. See versioning.
Reads the event queue once, outside the schedule. Answers 202 with the run. Refused when the source has no event queue or another run is active.
Requires the module-objects license feature. Without it the request is refused with 403 license_required — see plans and modules.
path Parameters
idHeaders
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Pull changes now › Responses
Success
osj_idosj_sourceosj_kindosj_triggerosj_statusosj_createdosj_updatedosj_startedosj_finishedosj_created_byosj_optionsosj_totalosj_doneosj_failedosj_resultosj_failuresosj_errorosj_cancelosj_stalledRunning, but its worker has stopped reporting in. Resume it.
Test a source connection
Beta — this operation may change on 30 days notice. See versioning.
Signs in to the source, reads the first root, asks the event queue for its status, and reports the address the source saw the call come from. Runs from the service whose address is allow-listed. Send src_config to test settings that are not saved yet.
Requires the module-objects license feature. Without it the request is refused with 403 license_required — see plans and modules.
path Parameters
idHeaders
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Test a source connection › Responses
Success
okTest unsaved settings
Beta — this operation may change on 30 days notice. See versioning.
The same checks as the per-source test, for a connection that has not been saved yet. src_config is required.
Requires the module-objects license feature. Without it the request is refused with 403 license_required — see plans and modules.
Headers
X-Tenant-IdThe workspace this request acts in. Every row the API returns is isolated to it at the database layer by row-level security.
Test unsaved settings › Responses
Success
ok