admin
/api/v1/admin/aggregator/upsert
POST
/api/v1/admin/aggregator/upsert
const url = 'https://dpg.example.com/api/v1/admin/aggregator/upsert';const options = { method: 'POST', headers: { 'x-acting-org-id': 'example', 'x-api-key': '<x-api-key>', 'Content-Type': 'application/json' }, body: '{"external_id":"example","name":"example","slug":"example","logo_url":"https://example.com","domains":["example"],"metadata":{"additionalProperty":"example"}}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://dpg.example.com/api/v1/admin/aggregator/upsert \ --header 'Content-Type: application/json' \ --header 'x-acting-org-id: example' \ --header 'x-api-key: <x-api-key>' \ --data '{ "external_id": "example", "name": "example", "slug": "example", "logo_url": "https://example.com", "domains": [ "example" ], "metadata": { "additionalProperty": "example" } }'Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Header Parameters
Section titled “Header Parameters”x-acting-org-id
required
string
Organization this request acts on behalf of. Required for admin/aggregator operations.
Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
external_id
required
Aggregator-dpg primary key for this aggregator
string
name
required
Display name
string
slug
required
Stable url-safe identifier; lookup key for upsert
string
logo_url
Optional logo url shown in dashboards
string format: uri
domains
Item domains this aggregator’s dashboard reports on (e.g. [‘seeker’] or [‘seeker’,‘provider’]). Persisted as org.metadata.domains. Defaults to [] when omitted; dashboard returns 400 NO_DOMAINS_CONFIGURED until set.
Array<string>
metadata
Opaque metadata stored alongside external_id on the org
object
key
additional properties
Examplegenerated
{ "external_id": "example", "name": "example", "slug": "example", "logo_url": "https://example.com", "domains": [ "example" ], "metadata": { "additionalProperty": "example" }}Responses
Section titled “Responses”Default Response
Media typeapplication/json
object
org_id
required
Signals organization id (prefixed org_
string
created
required
True on first upsert; false when an existing org was updated
boolean
Examplegenerated
{ "org_id": "example", "created": true}
