apps

Move an install to the registration head

Records the account against the deployment's current release and contract version. {"is_pinned": true} freezes it there, so a later release does not move this account; {"is_pinned": false} releases the freeze.

No hooks fire. An upgrade changes which contract version the account is recorded against, and nothing else — re-running the seeding hook on every upgrade would re-seed an account that already has its rows. An app with per-version work to do has reconcile, which is triggered deliberately.

post/registry/v1/apps/{app}/upgrade

Request

  • Base URL: https://api.atlan.com (the document declares no server; this is the origin it was published from)
  • URL: https://api.atlan.com/registry/v1/apps/{app}/upgrade
  • Auth: HTTP bearer

Path parameters

appstring required

The app's name, which is the extension's name.

Headers

Content-Encoding'base64' | 'gzip, base64'

Codings applied to the request body, outermost last. Send base64, or gzip, base64 to compress first; the body is decoded before it is read and Content-Type still names the inner media type. Omit for an unencoded body.

Request body

is_pinnedboolean nullable

Freeze the account on the release this upgrade moves it to. Absent means false — follow the registration head — which is also how a freeze is released.

pin is accepted as an alias, because that is the spelling the architecture doc named before the route existed. is_pinned is canonical: it matches the column it writes and the boolean naming rule, and a field called pin reads as a verb.

Response

OK

access_expires_atstring nullable

Clock deadline for these commercial rights, when bounded.

access_reasonstring nullable

Why can_install and can_use are false, when they are: subscription_required when the plan does not grant the app, or commercial_access_unavailable when billing could not be read and both are refused until it can. Installation and stored data remain intact.

appstring required

The app's name, which is the extension's name.

authorstring nullable

Who publishes this app, as display text.

author_urlstring nullable

Value of the author_url field.

can_installboolean required

Whether the active subscription permits new installation. User permissions also apply.

can_useboolean required

Whether the active subscription permits using an existing installation.

categoriesstring[] required

Always arrays on the wire, never null — a client iterating them should not have to distinguish "none" from "unset".

contract_versioninteger nullable

Value of the contract_version field.

descriptionstring nullable

Human-readable description.

display_namestring required

Human-readable name.

homepage_urlstring nullable

Value of the homepage_url field.

icon_uristring nullable

The app's logo.

install_metadataobject required

Whatever the app's install hooks wrote back about this account.

install_statusstring required

available | installing | active | uninstalling | failed.

installed_atstring required

Value of the installed_at field.

installed_bystring required

Value of the installed_by field.

is_installedboolean required

Whether this account has the app turned on — install_status == "active", and nothing else. The transitional states are not installed: installing has not finished its seed and failed did not.

is_pinnedboolean required

Whether pinned.

licensestring nullable

Value of the license field.

readme_uristring nullable

Value of the readme_uri field.

releasestring nullable

Value of the release field.

repo_urlstring nullable

Value of the repo_url field.

summarystring nullable

Value of the summary field.

support_urlstring nullable

Value of the support_url field.

tagsstring[] required

Value of the tags field.

ui_pathstring nullable

Where the app's browser UI is mounted, relative to the gateway root (/skill/v1/ui/), or absent when it serves none.

updated_atstring required

Value of the updated_at field.

Changes

No recorded changes to this operation across all 1 revision of this API.