On this page

Golden 3.0.0 public API reference. Parameters, responses, and schemas for supported customer operations.

15 operations.

GET /api/resources

Retrieves all available resources.

Operation ID: getAllResources

Locates all available resources and returns. Requires the ADMIN role.

Security: bearerAuth

Responses

StatusDescriptionBody
200Successful operationapplication/json: ResourceListResponseDto
400Invalid parametersapplication/json: BaseResponseDto
401Authentication requiredapplication/json: BaseResponseDto
403Not authorizedapplication/json: BaseResponseDto
404Resource not foundapplication/json: BaseResponseDto
409Object is not in the correct stateapplication/json: BaseResponseDto

POST /api/resources

Saves or tests a resource.

Operation ID: saveResource

Saves or tests a resource using indicated JSON representation. Resource is validated before storing or testing. Requires the ADMIN role.

Security: bearerAuth

Request body

Resource to store in JSON format

Media typeRequiredSchema
application/jsontrueResourceSaveRequestDto

Responses

StatusDescriptionBody
200Successful operationapplication/json: ResourceResponseDto
400Invalid parametersapplication/json: BaseResponseDto
401Authentication requiredapplication/json: BaseResponseDto
403Not authorizedapplication/json: BaseResponseDto
404Resource not foundapplication/json: BaseResponseDto
409Object is not in the correct stateapplication/json: BaseResponseDto

GET /api/resources/describe/{type}

Describes a resource type.

Operation ID: describeResourceType

Given a resource type, returns a document that contains all properties for the resource. This is handy for dynamically creating new resources. Requires the ADMIN role.

Security: bearerAuth

Parameters

NameInRequiredTypeDescription
typepathtruestringResource type minLength: 1

Responses

StatusDescriptionBody
200Successful operationapplication/json: ResourceResponseDto
400Invalid parametersapplication/json: BaseResponseDto
401Authentication requiredapplication/json: BaseResponseDto
403Not authorizedapplication/json: BaseResponseDto
404Resource not foundapplication/json: BaseResponseDto
409Object is not in the correct stateapplication/json: BaseResponseDto

PUT /api/resources/duplicate/{id}/{newId}

Duplicates a resource.

Operation ID: duplicateResource

Locates a resource by identifier and duplicates using given new identifier. The new identifier must not exist. Requires the ADMIN role.

Security: bearerAuth

Parameters

NameInRequiredTypeDescription
idpathtruestringCurrent resource identifier minLength: 1
newIdpathtruestringNew resource identifier minLength: 1

Responses

StatusDescriptionBody
200Successful operationapplication/json: ResourceResponseDto
400Invalid parametersapplication/json: BaseResponseDto
401Authentication requiredapplication/json: BaseResponseDto
403Not authorizedapplication/json: BaseResponseDto
404Resource not foundapplication/json: BaseResponseDto
409Object is not in the correct stateapplication/json: BaseResponseDto

GET /api/resources/enums

Retrieves all available enumerations.

Operation ID: getEnumerations

Returns handy maps and lists for all available enumerations of resources and auxiliary types. Restricted to authenticated users.

Security: bearerAuth

Responses

StatusDescriptionBody
200Successful operationapplication/json: ResourceEnumsDto
400Invalid parametersapplication/json: BaseResponseDto
401Authentication requiredapplication/json: BaseResponseDto
403Not authorizedapplication/json: BaseResponseDto
404Resource not foundapplication/json: BaseResponseDto
409Object is not in the correct stateapplication/json: BaseResponseDto

POST /api/resources/export

Export resources.

Operation ID: exportResources

Locates indicated resources by identifier and returns a packaged file containing the exported resources as JSON. Requires the ADMIN role.

Security: bearerAuth

Request body

Export resource dto

Media typeRequiredSchema
application/jsontrueResourceExportRequestDto

Responses

StatusDescriptionBody
200Successful operationapplication/json: ResourceExportResponseDto
400Invalid parametersapplication/json: BaseResponseDto
401Authentication requiredapplication/json: BaseResponseDto
403Not authorizedapplication/json: BaseResponseDto
404Resource not foundapplication/json: BaseResponseDto
409Object is not in the correct stateapplication/json: BaseResponseDto

GET /api/resources/id/{id}

Retrieves a resource by identifier.

Operation ID: getResource

Locates a resource by identifier and returns it. Requires the ADMIN role.

Security: bearerAuth

Parameters

NameInRequiredTypeDescription
idpathtruestringResource identifier minLength: 1

Responses

StatusDescriptionBody
200Successful operationapplication/json: ResourceResponseDto
400Invalid parametersapplication/json: BaseResponseDto
401Authentication requiredapplication/json: BaseResponseDto
403Not authorizedapplication/json: BaseResponseDto
404Resource not foundapplication/json: BaseResponseDto
409Object is not in the correct stateapplication/json: BaseResponseDto

DELETE /api/resources/id/{id}

Deletes a resource.

Operation ID: deleteResource

Locates a resource by identifier and deletes it. Only works if resource is not used (referenced by other resource). Requires the ADMIN role.

Security: bearerAuth

Parameters

NameInRequiredTypeDescription
idpathtruestringResource identifier minLength: 1

Responses

StatusDescriptionBody
200Successful operationapplication/json: BaseResponseDto
400Invalid parametersapplication/json: BaseResponseDto
401Authentication requiredapplication/json: BaseResponseDto
403Not authorizedapplication/json: BaseResponseDto
404Resource not foundapplication/json: BaseResponseDto
409Object is not in the correct stateapplication/json: BaseResponseDto

GET /api/resources/id/{id}/dependencies

Retrieves what a resource uses and what uses it.

Operation ID: getResourceDependencies

Builds the dependency graph and returns this resource’s place in it. ⚠️ The cost is the whole installation, not this one resource: every resource, every table and every entity is loaded to build the graph. That is why it is a call of its own and why neither the listing nor the resource read carries it. Requires the ADMIN role.

Security: bearerAuth

Parameters

NameInRequiredTypeDescription
idpathtruestringResource identifier minLength: 1

Responses

StatusDescriptionBody
200Successful operationapplication/json: DependencyResponseDto
400Invalid parametersapplication/json: BaseResponseDto
401Authentication requiredapplication/json: BaseResponseDto
403Not authorizedapplication/json: BaseResponseDto
404Resource not foundapplication/json: BaseResponseDto
409Object is not in the correct stateapplication/json: BaseResponseDto

POST /api/resources/import

Import resources.

Operation ID: importResources

Receives a list of resources as JSON and tries to import one by one. Requires the ADMIN role.

Security: bearerAuth

Request body

Import resource dto

Media typeRequiredSchema
application/jsontrueResourceImportRequestDto

Responses

StatusDescriptionBody
200Successful operationapplication/json: ResourceImportResponseDto
400Invalid parametersapplication/json: BaseResponseDto
401Authentication requiredapplication/json: BaseResponseDto
403Not authorizedapplication/json: BaseResponseDto
404Resource not foundapplication/json: BaseResponseDto
409Object is not in the correct stateapplication/json: BaseResponseDto

GET /api/resources/lookup/{table}

Reads one page of a lookup table’s values.

Operation ID: getLookupValues

Returns the distinct values of a master reference table’s key column, with their description columns, ordered by value and optionally narrowed by a case-insensitive search term. This is what a FOREIGN_ID picker reads. Restricted to authenticated users.

Security: bearerAuth

Parameters

NameInRequiredTypeDescription
tablepathtruestringLookup table identifier minLength: 1
qqueryfalsestringCase-insensitive substring matched against the value and its descriptions
limitqueryfalseinteger (int32)Maximum entries to return, capped at 500
offsetqueryfalseinteger (int32)Entries to skip

Responses

StatusDescriptionBody
200Successful operationapplication/json: LookupPageResponseDto
400Invalid parametersapplication/json: BaseResponseDto
401Authentication requiredapplication/json: BaseResponseDto
403Not authorizedapplication/json: BaseResponseDto
404Resource not foundapplication/json: BaseResponseDto
409Object is not in the correct stateapplication/json: BaseResponseDto

POST /api/resources/quality/impact

Says what saving a dataset would invalidate, without saving it.

Operation ID: getDatasetQualityImpact

Takes a dataset draft in the same shape the save endpoint takes and answers whether its quality hash would move, which datasets and tables that would reach, and what moved in the quality projection. Writes nothing and takes no lock. ⚠️ It is not an opt-out: there is no way to save a dataset and keep the previous definition, because that would leave records measured under a projection that no longer describes them. Nor does anything get deleted by the change: a daily snapshot is never rewritten and each carries the definition it was taken against, and the projection behind every hash is retained. Requires the ADMIN role.

Security: bearerAuth

Request body

The dataset draft, in the same shape the save endpoint takes

Media typeRequiredSchema
application/jsontrueResourceSaveRequestDto

Responses

StatusDescriptionBody
200Successful operationapplication/json: DatasetQualityImpactResponseDto
400Invalid parametersapplication/json: BaseResponseDto
401Authentication requiredapplication/json: BaseResponseDto
403Not authorizedapplication/json: BaseResponseDto
404Resource not foundapplication/json: BaseResponseDto
409Object is not in the correct stateapplication/json: BaseResponseDto

PUT /api/resources/rename/{id}/{newId}

Renames a resource.

Operation ID: renameResource

Locates an existing resource by identifier and renames to a new identifier. Only works if resource is not being used (referenced by other resource) and the new identifier does not exist. Requires the ADMIN role.

Security: bearerAuth

Parameters

NameInRequiredTypeDescription
idpathtruestringExisting resource identifier
newIdpathtruestringNew resource identifier

Responses

StatusDescriptionBody
200Successful operationapplication/json: ResourceResponseDto
400Invalid parametersapplication/json: BaseResponseDto
401Authentication requiredapplication/json: BaseResponseDto
403Not authorizedapplication/json: BaseResponseDto
404Resource not foundapplication/json: BaseResponseDto
409Object is not in the correct stateapplication/json: BaseResponseDto

GET /api/resources/type/{type}

Retrieves available resources of a certain type.

Operation ID: getResourcesByType

Locates all available resources of indicated type and returns the list of resources. Type is a string that matches the resource type. For example, ‘dataset’ will return all available datasets, while ‘source-csv’ will return all available CSV sources. Requires the ADMIN role.

Security: bearerAuth

Parameters

NameInRequiredTypeDescription
typepathtruestringResource type minLength: 1

Responses

StatusDescriptionBody
200Successful operationapplication/json: ResourceListResponseDto
400Invalid parametersapplication/json: BaseResponseDto
401Authentication requiredapplication/json: BaseResponseDto
403Not authorizedapplication/json: BaseResponseDto
404Resource not foundapplication/json: BaseResponseDto
409Object is not in the correct stateapplication/json: BaseResponseDto

POST /api/resources/view/resolve

Resolves a data-view draft without saving it.

Operation ID: resolveView

Resolves an unsaved data-view against its dataset and returns the effective view: the columns that name a record, the list columns with where each value is read from, the form sections, and what the resolution had to drop. Stores nothing and reads no records. Requires the ADMIN, STEWARD or VIEWER role.

Security: bearerAuth

Request body

The data-view draft, in the same shape the save endpoint takes

Media typeRequiredSchema
application/jsontrueResourceSaveRequestDto

Responses

StatusDescriptionBody
200OK/: ViewResolveResponseDto
400Invalid parametersapplication/json: BaseResponseDto
401Authentication requiredapplication/json: BaseResponseDto
403Not authorizedapplication/json: BaseResponseDto
404Resource not foundapplication/json: BaseResponseDto
409Object is not in the correct stateapplication/json: BaseResponseDto
Golden 3.0.0 · Published 2026-10-04