Update a package
Changed onUpdate name, visible_to or default_revision_id, publish a new revision, or both. To publish, pair components with exactly one of version or bump. default: true promotes the revision published in this call and can't be combined with default_revision_id.
id, nrn and slug are immutable: sending any of them fails with 400.
:::tip PATCH or PUT? PATCH works on an existing package by id and never creates one. When you don't have the id, or you're publishing from a pipeline, use PUT /packages: it creates or publishes by nrn and slug. :::
ℹ️ Note: Publishing a bill of materials identical to the latest revision's doesn't create a new revision. Publishing an existing version with a different bill of materials fails with 409.
Request
- Base URLhttps://api.nullplatform.com
- URLhttps://api.nullplatform.com/packages/{id}
- AuthHTTP bearer
Path parameters
The package id.
Request body
Example request
{
"name": "My scope",
"visible_to": [
"organization=1:account=*"
],
"default_revision_id": "e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b",
"version": "1.5.0",
"bump": "minor",
"components": [
{
"name": "spec",
"resource_type": "service_specification",
"resource_id": "7b2d1c5e-8f4a-4e3b-9c6d-1a2b3c4d5e6f",
"resource_revision_id": "0c9e8d7f-6a5b-4c3d-8e2f-1a0b9c8d7e6f"
}
]
}Response
The updated package.
Example response
{
"id": "1a2b3c4d-5e6f-4a7b-8c9d-0e1f2a3b4c5d",
"nrn": "organization=1:account=2",
"slug": "my-scope",
"name": "My scope",
"visible_to": [
"organization=1:account=2"
],
"default_revision_id": "e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b",
"default_version": "1.4.0",
"latest_revision_id": "e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b",
"latest_version": "1.4.0",
"components": [
{
"name": "spec",
"resource_type": "service_specification",
"resource_id": "7b2d1c5e-8f4a-4e3b-9c6d-1a2b3c4d5e6f",
"resource_revision_id": "0c9e8d7f-6a5b-4c3d-8e2f-1a0b9c8d7e6f"
}
],
"created_at": "2026-09-14T12:00:00.000Z",
"updated_at": "2026-09-14T12:00:00.000Z"
}Changes
- info
endpoint added
- info