Approve a queued marketplace demo publish access record. The request body depends on the record's current `status`:
- **`PENDING`**: First publish. Set `publicly_published` to `true` for public visibility or `false` with `allowed_orgs` for restricted. When `publicly_published` is omitted, it defaults to the record's `prefer_public`.
- **`PENDING_ELEVATION`**: Restricted → public. Approve as public (`publicly_published` `true`); `allowed_orgs` must be empty.
- **`PENDING_RESTRICTION`**: Public → restricted. Set `publicly_published` to `false` and supply `allowed_orgs`.
- **`PENDING_ALLOWLIST`**: Allow-list update on a restricted demo. Supply the new `allowed_orgs`.
- **`PENDING_UNPUBLISH`**: Gated unpublish. No request body; unpublishes the demo when approved.
**Required scopes (any one):**
- `air:admin` (roles: `air_admin`)
- `air:sre` (roles: `air_sre`)
This endpoint expects an object.
publicly_publishedbooleanOptional
Whether to publish as public (all users) or restricted (allow-list). When omitted, defaults to the record’s prefer_public value.
allowed_orgslist of stringsOptional
Restricted allow-list as org UUIDs. For PENDING, PENDING_RESTRICTION, or PENDING_ALLOWLIST, supply the list the reviewer wants (full replace for allow-list changes). The requesting org is always included automatically. [] means requesting-org-only. Must be omitted or empty when approving as public. Not used for PENDING_UNPUBLISH (empty body).
Response
idstringRead-onlyformat: "uuid"
modifieddatetimeRead-only
marketplace_demostringRead-onlyformat: "uuid"
UUID of the marketplace demo this record governs.
marketplace_demo_namestring or nullRead-only
Marketplace demo name.
requested_bystring or nullRead-only
Email of the user who submitted this record.
requesting_orgstring or nullRead-only
Human-readable name of the org that submitted this record.
requesting_org_display_namestring or nullRead-only
Requesting org display name. Same source as list search and ordering for this field.
requesting_org_ngc_org_namestring or nullRead-only
Requesting org NGC name. Same source as list search and ordering for this field.
reviewed_bystring or nullRead-only
Email of the user who reviewed this record, if reviewed.
statusenum
Current status of the publish access record.
PENDING - Pending
APPROVED - Approved
DENIED - Denied
REMOVED - Removed
CANCELLED - Cancelled
PENDING_ELEVATION - Pending Elevation
PENDING_RESTRICTION - Pending Restriction
PENDING_UNPUBLISH - Pending Unpublish
PENDING_ALLOWLIST - Pending Allow List Change
APPROVED_PENDING_IMAGE_PUBLISH - Approved Pending Image Publish
publicly_publishedbooleanRead-only
Whether the resource is published to all users (public) vs restricted to the allow-list. Set by the community manager at approval time. This is the single source of truth for public vs restricted visibility.
prefer_publicbooleanRead-only
Whether the requester prefers public publishing.
justificationstringRead-only
Optional text from the requester explaining who/why to share.
allowed_orgs_request_textstringRead-only
Free-text hint from the requester describing which orgs should have access for restricted publishing. Not the authoritative allow list.
denial_reasonstringRead-only
Reason provided by community manager when denying this record.
requested_atdatetime or nullRead-only
When the current request was submitted. Cleared when the requester cancels without a review.
reviewed_atdatetime or nullRead-only
When a community manager or privileged actor last reviewed the current or most recent request (approve, deny, or immediate visibility change).