# components.schemas.APIKey.properties.owner.description
The principal this API key authenticates as. Omitted on legacy user-key responses that do not yet resolve the owner.

# components.schemas.APIKeyOwner.properties.name.description
The owner's name: a user's full name (or email) or a service account's name.

# components.schemas.APIKeyOwner.properties.type.description
The kind of principal this API key authenticates as.

# components.schemas.Account.properties.slug.description
This property is deprecated. Use name instead.

# components.schemas.AcknowledgeAlertResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.AcknowledgeAllAlertsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.App.properties.health_status.description
This property is deprecated. It will always be 'healthy'.

# components.schemas.App.properties.is_example.description
Whether this app was deployed from the Tower examples catalog.

# components.schemas.App.properties.last_run.description
Deprecated: always null, previously latest run of this app. Use "runs" in app summary instead.

# components.schemas.App.properties.next_run_at.description
The next time this app will run as part of it's schedule, null if none.

# components.schemas.App.properties.pending_timeout.description
The maximum time in seconds that a run can stay in the pending state before being marked as cancelled.

# components.schemas.App.properties.retry_policy.description
The retry policy for failed runs of this app.

# components.schemas.App.properties.running_timeout.description
The number of seconds that a run can stay running before it gets cancelled. Value of 0 (default) means no timeout.

# components.schemas.App.properties.schedule.description
The schedule associated with this app, null if none.

# components.schemas.App.properties.short_description.description
A short description of the app. Can be empty.

# components.schemas.App.properties.slug.description
This property is deprecated. Use name instead.

# components.schemas.App.properties.subdomain.description
The subdomain that this app is accessible via. Must be externally accessible first.

# components.schemas.App.properties.version.description
The current version of this app, null if none.

# components.schemas.AppVersion.properties.content_checksum.description
Server-computed SHA256 of the bundle contents for this version.

# components.schemas.AppVersion.properties.idempotency_key.description
Client-supplied key (e.g. git SHA) that produced this version, or empty if none was supplied at deploy time.

# components.schemas.AppVersion.properties.towerfile.description
The Towerfile that this version was created from.

# components.schemas.AuthenticationContext.properties.work_os_access_token.description
The WorkOS access token for SSO authentication.

# components.schemas.BatchDescribeRunsLogsParams.properties.head.description
Return only the first N log lines. Cannot be combined with tail.

# components.schemas.BatchDescribeRunsLogsParams.properties.name.description
The name of the app to describe the run for.

# components.schemas.BatchDescribeRunsLogsParams.properties.start_at.description
Fetch logs from this timestamp onwards (inclusive).

# components.schemas.BatchDescribeRunsLogsParams.properties.tail.description
Return only the last N log lines. Cannot be combined with head.

# components.schemas.BatchDescribeRunsParams.properties.name.description
The name of the app to describe the run for.

# components.schemas.BatchDescribeRunsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.BatchScheduleParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.BatchScheduleResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CancelRunResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CancelRunResponse.properties.cancelled_child_runs.description
Number of descendant runs that were also cancelled as part of this cascade.

# components.schemas.Catalog.properties.environment.description
Environment containing the catalog definition.

# components.schemas.Catalog.properties.slug.description
This property is deprecated. Use name instead.

# components.schemas.CatalogCredentials.properties.warehouse.description
The Polaris catalog identifier (REST prefix).

# components.schemas.CatalogFact.properties.body.description
Optional structured payload (SQL, unit, enum values).

# components.schemas.CatalogFact.properties.name.description
The natural key of the fact within the catalog.

# components.schemas.CatalogFact.properties.object.description
Descriptive path to what the fact is about, e.g. "bronze.runs.deleted_at". Empty for catalog-scoped facts.

# components.schemas.CatalogFact.properties.source.description
Where the fact came from (agent id, user, ...).

# components.schemas.CatalogProperty.properties.environment_variable.description
The environment variable name this property is injected as at runtime.

# components.schemas.CatalogUsage.properties.measured_at.description
When this value was measured. Null when metering is unconfigured, disabled, or failed without a cached value.

# components.schemas.CatalogUsage.properties.total_bytes.description
Physical bytes stored by this Tower-managed catalog, including Iceberg metadata and not-yet-compacted snapshot history.

# components.schemas.ClaimDeviceLoginTicketParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ClaimDeviceLoginTicketParams.properties.refresh_token.description
The refresh token for the session to delegate to the device.

# components.schemas.ClaimDeviceLoginTicketResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ClaimDeviceLoginTicketResponse.properties.claimed.description
Whether the code was successfully claimed.

# components.schemas.CreateAPIKeyParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateAPIKeyParams.properties.scopes.description
Space separated scopes that this API key is valid for.

# components.schemas.CreateAPIKeyParams.properties.team.description
The team this API key is associated with. This field is optional. You must be a member of the team that you're creating the API key for, and if you're using an API key to create a new API key, the API key you use to authenticate this request must be a personal API key.

# components.schemas.CreateAPIKeyResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateAccountParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateAccountResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateAppParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateAppParams.properties.is_externally_accessible.description
Indicates that web traffic should be routed to this app and that its runs should get a hostname assigned to it.

# components.schemas.CreateAppParams.properties.pending_timeout.description
The amount of time in seconds that runs of this app can stay in pending state before being marked as failed.

# components.schemas.CreateAppParams.properties.retry_policy.description
The retry policy for failed runs of this app. Defines different retry behavior for infrastructure (errored) vs application (crashed) failures.

# components.schemas.CreateAppParams.properties.running_timeout.description
The amount of time in seconds that runs of this app can stay in running state before being marked as failed.

# components.schemas.CreateAppParams.properties.slug.description
The slug of the app. Legacy CLI will send it but we don't need it.

# components.schemas.CreateAppParams.properties.subdomain.description
The subdomain this app is accessible under. Requires is_externally_accessible to be true.

# components.schemas.CreateAppResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateCatalogParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateCatalogResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateDeviceLoginTicketResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateDeviceLoginTicketResponse.properties.device_code.description
The unique code identifying this device login request.

# components.schemas.CreateDeviceLoginTicketResponse.properties.expires_in.description
Number of seconds until this request expires.

# components.schemas.CreateDeviceLoginTicketResponse.properties.generated_at.description
When this device login request was created.

# components.schemas.CreateDeviceLoginTicketResponse.properties.interval.description
Number of seconds to wait between polling attempts.

# components.schemas.CreateDeviceLoginTicketResponse.properties.login_url.description
The URL where the user should go to enter the user code.

# components.schemas.CreateDeviceLoginTicketResponse.properties.user_code.description
The code that the user needs to enter to authenticate.

# components.schemas.CreateDeviceLoginTicketResponse.properties.verification_url.description
The URL that the device should poll to check authentication status.

# components.schemas.CreateEnvironmentParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateEnvironmentResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateGuestParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateGuestParams.properties.app.description
The name of the externally accessible app this guest can access.

# components.schemas.CreateGuestParams.properties.expires_in.description
The number of seconds the guest session should last. Defaults to 72 hours.

# components.schemas.CreateGuestParams.properties.redirect_url.description
Where to redirect the guest after they log in. Defaults to the app's subdomain.

# components.schemas.CreateGuestResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateGuestResponse.properties.login_url.description
The URL to share with the guest for logging in.

# components.schemas.CreateSandboxSecretsParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateSandboxSecretsParams.properties.secret_keys.description
List of secret keys to create with Tower defaults

# components.schemas.CreateSandboxSecretsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateScheduleParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateScheduleParams.properties.app_name.description
The name of the app to create a schedule for

# components.schemas.CreateScheduleParams.properties.app_version.description
This property is deprecated and ignored. Schedules inherit the version from their environment.

# components.schemas.CreateScheduleParams.properties.cron.description
The cron expression defining when the app should run

# components.schemas.CreateScheduleParams.properties.name.description
The name for this schedule. Must be unique per environment. If not set, one will be generated for you.

# components.schemas.CreateScheduleParams.properties.status.description
The status of the schedule (defaults to active)

# components.schemas.CreateScheduleParams.properties.timezone.description
The IANA timezone identifier that the cron expression should be evaluated in (e.g., 'America/New_York', 'Europe/London'). Defaults to 'UTC'.

# components.schemas.CreateScheduleResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateSecretParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateSecretResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateServiceAccountAPIKeyParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateServiceAccountAPIKeyParams.properties.scopes.description
Space-separated scopes for the key. Defaults to the SA's role scopes when omitted.

# components.schemas.CreateServiceAccountAPIKeyResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateServiceAccountParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateServiceAccountParams.properties.name.description
Human-readable name for the service account. Must be unique within the account.

# components.schemas.CreateServiceAccountParams.properties.role.description
The team role this service account acts as.

# components.schemas.CreateServiceAccountResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateSessionParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateSessionParams.properties.code.description
One-time password verification code for two-factor authentication. If the user has two-factor authentication enabled, this code is required to log in.

# components.schemas.CreateSessionResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateTeamParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateTeamResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateWebhookParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.CreateWebhookResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteAPIKeyParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteAPIKeyResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteAppResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteCatalogResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteEnvironmentResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteGuestOutputBody.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteScheduleParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteScheduleResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteSecretResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteServiceAccountAPIKeyParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteServiceAccountAPIKeyParams.properties.identifier.description
The API key identifier (with or without the 'sk-' prefix).

# components.schemas.DeleteSessionParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteSessionParams.properties.session_id.description
The ID of the session to delete. If not provided, the current session will be deleted.

# components.schemas.DeleteSessionResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteTeamInvitationParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteTeamInvitationParams.properties.email.description
The email address of the team member to remove

# components.schemas.DeleteTeamInvitationResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteTeamInvitationResponse.properties.invitation.description
The team invitation that was just removed

# components.schemas.DeleteTeamParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteTeamResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeleteWebhookResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DeployAppResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeAccountBody.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeAppResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeAppVersionResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeAuthenticationContextBody.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeCatalogFactResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeCatalogFactResponse.properties.environment.description
Environment containing the catalog definition.

# components.schemas.DescribeCatalogResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeCatalogUsageResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeCatalogUsageResponse.properties.environment.description
Environment containing the catalog definition.

# components.schemas.DescribeDeviceLoginSessionResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeDeviceLoginSessionResponse.properties.session.description
The current session associated with your authentication method.

# components.schemas.DescribeEmailPreferencesBody.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeEnvironmentResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribePlanResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeRunGraphResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeRunLogsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeRunResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeSecretsKeyResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeServiceAccountResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeSessionResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeSessionResponse.properties.session.description
The current session associated with your authentication method.

# components.schemas.DescribeTeamResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeWebhookResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeWhoamiResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.DescribeWhoamiResponse.properties.expires_at.description
Absolute time at which the token expires.

# components.schemas.DescribeWhoamiResponse.properties.token.description
RS256-signed identity JWT scoped to the authenticated user. Verify against the public keys at /.well-known/jwks.json.

# components.schemas.Environment.properties.is_deletable.description
If this environment is able to be deleted.

# components.schemas.Environment.properties.name.description
The human readable name for the environment

# components.schemas.ErrorDetail.properties.location.description
Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'

# components.schemas.ErrorModel.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ErrorModel.properties.detail.description
A human-readable explanation specific to this occurrence of the problem.

# components.schemas.ErrorModel.properties.detail.examples[]
Property foo is required but is missing.

# components.schemas.ErrorModel.properties.errors.description
Optional list of individual error details

# components.schemas.ErrorModel.properties.instance.description
A URI reference that identifies the specific occurrence of the problem.

# components.schemas.ErrorModel.properties.title.description
A short, human-readable summary of the problem type. This value should not change between occurrences of the error.

# components.schemas.ErrorModel.properties.type.description
A URI reference to human-readable documentation for the error.

# components.schemas.ExportCatalogsParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ExportCatalogsParams.properties.all.description
Whether to export catalogs across all environments, without applying default-environment inheritance or deduplication.

# components.schemas.ExportCatalogsParams.properties.environment.description
Environment whose catalogs to export when all is false. When it has no same-named catalog, a catalog from default is selected instead.

# components.schemas.ExportCatalogsParams.properties.page_size.description
The number of records to fetch on each page.

# components.schemas.ExportCatalogsParams.properties.public_key.description
The PEM-encoded public key you want to use to encrypt sensitive catalog properties.

# components.schemas.ExportCatalogsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ExportSecretsParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ExportSecretsParams.properties.all.description
Whether to fetch all secrets or only the ones that are not marked as deleted.

# components.schemas.ExportSecretsParams.properties.page_size.description
The number of records to fetch on each page.

# components.schemas.ExportSecretsParams.properties.public_key.description
The PEM-encoded public key you want to use to encrypt sensitive secret values.

# components.schemas.ExportSecretsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ExportedCatalog.properties.environment.description
Environment containing the catalog definition.

# components.schemas.ExportedCatalog.properties.slug.description
This property is deprecated. Use name instead.

# components.schemas.ExportedCatalogProperty.properties.environment_variable.description
The environment variable name this property is injected as at runtime.

# components.schemas.GenerateAppStatisticsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.GenerateOrganizationUsageTimeSeriesResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.GenerateRunStatisticsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.GenerateRunnerCredentialsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.GetFeatureFlagResponseBody.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.GetFeatureFlagResponseBody.properties.value.description
The flag value (type depends on value_type)

# components.schemas.Guest.properties.app.description
The name of the app this guest can access.

# components.schemas.InviteTeamMemberParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.InviteTeamMemberParams.properties.emails.description
The email addresses of the people to invite. It can be a list in any format (comma separated, newline separated, etc.) and it will be parsed into individual addresses

# components.schemas.InviteTeamMemberParams.properties.message.description
Optional message to include in the invite email

# components.schemas.InviteTeamMemberResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.LeaveTeamResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListAPIKeysResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListAlertsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListAppEnvironmentsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListAppVersionsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListAppsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListCatalogFactsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListCatalogFactsResponse.properties.environment.description
Environment containing the catalog definition.

# components.schemas.ListCatalogsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListEnvironmentsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListGuestsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListMyTeamInvitationsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListRunnersResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListRunsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListSchedulesResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListSecretEnvironmentsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListSecretsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListServiceAccountAPIKeysResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListServiceAccountsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListTeamInvitationsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListTeamMembersResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListTeamsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ListWebhooksResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.OrganizationStorageUsage.properties.measured_at.description
When the total was measured. Null when no measurement is available.

# components.schemas.OrganizationStorageUsage.properties.total_bytes.description
Physical bytes across the organization's Tower-managed catalogs, including Iceberg metadata and not-yet-compacted snapshot history.

# components.schemas.OrganizationUsage.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.OrganizationUsage.properties.active_schedules.description
Number of active schedules in the organization.

# components.schemas.OrganizationUsage.properties.apps.description
Number of applications in the organization.

# components.schemas.OrganizationUsage.properties.base_plan_name.description
The name of the organization's base plan.

# components.schemas.OrganizationUsage.properties.compute_minutes.description
Number of compute minutes used in the current billing cycle.

# components.schemas.OrganizationUsage.properties.self_hosted_runners.description
Whether the organization has the ability to use self-hosted runners.

# components.schemas.OrganizationUsage.properties.storage.description
Current pay-as-you-go Tower-managed storage usage. This is not a plan limit.

# components.schemas.Parameter.properties.hidden.description
Whether this parameter is hidden/secret. Defaults to false.

# components.schemas.RefreshSessionParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.RefreshSessionParams.properties.refresh_token.description
The refresh token associated with the session to refresh.

# components.schemas.RefreshSessionResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.RefreshSessionResponse.properties.refreshed_at.description
A timestamp that indicates the last time the session data was refreshed.

# components.schemas.RefreshSessionResponse.properties.session.description
Refresh the current session and return the updated session information.

# components.schemas.RegenerateGuestLoginURLParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.RegenerateGuestLoginURLParams.properties.expires_in.description
The number of seconds the guest session should last. Defaults to 72 hours.

# components.schemas.RegenerateGuestLoginURLParams.properties.redirect_url.description
Where to redirect the guest after they log in.

# components.schemas.RegenerateGuestLoginURLResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.RegenerateGuestLoginURLResponse.properties.login_url.description
The new login URL to share with the guest.

# components.schemas.RemoveTeamMemberParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.RemoveTeamMemberParams.properties.email.description
The email address of the team member to remove

# components.schemas.RemoveTeamMemberResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ResendTeamInvitationParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ResendTeamInvitationParams.properties.email.description
The email address of team invitation to resend

# components.schemas.ResendTeamInvitationParams.properties.message.description
Optional message to include in the invite email

# components.schemas.ResendTeamInvitationResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.Run.properties.$link.description
$link is deprecated. Individual responses include links.

# components.schemas.Run.properties.app_slug.description
This property is deprecated. Use app_name instead.

# components.schemas.Run.properties.attempts.description
Previous attempt details. Populated on describe, omitted on list.

# components.schemas.Run.properties.created_by.description
The principal that created this run. Null on legacy rows that predate principal tracking.

# components.schemas.Run.properties.exit_code.description
Exit code of the run, if the run is completed. Null if there is no exit code

# components.schemas.Run.properties.is_scheduled.description
Whether this run was triggered by a schedule (true) or on-demand (false). Historical records default to false.

# components.schemas.Run.properties.num_attempts.description
Number of attempts for this run (1 = original, 2+ = retries).

# components.schemas.Run.properties.started_at.description
When the run started executing your code.

# components.schemas.Run.properties.starting_at.description
When the runner environment started to get setup.

# components.schemas.Run.properties.subdomain.description
If app is externally accessible, then you can access this run with this hostname.

# components.schemas.RunAppParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.RunAppParams.properties.parent_run_id.description
The ID of the run that invoked this run, if relevant. Should be null, if none.

# components.schemas.RunAppParams.properties.retry_policy.description
Override the retry policy for this specific run. If not provided, inherits from the app's retry policy.

# components.schemas.RunAppResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.RunAttempt.properties.started_at.description
When the run started executing your code.

# components.schemas.RunAttempt.properties.starting_at.description
When the runner environment started to get setup.

# components.schemas.RunCreator.properties.name.description
The creator's name: a user's full name (or email) or a service account's name.

# components.schemas.RunCreator.properties.type.description
The kind of principal that created the run.

# components.schemas.RunInitiator.properties.details.description
Additional information about the initiator of a run.

# components.schemas.RunInitiator.properties.type.description
The type of initiator for this run. Null if none or unknown.

# components.schemas.RunLogLine.properties.attempt_seq.description
The attempt number this log line belongs to (1-based). Attempt 1 is the original execution; 2+ are retries.

# components.schemas.RunLogLine.properties.message.description
This property is deprecated. Use content instead.

# components.schemas.RunLogLine.properties.timestamp.description
This property is deprecated. Use reported_at instead.

# components.schemas.RunParameter.properties.hidden.description
Whether this parameter is hidden/secret. Defaults to false.

# components.schemas.RunParameter.properties.is_override.description
Whether this parameter's value was supplied as an override at run/schedule creation time (true) or comes from the app version's default (false).

# components.schemas.RunRunInitiatorDetails.properties.run_app_name.description
The name of the app that initiated this run, if type is 'tower_run'

# components.schemas.RunRunInitiatorDetails.properties.run_number.description
The number of the run that initaited this run, if type is 'tower_run'

# components.schemas.RunTimeseriesPoint.properties.period.description
The period of the timeseries point, typically the start of the period.

# components.schemas.Runner.properties.name.description
Optional human-readable name for the runner

# components.schemas.RunnerCredentials.properties.certificate.description
The signed certificate used by the runner to authenticate itself to Tower.

# components.schemas.RunnerCredentials.properties.private_key.description
The private key used by the runner to authenticate itself to Tower.

# components.schemas.RunnerCredentials.properties.root_ca.description
The PEM encoded root CA certificate that is used to verify the runner's certificate when Tower is responsible for signing server certs.

# components.schemas.RunnerCredentials.properties.runner_service_url.description
The host of the runner service that this runner will connect to. This is typically the Tower service host.

# components.schemas.SSEWarning.properties.end_of_stream.description
When true, the server has delivered every log line and is closing the stream; clients should stop and not reconnect.

# components.schemas.Schedule.properties.app_name.description
The name of the app that will be executed

# components.schemas.Schedule.properties.app_version.description
This property is deprecated. Schedules inherit the version from their environment. This field returns the environment's current version.

# components.schemas.Schedule.properties.created_at.description
The timestamp when the schedule was created

# components.schemas.Schedule.properties.cron.description
The cron expression defining when the app should run

# components.schemas.Schedule.properties.overlap_policy.description
The policy for handling overlapping runs

# components.schemas.Schedule.properties.owner.description
The schedule's runtime owner — the user or service account whose identity its scheduled runs execute under.

# components.schemas.Schedule.properties.parameters.description
The parameters to pass when running the app

# components.schemas.Schedule.properties.timezone.description
The IANA timezone identifier that the cron expression is evaluated in (e.g., 'America/New_York', 'Europe/London'). Defaults to 'UTC'.

# components.schemas.Schedule.properties.updated_at.description
The timestamp when the schedule was last updated

# components.schemas.ScheduleOwner.properties.name.description
The owner's name: a user's full name (first + last) or a service account's name. Must identify exactly one member of the account.

# components.schemas.ScheduleOwner.properties.type.description
The kind of owner: 'user' or 'service_account'

# components.schemas.ScheduleRunInitiatorDetails.properties.schedule_name.description
The name of the schedule that initiated this run, if type is 'tower_schedule'

# components.schemas.SearchRunsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.ServiceAccount.properties.creator.description
The user who created this service account.

# components.schemas.ServiceAccount.properties.id.description
The unique identifier for the service account.

# components.schemas.ServiceAccount.properties.metadata.description
Customer-supplied JSON metadata associated with the service account.

# components.schemas.ServiceAccount.properties.name.description
The human-readable name of the service account.

# components.schemas.ServiceAccount.properties.role.description
The team role this service account acts as.

# components.schemas.ServiceAccount.properties.updated_at.description
When the service account was last updated.

# components.schemas.ServiceAccountCreator.properties.name.description
The creator's name: a user's full name (or email) or a service account's name.

# components.schemas.ServiceAccountCreator.properties.type.description
The kind of principal that created the service account. Always 'user'.

# components.schemas.Session.properties.featurebase_identity.description
This property is deprecated. It will be removed in a future version.

# components.schemas.ShoulderTap.properties.event_type.description
Event type in format resource.changed (e.g., apps.changed, runs.changed).

# components.schemas.ShoulderTap.properties.resource_type.description
Type of resource (apps, runs, schedules, secrets, environments, catalogs).

# components.schemas.StatisticsSettings.properties.start_at.description
The start time for the statistics period.

# components.schemas.StatisticsSettings.properties.timezone.description
The time zone for the statistics period.

# components.schemas.Team.properties.organization.description
The name of the organization this team belongs to.

# components.schemas.Team.properties.slug.description
This property is deprecated. Use name instead.

# components.schemas.Team.properties.type.description
The type of team, either 'personal' or 'team'.

# components.schemas.TestWebhookResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.Token.properties.access_token.description
The access token to use when authenticating API requests with Tower.

# components.schemas.Token.properties.jwt.description
This property is deprecated. Use access_token instead.

# components.schemas.Token.properties.refresh_token.description
The refresh token to use when refreshing an expired access token. For security reasons, refresh tokens should only be transmitted over secure channels and never logged or stored in plaintext. It will only be returned upon initial authentication or when explicitly refreshing the access token.

# components.schemas.UpdateAccountParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateAccountParams.properties.is_self_hosted_only.description
Whether the account is for self-hosted use only

# components.schemas.UpdateAccountResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateAppEnvironmentParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateAppEnvironmentParams.properties.version.description
The version to deploy to this environment, e.g. 'v1', 'v2'.

# components.schemas.UpdateAppEnvironmentResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateAppParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateAppParams.properties.is_externally_accessible.description
Indicates that web traffic should be routed to this app and that its runs should get a hostname assigned to it.

# components.schemas.UpdateAppParams.properties.pending_timeout.description
The amount of time in seconds that runs of this app can stay in pending state before being marked as failed.

# components.schemas.UpdateAppParams.properties.retry_policy.description
The retry policy for failed runs of this app. Defines different retry behavior for infrastructure (errored) vs application (crashed) failures.

# components.schemas.UpdateAppParams.properties.running_timeout.description
The amount of time in seconds that runs of this app can stay in running state before being marked as failed.

# components.schemas.UpdateAppParams.properties.subdomain.description
The subdomain this app is accessible under. Requires is_externally_accessible to be true.

# components.schemas.UpdateAppResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateCatalogFactBody.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateCatalogFactBody.properties.body.description
Optional structured payload (SQL, unit, enum values) as a JSON string.

# components.schemas.UpdateCatalogFactBody.properties.object.description
Descriptive path to what the fact is about, e.g. "bronze.runs.deleted_at". Empty for catalog-scoped facts.

# components.schemas.UpdateCatalogFactBody.properties.source.description
Where the fact came from (agent id, user, ...).

# components.schemas.UpdateCatalogFactResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateCatalogParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateCatalogParams.properties.environment.description
The environment containing the catalog to update. Catalogs cannot be moved between environments.

# components.schemas.UpdateCatalogResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateEmailPreferencesBody.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateEnvironmentParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateEnvironmentResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateMyTeamInvitationParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateMyTeamInvitationParams.properties.accepted.description
Whether or not the invitation was accepted. If false, it's considered rejected.

# components.schemas.UpdateMyTeamInvitationParams.properties.name.description
The name of the team invitation to update

# components.schemas.UpdateMyTeamInvitationResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateOrganizationParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateOrganizationParams.properties.name.description
The name of the organization to update. This is optional, if you supply null it will not update the organization name.

# components.schemas.UpdateOrganizationResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdatePlanParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdatePlanResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateScheduleParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateScheduleParams.properties.app_version.description
This property is deprecated and ignored. Schedules inherit the version from their environment.

# components.schemas.UpdateScheduleParams.properties.cron.description
The cron expression defining when the app should run

# components.schemas.UpdateScheduleParams.properties.name.description
The name for this schedule. Must be unique per environment.

# components.schemas.UpdateScheduleParams.properties.owner.description
Reassign the schedule's runtime owner. Requires team admin scope. Setting this field does NOT change the schedule's status — disabled schedules must be re-activated separately.

# components.schemas.UpdateScheduleParams.properties.timezone.description
The IANA timezone identifier that the cron expression should be evaluated in (e.g., 'America/New_York', 'Europe/London').

# components.schemas.UpdateScheduleResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateSecretParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateSecretResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateServiceAccountParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateServiceAccountParams.properties.metadata.description
Replacement JSON metadata for the service account.

# components.schemas.UpdateServiceAccountParams.properties.name.description
The new human-readable name for the service account.

# components.schemas.UpdateServiceAccountParams.properties.role.description
The new team role this service account acts as.

# components.schemas.UpdateServiceAccountResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateTeamMemberParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateTeamMemberParams.properties.email.description
The email address of the team member to update

# components.schemas.UpdateTeamMemberResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateTeamParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateTeamParams.properties.name.description
The name of the team to update. This is optional, if you supply null it will not update the team name.

# components.schemas.UpdateTeamResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateUserParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateUserParams.properties.is_subscribed_to_changelog.description
If true, the user will receive changelog updates via email.

# components.schemas.UpdateUserParams.properties.is_subscribed_to_marketing_emails.description
If true, the user will receive marketing emails from Tower.

# components.schemas.UpdateUserParams.properties.is_subscribed_to_newsletter.description
If true, the user will receive the Tower newsletter.

# components.schemas.UpdateUserResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateWebhookParams.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UpdateWebhookResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.UsageLimit.properties.limit.description
For numeric quotas: the maximum number of units allowed (-1 means unlimited). For boolean entitlements (e.g. self_hosted_runners): 0 = disabled, 1 = enabled.

# components.schemas.UsageLimit.properties.used.description
The number of units used for this resource.

# components.schemas.User.properties.is_invitation_claimed.description
This property is deprecated. It will be removed in a future version.

# components.schemas.VendCatalogCredentialsBody.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.VendCatalogCredentialsBody.properties.mode.description
Access level for the vended token. "read" (default) binds the token to the catalog's read-only principal; "read-write" requires the catalogs:data:write scope and binds it to the read-write principal.

# components.schemas.VendCatalogCredentialsResponse.properties.$schema.description
A URL to the JSON Schema for this object.

# components.schemas.VendCatalogCredentialsResponse.properties.environment.description
Environment containing the catalog definition.

# components.securitySchemes.APIKeyAuth.description
API key created by a Tower user or Tower service account to authenticate an API request.

# components.securitySchemes.AccessTokenAuth.description
Access token authentication scheme which uses an access token provided by the Tower API as part of a Tower session (see documentation about creating sessions).

# info.description
REST API to interact with Tower Services.

# paths./accounts.post.description
This is the primary way that users register new accounts with Tower.

# paths./accounts/{name}.get.description
Get information about a specific account by name.

# paths./alerts.get.description
List alerts for the current account with optional filtering

# paths./alerts.get.parameters[].description
The number of records to fetch on each page.

# paths./alerts.get.parameters[].schema.description
The number of records to fetch on each page.

# paths./alerts.get.parameters[].description
Filter alerts created after or at this datetime (inclusive)

# paths./alerts.get.parameters[].schema.description
Filter alerts created after or at this datetime (inclusive)

# paths./alerts.get.parameters[].description
Filter alerts created before or at this datetime (inclusive)

# paths./alerts.get.parameters[].schema.description
Filter alerts created before or at this datetime (inclusive)

# paths./alerts.get.parameters[].description
Filter alerts by environment (e.g., production, staging)

# paths./alerts.get.parameters[].schema.description
Filter alerts by environment (e.g., production, staging)

# paths./alerts/acknowledge-all.post.description
Mark all unacknowledged alerts as acknowledged for the current user in the current account

# paths./alerts/stream.get.description
Streams alert notifications in real-time

# paths./alerts/stream.get.responses.200.content.text/event-stream.schema.description
Each oneOf object in the array represents one possible Server Sent Events (SSE) message, serialized as UTF-8 text according to the SSE specification.

# paths./api-keys.get.description
List all the API keys associated with your current account.

# paths./api-keys.get.parameters[].description
The number of records to fetch on each page.

# paths./api-keys.get.parameters[].schema.description
The number of records to fetch on each page.

# paths./apps.get.description
Get all the apps for the current account.

# paths./apps.get.parameters[].description
The number of records to fetch on each page.

# paths./apps.get.parameters[].schema.description
The number of records to fetch on each page.

# paths./apps.get.parameters[].description
The tag query to filter apps by. Provide a serialized TagFilter as the value for the parameter.

# paths./apps.get.parameters[].schema.description
The tag query to filter apps by. Provide a serialized TagFilter as the value for the parameter.

# paths./apps.get.parameters[].description
Number of recent runs to fetch (-1 for all runs, defaults to 20)

# paths./apps.get.parameters[].schema.description
Number of recent runs to fetch (-1 for all runs, defaults to 20)

# paths./apps.get.parameters[].description
Filter to see apps with certain statuses.

# paths./apps.get.parameters[].schema.description
Filter to see apps with certain statuses.

# paths./apps.get.parameters[].description
The environment to filter the apps by. If not provided, apps for all environments will be returned.

# paths./apps.get.parameters[].schema.description
The environment to filter the apps by. If not provided, apps for all environments will be returned.

# paths./apps.post.description
Create a new app in the current account.

# paths./apps/{name}.delete.description
Delete one of your apps, the associated code, and all the runs as well.

# paths./apps/{name}.get.description
Get all the runs for the current account.

# paths./apps/{name}.get.parameters[].description
The number of recent runs to fetch for the app.

# paths./apps/{name}.get.parameters[].schema.description
The number of recent runs to fetch for the app.

# paths./apps/{name}.get.parameters[].description
Filter runs scheduled after this datetime (inclusive). Provide timestamps in ISO-8601 format.

# paths./apps/{name}.get.parameters[].schema.description
Filter runs scheduled after this datetime (inclusive). Provide timestamps in ISO-8601 format.

# paths./apps/{name}.get.parameters[].description
Filter runs scheduled before or at this datetime (inclusive). Provide timestamps in ISO-8601 format.

# paths./apps/{name}.get.parameters[].schema.description
Filter runs scheduled before or at this datetime (inclusive). Provide timestamps in ISO-8601 format.

# paths./apps/{name}.get.parameters[].description
Timezone for the statistics (e.g., 'Europe/Berlin'). Defaults to UTC.

# paths./apps/{name}.get.parameters[].schema.description
Timezone for the statistics (e.g., 'Europe/Berlin'). Defaults to UTC.

# paths./apps/{name}.get.parameters[].description
The environment to resolve the app version against. Defaults to 'default'.

# paths./apps/{name}.get.parameters[].schema.description
The environment to resolve the app version against. Defaults to 'default'.

# paths./apps/{name}.put.description
Update an app in the currently authenticated account.

# paths./apps/{name}.put.parameters[].description
Optional account-scoped monotonic sequence token used to reject out-of-order writes. See the fence documentation for the acceptance window and retry behavior.

# paths./apps/{name}.put.parameters[].schema.description
Optional account-scoped monotonic sequence token used to reject out-of-order writes. See the fence documentation for the acceptance window and retry behavior.

# paths./apps/{name}.put.responses.200.headers.X-Tower-Request-Number.schema.description
Echoes the accepted account fence sequence when the request supplied a token.

# paths./apps/{name}/deploy.post.description
Deploy a new version of an app. Accepts either a TAR file upload (application/tar) or a JSON body with source_uri (application/json) for deploying from a GitHub repository.

# paths./apps/{name}/deploy.post.parameters[].description
The SHA256 hash of the content, used to verify integrity.

# paths./apps/{name}/deploy.post.parameters[].schema.description
The SHA256 hash of the content, used to verify integrity.

# paths./apps/{name}/deploy.post.parameters[].description
Optional opaque key (typically a git commit SHA or CI build ID). If a prior deploy for this app supplied the same value, the server reuses that AppVersion instead of creating a new one — letting consecutive deploys to different environments share a single version when the source hasn't changed.

# paths./apps/{name}/deploy.post.parameters[].schema.description
Optional opaque key (typically a git commit SHA or CI build ID). If a prior deploy for this app supplied the same value, the server reuses that AppVersion instead of creating a new one — letting consecutive deploys to different environments share a single version when the source hasn't changed.

# paths./apps/{name}/deploy.post.parameters[].description
Optional account-scoped monotonic sequence token used to reject out-of-order writes. See the fence documentation for the acceptance window and retry behavior.

# paths./apps/{name}/deploy.post.parameters[].schema.description
Optional account-scoped monotonic sequence token used to reject out-of-order writes. See the fence documentation for the acceptance window and retry behavior.

# paths./apps/{name}/deploy.post.parameters[].description
Whether to deploy to all environments for this app. If true, the 'environment' query parameter is ignored.

# paths./apps/{name}/deploy.post.parameters[].schema.description
Whether to deploy to all environments for this app. If true, the 'environment' query parameter is ignored.

# paths./apps/{name}/deploy.post.requestBody.content.application/json.schema.properties.source_uri.description
GitHub repository URL for deploying from source

# paths./apps/{name}/deploy.post.requestBody.content.application/octet-stream.schema.description
A .tar or .tar.gz file containing the code to deploy and MANIFEST

# paths./apps/{name}/deploy.post.requestBody.description
Deploy app using either a tar file upload or GitHub source URL

# paths./apps/{name}/deploy.post.responses.201.headers.X-Tower-Request-Number.schema.description
Echoes the accepted account fence sequence when the request supplied a token.

# paths./apps/{name}/environments.get.description
Generates a list of all the known environments for a given app in the current account.

# paths./apps/{name}/environments.get.parameters[].description
The name of the app to get the version for.

# paths./apps/{name}/environments.get.parameters[].schema.description
The name of the app to get the version for.

# paths./apps/{name}/environments/{environment}.put.description
Update the configuration of an app in a specific environment, such as which version is deployed.

# paths./apps/{name}/runs.get.description
Generates a list of all the runs for a given app. The list is paginated based on the query string parameters passed in.

# paths./apps/{name}/runs.get.parameters[].description
The number of records to fetch on each page.

# paths./apps/{name}/runs.get.parameters[].schema.description
The number of records to fetch on each page.

# paths./apps/{name}/runs.get.parameters[].description
Filter runs by status(es). Define multiple with a comma-separated list. Supplying none will return all statuses.

# paths./apps/{name}/runs.get.parameters[].schema.description
Filter runs by status(es). Define multiple with a comma-separated list. Supplying none will return all statuses.

# paths./apps/{name}/runs.get.parameters[].description
Filter runs scheduled after or at this datetime (inclusive)

# paths./apps/{name}/runs.get.parameters[].schema.description
Filter runs scheduled after or at this datetime (inclusive)

# paths./apps/{name}/runs.get.parameters[].description
Filter runs scheduled before or at this datetime (inclusive)

# paths./apps/{name}/runs.get.parameters[].schema.description
Filter runs scheduled before or at this datetime (inclusive)

# paths./apps/{name}/runs.get.parameters[].description
Filter runs by environment. If not provided, all environments will be included.

# paths./apps/{name}/runs.get.parameters[].schema.description
Filter runs by environment. If not provided, all environments will be included.

# paths./apps/{name}/runs.post.description
Runs an app with the supplied parameters.

# paths./apps/{name}/runs/{seq}/graph.get.description
Describe the graph that a run belongs to.

# paths./apps/{name}/runs/{seq}/logs.get.description
Retrieves the logs associated with a particular run of an app.

# paths./apps/{name}/runs/{seq}/logs.get.parameters[].description
The sequence number of the run to get logs for.

# paths./apps/{name}/runs/{seq}/logs.get.parameters[].schema.description
The sequence number of the run to get logs for.

# paths./apps/{name}/runs/{seq}/logs.get.parameters[].description
Fetch logs from this timestamp onwards (inclusive).

# paths./apps/{name}/runs/{seq}/logs.get.parameters[].schema.description
Fetch logs from this timestamp onwards (inclusive).

# paths./apps/{name}/runs/{seq}/logs.get.parameters[].description
Return only the first N log lines. Cannot be combined with tail.

# paths./apps/{name}/runs/{seq}/logs.get.parameters[].schema.description
Return only the first N log lines. Cannot be combined with tail.

# paths./apps/{name}/runs/{seq}/logs.get.parameters[].description
Return only the last N log lines. Cannot be combined with head.

# paths./apps/{name}/runs/{seq}/logs.get.parameters[].schema.description
Return only the last N log lines. Cannot be combined with head.

# paths./apps/{name}/runs/{seq}/logs/stream.get.description
Streams the logs associated with a particular run of an app in real-time.

# paths./apps/{name}/runs/{seq}/logs/stream.get.parameters[].description
The sequence number of the run to get logs for.

# paths./apps/{name}/runs/{seq}/logs/stream.get.parameters[].schema.description
The sequence number of the run to get logs for.

# paths./apps/{name}/runs/{seq}/logs/stream.get.responses.200.content.text/event-stream.schema.description
Each oneOf object in the array represents one possible Server Sent Events (SSE) message, serialized as UTF-8 text according to the SSE specification.

# paths./apps/{name}/versions.get.description
List all versions of an app in the current account, sorted with the most recent first.

# paths./apps/{name}/versions.get.parameters[].description
The name of the app to list versions for.

# paths./apps/{name}/versions.get.parameters[].schema.description
The name of the app to list versions for.

# paths./apps/{name}/versions/{num}.get.description
Describe an app version for an app in the current account.

# paths./apps/{name}/versions/{num}.get.parameters[].description
The name of the app to get the version for.

# paths./apps/{name}/versions/{num}.get.parameters[].schema.description
The name of the app to get the version for.

# paths./apps/{name}/versions/{num}.get.parameters[].description
The version string to get the version for.

# paths./apps/{name}/versions/{num}.get.parameters[].schema.description
The version string to get the version for.

# paths./batch/describe-runs.post.description
Describe multiple runs in a single request.

# paths./batch/describe-runs-logs.post.description
Describe multiple run logs in a single request.

# paths./catalogs.get.description
Lists all the catalogs associated with your current account.

# paths./catalogs.get.parameters[].description
The number of records to fetch on each page.

# paths./catalogs.get.parameters[].schema.description
The number of records to fetch on each page.

# paths./catalogs.get.parameters[].description
The environment of the catalogs. Catalogs from the default environment will be returned for names that don't exist in the requested environment. When omitted, catalogs across all environments are returned.

# paths./catalogs.get.parameters[].schema.description
The environment of the catalogs. Catalogs from the default environment will be returned for names that don't exist in the requested environment. When omitted, catalogs across all environments are returned.

# paths./catalogs.get.parameters[].description
Whether to return catalogs across all environments, without applying default-environment inheritance or deduplication.

# paths./catalogs.get.parameters[].schema.description
Whether to return catalogs across all environments, without applying default-environment inheritance or deduplication.

# paths./catalogs.get.parameters[].description
Filter catalogs by type, e.g. "tower-catalog". When omitted, all catalog types are returned.

# paths./catalogs.get.parameters[].schema.description
Filter catalogs by type, e.g. "tower-catalog". When omitted, all catalog types are returned.

# paths./catalogs.post.description
Create a new catalog object in the currently authenticated account.

# paths./catalogs/export.post.description
Lists all the catalogs in your current account and re-encrypt them with the public key you supplied.

# paths./catalogs/{catalog}/facts.get.description
Lists the semantic metadata facts attached to a catalog, optionally filtered by scope and/or object path.

# paths./catalogs/{catalog}/facts.get.parameters[].description
The environment of the catalog. Note that if a catalog with the requested name doesn't exist in the requested environment, facts for the catalog with the same name from the default environment will be returned.

# paths./catalogs/{catalog}/facts.get.parameters[].schema.description
The environment of the catalog. Note that if a catalog with the requested name doesn't exist in the requested environment, facts for the catalog with the same name from the default environment will be returned.

# paths./catalogs/{catalog}/facts.get.parameters[].description
Filter facts by scope. When omitted, facts of every scope are returned.

# paths./catalogs/{catalog}/facts.get.parameters[].schema.description
Filter facts by scope. When omitted, facts of every scope are returned.

# paths./catalogs/{catalog}/facts.get.parameters[].description
Filter facts by object path (exact match). When omitted, facts about any object are returned.

# paths./catalogs/{catalog}/facts.get.parameters[].schema.description
Filter facts by object path (exact match). When omitted, facts about any object are returned.

# paths./catalogs/{catalog}/facts/{name}.delete.description
Deletes a semantic metadata fact addressed by its name within a catalog.

# paths./catalogs/{catalog}/facts/{name}.delete.parameters[].description
Environment containing the catalog definition to delete from. This operation does not fall back to default.

# paths./catalogs/{catalog}/facts/{name}.delete.parameters[].schema.description
Environment containing the catalog definition to delete from. This operation does not fall back to default.

# paths./catalogs/{catalog}/facts/{name}.get.description
Returns a single semantic metadata fact addressed by its name within a catalog.

# paths./catalogs/{catalog}/facts/{name}.get.parameters[].description
The environment of the catalog. Note that if a catalog with the requested name doesn't exist in the requested environment, the fact from the catalog with the same name in the default environment will be returned.

# paths./catalogs/{catalog}/facts/{name}.get.parameters[].schema.description
The environment of the catalog. Note that if a catalog with the requested name doesn't exist in the requested environment, the fact from the catalog with the same name in the default environment will be returned.

# paths./catalogs/{catalog}/facts/{name}.put.description
Idempotently sets a semantic metadata fact by name: creates it when the name is new, updates it when it already exists. An inferred write cannot overwrite an existing confirmed fact.

# paths./catalogs/{catalog}/facts/{name}.put.parameters[].description
Environment containing the catalog definition to update. This operation does not fall back to default.

# paths./catalogs/{catalog}/facts/{name}.put.parameters[].schema.description
Environment containing the catalog definition to update. This operation does not fall back to default.

# paths./catalogs/{name}.delete.description
Delete a new catalog object in the currently authenticated account.

# paths./catalogs/{name}.delete.parameters[].description
The environment of the catalog to delete.

# paths./catalogs/{name}.delete.parameters[].schema.description
The environment of the catalog to delete.

# paths./catalogs/{name}.get.description
Returns non-secret details for a catalog in the selected environment. When that environment has no same-named catalog, the catalog from default is returned instead. The response's catalog environment identifies where its definition is stored.

# paths./catalogs/{name}.get.parameters[].description
Environment whose catalog to return. When it has no same-named catalog, the catalog from default is returned instead.

# paths./catalogs/{name}.get.parameters[].schema.description
Environment whose catalog to return. When it has no same-named catalog, the catalog from default is returned instead.

# paths./catalogs/{name}.put.description
Update a new catalog object in the currently authenticated account.

# paths./catalogs/{name}/credentials.post.description
Mints a short-lived OAuth bearer token for browser or SDK access to a managed (tower-catalog) catalog. Defaults to read-only (`mode: "read"`); pass `mode: "read-write"` in the body (requires the catalogs:data:write scope) for a token bound to the read-write principal. Team membership is enforced before vending; the master Polaris credentials never leave Tower.

# paths./catalogs/{name}/credentials.post.parameters[].description
Environment whose catalog credentials to vend. When it has no same-named catalog, credentials for the catalog from default are vended instead.

# paths./catalogs/{name}/credentials.post.parameters[].schema.description
Environment whose catalog credentials to vend. When it has no same-named catalog, credentials for the catalog from default are vended instead.

# paths./catalogs/{name}/usage.get.description
Returns physical bytes stored by one Tower-managed catalog, including Iceberg metadata and not-yet-compacted snapshot history. Measurements are cached and may be temporarily unavailable; measured_at is null when no measurement exists. BYO and S3 Tables catalogs are not metered.

# paths./catalogs/{name}/usage.get.parameters[].description
Environment whose catalog usage to return. When it has no same-named catalog, usage for the catalog from default is returned instead.

# paths./catalogs/{name}/usage.get.parameters[].schema.description
Environment whose catalog usage to return. When it has no same-named catalog, usage for the catalog from default is returned instead.

# paths./environments.get.parameters[].description
The number of records to fetch on each page.

# paths./environments.get.parameters[].schema.description
The number of records to fetch on each page.

# paths./environments/{name}.get.description
Describe an environment and counts of its resources

# paths./environments/{name}.put.parameters[].description
The current name of the environment to update.

# paths./environments/{name}.put.parameters[].schema.description
The current name of the environment to update.

# paths./feature-flags/{key}.get.description
Get the current value of a feature flag. Returns the flag value if enabled, or a default falsey value if disabled.

# paths./guests.get.description
Lists all guests for the current account, optionally filtered by app.

# paths./guests.post.description
Creates a new guest with access to a specific externally accessible app and returns a login URL to share with them.

# paths./guests/{guest_id}.delete.description
Deletes a guest and revokes their access. Any active sessions will be invalidated.

# paths./guests/{guest_id}/login-url.post.description
Creates a new login URL for an existing guest. Use this if the previous URL expired or was compromised.

# paths./guests/{guest_id}/login-url.post.parameters[].description
The ID of the guest to regenerate the login URL for.

# paths./guests/{guest_id}/login-url.post.parameters[].schema.description
The ID of the guest to regenerate the login URL for.

# paths./login/device.get.description
Creates a new device login ticket and returns the codes and urls needed for authentication.

# paths./login/device/claim.post.description
Claims a device login ticket code for the authenticated user.

# paths./login/device/{device_code}.get.description
Checks if a device login code has been claimed and returns the user session if so.

# paths./organizations/{name}.put.description
Update an organization's name. Only the current owner can perform this operation.

# paths./organizations/{name}.put.parameters[].description
The current name of the organization to update

# paths./organizations/{name}.put.parameters[].schema.description
The current name of the organization to update

# paths./plan.get.parameters[].description
The number of records to fetch on each page.

# paths./plan.get.parameters[].schema.description
The number of records to fetch on each page.

# paths./runners.get.description
Get all self-hosted runners for the current account.

# paths./runners.get.parameters[].description
The number of records to fetch on each page.

# paths./runners.get.parameters[].schema.description
The number of records to fetch on each page.

# paths./runners/credentials.post.description
Uses your current authentication context to generate runner credentials that are used for authenticating runner requests

# paths./runs.get.description
Search, filter, and list runs across all of the apps in your account.

# paths./runs.get.parameters[].description
The number of records to fetch on each page.

# paths./runs.get.parameters[].schema.description
The number of records to fetch on each page.

# paths./runs.get.parameters[].description
Filter runs by status(es). Define multiple with a comma-separated list. Supplying none will return all statuses.

# paths./runs.get.parameters[].schema.description
Filter runs by status(es). Define multiple with a comma-separated list. Supplying none will return all statuses.

# paths./runs.get.parameters[].description
Filter runs scheduled after this datetime (inclusive). Provide timestamps in ISO-8601 format.

# paths./runs.get.parameters[].schema.description
Filter runs scheduled after this datetime (inclusive). Provide timestamps in ISO-8601 format.

# paths./runs.get.parameters[].description
Filter runs scheduled before or at this datetime (inclusive). Provide timestamps in ISO-8601 format.

# paths./runs.get.parameters[].schema.description
Filter runs scheduled before or at this datetime (inclusive). Provide timestamps in ISO-8601 format.

# paths./runs.get.parameters[].description
Filter runs by environment. If not provided, all environments will be included.

# paths./runs.get.parameters[].schema.description
Filter runs by environment. If not provided, all environments will be included.

# paths./sandbox/secrets.post.description
Creates secrets with Tower-provided default values for the specified keys in the given environment.

# paths./schedules.get.description
Lists all schedules for the current account, optionally filtered by environment and app.

# paths./schedules.get.parameters[].description
The number of records to fetch on each page.

# paths./schedules.get.parameters[].schema.description
The number of records to fetch on each page.

# paths./schedules.get.parameters[].description
Filter schedules by environment. If not provided, all environments will be included.

# paths./schedules.get.parameters[].schema.description
Filter schedules by environment. If not provided, all environments will be included.

# paths./schedules.get.parameters[].description
Filter schedules by app name. If not provided, schedules across all apps will be included.

# paths./schedules.get.parameters[].schema.description
Filter schedules by app name. If not provided, schedules across all apps will be included.

# paths./schedules/activate.patch.description
Activate multiple schedules to enable their execution.

# paths./schedules/deactivate.patch.description
Deactivate multiple schedules to disable their execution.

# paths./schedules/{idOrName}.put.parameters[].description
The ID or name of the schedule to update.

# paths./schedules/{idOrName}.put.parameters[].schema.description
The ID or name of the schedule to update.

# paths./schedules/{idOrName}.put.parameters[].description
Optional account-scoped monotonic sequence token used to reject out-of-order writes. See the fence documentation for the acceptance window and retry behavior.

# paths./schedules/{idOrName}.put.parameters[].schema.description
Optional account-scoped monotonic sequence token used to reject out-of-order writes. See the fence documentation for the acceptance window and retry behavior.

# paths./schedules/{idOrName}.put.responses.200.headers.X-Tower-Request-Number.schema.description
Echoes the accepted account fence sequence when the request supplied a token.

# paths./secrets.get.description
Lists all the secrets associated with your current account.

# paths./secrets.get.parameters[].description
The number of records to fetch on each page.

# paths./secrets.get.parameters[].schema.description
The number of records to fetch on each page.

# paths./secrets.get.parameters[].description
Whether to fetch all secrets or only the ones that are not marked as deleted.

# paths./secrets.get.parameters[].schema.description
Whether to fetch all secrets or only the ones that are not marked as deleted.

# paths./secrets.post.description
Creates a new secret and associates it with the current account.

# paths./secrets/environments.get.description
Lists all the environments associated with secrets.

# paths./secrets/export.post.description
Lists all the secrets in your current account and re-encrypt them with the public key you supplied.

# paths./secrets/key.get.description
Gets the encryption key used for encrypting secrets that you want to create in Tower.

# paths./secrets/key.get.parameters[].description
The format to return the key in. Options are 'pkcs1' and 'spki'.

# paths./secrets/key.get.parameters[].schema.description
The format to return the key in. Options are 'pkcs1' and 'spki'.

# paths./secrets/{name}.delete.parameters[].description
The environment of the secret to delete.

# paths./secrets/{name}.delete.parameters[].schema.description
The environment of the secret to delete.

# paths./secrets/{name}.put.description
Updates a secret that has previously been created in your account

# paths./service-accounts.get.description
List all service accounts in the current account. Team admin only.

# paths./service-accounts.get.parameters[].description
The number of records to fetch on each page.

# paths./service-accounts.get.parameters[].schema.description
The number of records to fetch on each page.

# paths./service-accounts.post.description
Create a new service account in the current account. Team admin only.

# paths./service-accounts/{idOrName}.delete.description
Tombstones a service account: revokes API keys, disables owned schedules, cancels in-flight runs, then soft-deletes the SA. Team admin only.

# paths./service-accounts/{idOrName}.delete.parameters[].description
The ID or name of the service account to delete.

# paths./service-accounts/{idOrName}.delete.parameters[].schema.description
The ID or name of the service account to delete.

# paths./service-accounts/{idOrName}.get.description
Fetch a single service account by ID or name. Team admin only.

# paths./service-accounts/{idOrName}.patch.description
Update one or more fields on an existing service account. Team admin only.

# paths./service-accounts/{idOrName}.patch.parameters[].description
The ID or name of the service account to update.

# paths./service-accounts/{idOrName}.patch.parameters[].schema.description
The ID or name of the service account to update.

# paths./service-accounts/{idOrName}/api-keys.delete.description
Revoke an API key bound to a service account. Team admin only.

# paths./service-accounts/{idOrName}/api-keys.get.description
List API keys bound to a service account. Team admin only.

# paths./service-accounts/{idOrName}/api-keys.get.parameters[].description
The number of records to fetch on each page.

# paths./service-accounts/{idOrName}/api-keys.get.parameters[].schema.description
The number of records to fetch on each page.

# paths./service-accounts/{idOrName}/api-keys.post.description
Mint a new API key bound to a service account. The full identifier is only returned on this response. Team admin only.

# paths./service-accounts/{idOrName}/api-keys.post.parameters[].description
The ID or name of the service account this key authenticates as.

# paths./service-accounts/{idOrName}/api-keys.post.parameters[].schema.description
The ID or name of the service account this key authenticates as.

# paths./session.delete.description
Terminate a session and revoke the access keys associated with it.

# paths./session.get.description
Validate your current session and return the user information associated with the session.

# paths./session/refresh.post.description
If your access tokens expire, this API endpoint takes a Refresh Token and returns a new set of Access Tokens for your session. Note that we don't rotate the Refresh Token itself, and it's not returned by this API endpoint.

# paths./shouldertaps/stream.get.description
Stream events over SSE that notify you of potential data staleness

# paths./shouldertaps/stream.get.responses.200.content.text/event-stream.schema.description
Each oneOf object in the array represents one possible Server Sent Events (SSE) message, serialized as UTF-8 text according to the SSE specification.

# paths./stats/apps.get.parameters[].description
The environment to filter the statistics by. If not provided, statistics for all environments will be returned.

# paths./stats/apps.get.parameters[].schema.description
The environment to filter the statistics by. If not provided, statistics for all environments will be returned.

# paths./stats/runs.get.description
Generates statistics about runs over a specified time period.

# paths./stats/runs.get.parameters[].description
Filter runs by status(es). Define multiple with a comma-separated list. Supplying none will return all statuses.

# paths./stats/runs.get.parameters[].schema.description
Filter runs by status(es). Define multiple with a comma-separated list. Supplying none will return all statuses.

# paths./stats/runs.get.parameters[].description
Start date and time for statistics (inclusive)

# paths./stats/runs.get.parameters[].schema.description
Start date and time for statistics (inclusive)

# paths./stats/runs.get.parameters[].description
End date and time for statistics (inclusive)

# paths./stats/runs.get.parameters[].schema.description
End date and time for statistics (inclusive)

# paths./stats/runs.get.parameters[].description
Timezone for the statistics (e.g., 'Europe/Berlin'). Defaults to UTC.

# paths./stats/runs.get.parameters[].schema.description
Timezone for the statistics (e.g., 'Europe/Berlin'). Defaults to UTC.

# paths./stats/runs.get.parameters[].description
Filter runs by environment. If not provided, all environments will be included.

# paths./stats/runs.get.parameters[].schema.description
Filter runs by environment. If not provided, all environments will be included.

# paths./team-invites.put.description
Update a team invitation that you have pending

# paths./teams.get.description
List all the teams that you are a member of.

# paths./teams.get.parameters[].description
The number of records to fetch on each page.

# paths./teams.get.parameters[].schema.description
The number of records to fetch on each page.

# paths./teams/{name}.get.description
Get details about a team, including its members and invitations.

# paths./teams/{name}.put.description
Update a team with a new name or name. Note that updating the team with a new name will cause all your URLs to change!

# paths./teams/{name}/invites.delete.description
Delete a pending team invitation that you have previously sent

# paths./teams/{name}/invites.delete.parameters[].description
The name of the team to remove someone from

# paths./teams/{name}/invites.delete.parameters[].schema.description
The name of the team to remove someone from

# paths./teams/{name}/invites.get.parameters[].description
The name of the team to list members for

# paths./teams/{name}/invites.get.parameters[].schema.description
The name of the team to list members for

# paths./teams/{name}/invites.post.parameters[].description
The name of the team to invite someone to

# paths./teams/{name}/invites.post.parameters[].schema.description
The name of the team to invite someone to

# paths./teams/{name}/invites/resend.post.description
Resend a team invitation to a user if they need a reminder or if they lost it

# paths./teams/{name}/invites/resend.post.parameters[].description
The name of the team to invite someone to

# paths./teams/{name}/invites/resend.post.parameters[].schema.description
The name of the team to invite someone to

# paths./teams/{name}/leave.post.description
Remove yourself from a team. If you're the last member of a team, you cannot remove yourself. You should delete the team instead.

# paths./teams/{name}/members.delete.parameters[].description
The name of the team to remove someone from

# paths./teams/{name}/members.delete.parameters[].schema.description
The name of the team to remove someone from

# paths./teams/{name}/members.get.parameters[].description
The name of the team to list members for

# paths./teams/{name}/members.get.parameters[].schema.description
The name of the team to list members for

# paths./usage.get.description
Describe usage statistics for the user's organization for the current billing cycle.

# paths./usage/time-series.get.description
Get the previous 30 days of usage as a time series.

# paths./user/auth-context.get.description
This API endpoint returns information about the current authentication context for the user that's used for various internal processes in Tower UI.

# paths./user/email-preferences.get.description
Describes the current user's email preferences.

# paths./user/email-preferences.put.description
Updates the set of email preferences the current user has. If a partial set of preferences is submitted, it will be updated accordingly.

# paths./webhooks.get.parameters[].description
The number of records to fetch on each page.

# paths./webhooks.get.parameters[].schema.description
The number of records to fetch on each page.

# paths./webhooks/{name}.put.description
Updates webhook. Note: it is not possible to update the URL. To do so, you should delete and recreate the webhook instead.

# paths./whoami.get.description
Returns an RS256-signed identity JWT for the authenticated user. The token's signature can be verified using the public keys served at /.well-known/jwks.json. Intended for downstream consumers (e.g. Convex) that need a verifiable user identity.