Skip to content
Registry StackDocsLatest

Get a consultation profile contract

GET
/v1/consultations/{profile_id}
curl --request GET \
--url https://data.example.test/v1/consultations/example \
--header 'Authorization: Bearer <token>'

Returns the complete hash-pinned public contract for the one active contract behind this profile id. The response is protected and visible only to the configured authorized OIDC workload with the profile’s exact required scope.

profile_id
required
string
>= 1 characters <= 96 characters /^[a-z][a-z0-9._-]{0,95}$/

Exact consultation profile identifier from the protected contract catalog.

Consultation profile contract metadata.

Media typeapplication/json

Protected metadata containing the complete public contract for the one active contract behind this profile id.

object
contract
required

Complete public consultation contract. Clients strict-parse and recompute its domain-separated contract hash before activation. The product-neutral spec.integration object contains exactly id and a positive integer revision; integration-pack content hashes remain internal to the signed deployment closure.

object
contract_hash
required

SHA-256 identity of the canonical public contract.

string
/^sha256:[0-9a-f]{64}$/
Examplegenerated
{
"contract": {},
"contract_hash": "example"
}

The Registry Notary OIDC credential is missing or invalid. Stable code: auth.invalid_credentials.

Media typeapplication/problem+json
object
code
required
string
detail
required
string
request_id
required
string
status
required
integer format: int32
title
required
string
type
required
string format: uri
code
required
Allowed value: auth.invalid_credentials
status
required
Allowed value: 401
Example
{
"code": "auth.invalid_credentials",
"detail": "no credential provided in Authorization or x-api-key header",
"request_id": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
"status": 401,
"title": "Missing credential",
"type": "https://id.registrystack.org/problems/registry-relay/auth/missing_credential"
}

The authenticated workload is not permitted to view this consultation profile. Stable code: consultation.denied.

Media typeapplication/problem+json
object
code
required
string
detail
required
string
request_id
required
string
status
required
integer format: int32
title
required
string
type
required
string format: uri
code
required
Allowed value: consultation.denied
status
required
Allowed value: 403
Example
{
"code": "consultation.denied",
"detail": "no credential provided in Authorization or x-api-key header",
"request_id": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
"status": 403,
"title": "Missing credential",
"type": "https://id.registrystack.org/problems/registry-relay/auth/missing_credential"
}

The profile id is not visible to this workload. Stable code: consultation.profile_not_found.

Media typeapplication/problem+json
object
code
required
string
detail
required
string
request_id
required
string
status
required
integer format: int32
title
required
string
type
required
string format: uri
code
required
Allowed value: consultation.profile_not_found
status
required
Allowed value: 404
Example
{
"code": "consultation.profile_not_found",
"detail": "no credential provided in Authorization or x-api-key header",
"request_id": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
"status": 404,
"title": "Missing credential",
"type": "https://id.registrystack.org/problems/registry-relay/auth/missing_credential"
}

The consultation profile cannot be resolved safely. Stable code: consultation.unavailable.

Media typeapplication/problem+json
object
code
required
string
detail
required
string
request_id
required
string
status
required
integer format: int32
title
required
string
type
required
string format: uri
code
required
Allowed value: consultation.unavailable
status
required
Allowed value: 503
Example
{
"code": "consultation.unavailable",
"detail": "no credential provided in Authorization or x-api-key header",
"request_id": "01ARZ3NDEKTSV4RRFFQ69G5FAV",
"status": 503,
"title": "Missing credential",
"type": "https://id.registrystack.org/problems/registry-relay/auth/missing_credential"
}