OpenAPI Specification
swagger: '2.0'
info:
contact:
email: support@nuon.co
name: Nuon Support
description: API for managing nuon apps, components, installs, and actions.
title: Nuon accounts orgs API
version: 0.19.1074
host: api.nuon.co
basePath: /
schemes:
- https
tags:
- description: orgs
name: orgs
paths:
/v1/orgs:
get:
consumes:
- application/json
description: 'Returns all organizations for the authenticated user.
'
operationId: GetOrgs
parameters:
- description: search query to filter orgs by name or ID
in: query
name: q
type: string
- default: 0
description: offset of results to return
in: query
name: offset
type: integer
- default: 10
description: limit of results to return
in: query
name: limit
type: integer
- default: 0
description: page number of results to return
in: query
name: page
type: integer
produces:
- application/json
responses:
'200':
description: OK
schema:
items:
$ref: '#/definitions/app.Org'
type: array
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
summary: Return current user's orgs
tags:
- orgs
post:
consumes:
- application/json
description: 'Create a new organization.
'
operationId: CreateOrg
parameters:
- description: Input
in: body
name: req
required: true
schema:
$ref: '#/definitions/service.CreateOrgRequest'
produces:
- application/json
responses:
'201':
description: Created
schema:
$ref: '#/definitions/app.Org'
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'409':
description: Conflict
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
summary: create a new org
tags:
- orgs
/v1/orgs/current:
delete:
consumes:
- application/json
description: 'Delete an organization.
'
operationId: DeleteOrg
produces:
- application/json
responses:
'200':
description: OK
schema:
type: boolean
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: Delete an org
tags:
- orgs
get:
consumes:
- application/json
description: 'Return an organization by id.
'
operationId: GetOrg
produces:
- application/json
responses:
'200':
description: OK
schema:
$ref: '#/definitions/app.Org'
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: Get an org
tags:
- orgs
patch:
consumes:
- application/json
description: 'Update an organization''s settings.
'
operationId: UpdateOrg
parameters:
- description: Input
in: body
name: req
required: true
schema:
$ref: '#/definitions/service.UpdateOrgRequest'
produces:
- application/json
responses:
'200':
description: OK
schema:
$ref: '#/definitions/app.Org'
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: Update current org
tags:
- orgs
/v1/orgs/current/accounts:
get:
consumes:
- application/json
description: 'Return an organization by id.
'
operationId: GetOrgAcounts
parameters:
- default: 0
description: offset of results to return
in: query
name: offset
type: integer
- default: 10
description: limit of results to return
in: query
name: limit
type: integer
- default: 0
description: page number of results to return
in: query
name: page
type: integer
produces:
- application/json
responses:
'200':
description: OK
schema:
$ref: '#/definitions/app.Account'
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: Get user accounts for current org
tags:
- orgs
/v1/orgs/current/features:
get:
consumes:
- application/json
description: "Get the current organization's feature flag values.\n\nReturns a map of feature flag names to their enabled/disabled status for the authenticated organization.\n\nThis endpoint shows which features are currently enabled or disabled for your organization, unlike `/v1/orgs/features` which returns all available features with their descriptions.\n\nExample response:\n```json\n{\n \"api-pagination\": true,\n \"org-dashboard\": true,\n \"org-runner\": true,\n \"stratus-layout\": true,\n \"user-managed-features\": false\n}\n```\n"
operationId: GetCurrentOrgFeatures
produces:
- application/json
responses:
'200':
description: OK
schema:
additionalProperties:
type: boolean
type: object
security:
- APIKey: []
- OrgID: []
summary: get current org's feature flags
tags:
- orgs
patch:
consumes:
- application/json
description: "Update feature flags for your current organization.\n\nThis endpoint allows organization users to manage feature flags, but requires the `user-managed-features` flag to be enabled for the organization. The `user-managed-features` flag itself cannot be modified through this endpoint and can only be enabled/disabled by administrators.\n\n**Requirements:**\n- The `user-managed-features` flag must be enabled for your organization\n- You cannot toggle the `user-managed-features` flag through this endpoint (admin-only)\n\n**Example Request:**\n```json\n{\n \"features\": {\n \"api-pagination\": true,\n \"install-delete\": false\n }\n}\n```\n\nThe request will update only the specified feature flags. Features not included in the request will retain their current values.\n"
operationId: UpdateOrgFeatures
parameters:
- description: Input
in: body
name: req
required: true
schema:
$ref: '#/definitions/service.UpdateOrgFeaturesRequest'
produces:
- application/json
responses:
'200':
description: OK
schema:
$ref: '#/definitions/app.Org'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: update org features (requires user-managed-features flag)
tags:
- orgs
/v1/orgs/current/invites:
get:
consumes:
- application/json
description: 'Returns a list of all invites to the org.
'
operationId: GetOrgInvites
parameters:
- default: 0
description: offset of results to return
in: query
name: offset
type: integer
- default: 60
description: limit of results to return
in: query
name: limit
type: integer
- default: 0
description: page number of results to return
in: query
name: page
type: integer
produces:
- application/json
responses:
'200':
description: OK
schema:
items:
$ref: '#/definitions/app.OrgInvite'
type: array
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: Return org invites
tags:
- orgs
post:
consumes:
- application/json
description: 'Invite a user (by email) to an org.
This user will receive an email, and when they next log into the application will be added to the org.
'
operationId: CreateOrgInvite
parameters:
- description: Input
in: body
name: req
required: true
schema:
$ref: '#/definitions/service.CreateOrgInviteRequest'
produces:
- application/json
responses:
'201':
description: Created
schema:
$ref: '#/definitions/app.OrgInvite'
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'409':
description: Conflict
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: Invite a user to the current org
tags:
- orgs
/v1/orgs/current/invites/{invite_id}/resend:
post:
consumes:
- application/json
description: 'Resend the invite email for an existing pending org invite.
The invite must be in "pending" status. Accepted invites cannot be resent.
'
operationId: ResendOrgInvite
parameters:
- description: invite ID
in: path
name: invite_id
required: true
type: string
produces:
- application/json
responses:
'200':
description: OK
schema:
$ref: '#/definitions/app.OrgInvite'
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: Resend an org invite
tags:
- orgs
/v1/orgs/current/invites/{invite_id}/revoke:
post:
consumes:
- application/json
description: 'Revoke a pending org invite. The invite status is set to "revoked" and the record is soft-deleted, freeing the unique constraint so the same email can be re-invited.
Only org admins can revoke invites. Only pending invites can be revoked.
'
operationId: RevokeOrgInvite
parameters:
- description: invite ID
in: path
name: invite_id
required: true
type: string
produces:
- application/json
responses:
'200':
description: OK
schema:
$ref: '#/definitions/app.OrgInvite'
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: Revoke an org invite
tags:
- orgs
/v1/orgs/current/remove-user:
post:
consumes:
- application/json
description: 'Remove a user from an org.
'
operationId: RemoveUser
parameters:
- description: Input
in: body
name: req
required: true
schema:
$ref: '#/definitions/service.RemoveOrgUserRequest'
produces:
- application/json
responses:
'201':
description: Created
schema:
$ref: '#/definitions/app.Account'
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: Remove a user from the current org
tags:
- orgs
/v1/orgs/current/runner-group:
get:
consumes:
- application/json
description: 'Get the current org''s runner group, which includes the runners and their settings.
'
operationId: GetOrgRunnerGroup
produces:
- application/json
responses:
'200':
description: OK
schema:
$ref: '#/definitions/app.RunnerGroup'
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: Get an org's runner group
tags:
- orgs
/v1/orgs/current/stats:
get:
consumes:
- application/json
description: 'Returns statistics for the provided organization.
'
operationId: GetOrgStats
produces:
- application/json
responses:
'200':
description: OK
schema:
$ref: '#/definitions/app.Org'
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: Get an org
tags:
- orgs
/v1/orgs/current/user:
post:
consumes:
- application/json
description: 'Add a user to an organization.
'
operationId: AddUser
parameters:
- description: Input
in: body
name: req
required: true
schema:
$ref: '#/definitions/service.CreateOrgUserRequest'
produces:
- application/json
responses:
'201':
description: Created
schema:
$ref: '#/definitions/app.Account'
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'409':
description: Conflict
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: Add a user to the current org
tags:
- orgs
/v1/orgs/current/webhooks:
get:
consumes:
- application/json
operationId: GetCurrentOrgWebhooks
produces:
- application/json
responses:
'200':
description: OK
schema:
items:
$ref: '#/definitions/service.CurrentOrgWebhookResponse'
type: array
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: list webhooks for the current org
tags:
- orgs
post:
consumes:
- application/json
operationId: CreateCurrentOrgWebhook
parameters:
- description: Input
in: body
name: req
required: true
schema:
$ref: '#/definitions/service.CreateCurrentOrgWebhookRequest'
produces:
- application/json
responses:
'201':
description: Created
schema:
$ref: '#/definitions/service.CurrentOrgWebhookResponse'
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'409':
description: Conflict
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: create a webhook for the current org
tags:
- orgs
/v1/orgs/current/webhooks/{webhook_id}:
delete:
consumes:
- application/json
operationId: DeleteCurrentOrgWebhook
parameters:
- description: webhook ID
in: path
name: webhook_id
required: true
type: string
produces:
- application/json
responses:
'204':
description: No Content
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: delete a webhook for the current org
tags:
- orgs
patch:
consumes:
- application/json
description: Replaces the webhook's interests filter and/or rotates its signing secret. WebhookURL is part of the (org_id, webhook_url) unique index and cannot be changed in place — delete and recreate to rename.
operationId: UpdateCurrentOrgWebhook
parameters:
- description: webhook ID
in: path
name: webhook_id
required: true
type: string
- description: Input
in: body
name: req
required: true
schema:
$ref: '#/definitions/service.UpdateCurrentOrgWebhookRequest'
produces:
- application/json
responses:
'200':
description: OK
schema:
$ref: '#/definitions/service.CurrentOrgWebhookResponse'
'400':
description: Bad Request
schema:
$ref: '#/definitions/stderr.ErrResponse'
'401':
description: Unauthorized
schema:
$ref: '#/definitions/stderr.ErrResponse'
'403':
description: Forbidden
schema:
$ref: '#/definitions/stderr.ErrResponse'
'404':
description: Not Found
schema:
$ref: '#/definitions/stderr.ErrResponse'
'500':
description: Internal Server Error
schema:
$ref: '#/definitions/stderr.ErrResponse'
security:
- APIKey: []
- OrgID: []
summary: update a webhook for the current org
tags:
- orgs
/v1/orgs/features:
get:
consumes:
- application/json
description: 'Get all available organization feature flags with their descriptions.
This endpoint returns a list of all feature flags that can be enabled or disabled for organizations, along with detailed descriptions of what each feature provides.
Feature flags control access to specific platform capabilities and can be managed by administrators through the admin API endpoints.
'
operationId: GetOrgFeatures
produces:
- application/json
responses:
'200':
description: OK
schema:
items:
$ref: '#/definitions/app.OrgFeatureInfo'
type: array
security:
- APIKey: []
- OrgID: []
summary: get available org features
tags:
- orgs
definitions:
configs.OCIRegistryType:
enum:
- ecr
- acr
- gar
- private_oci
- public_oci
type: string
x-enum-varnames:
- OCIRegistryTypeECR
- OCIRegistryTypeACR
- OCIRegistryTypeGAR
- OCIRegistryTypePrivateOCI
- OCIRegistryTypePublicOCI
plantypes.OCIArtifactReference:
properties:
digest:
description: Digest is the immutable artifact digest (e.g., sha256:abc123...)
type: string
tag:
description: Tag is the artifact tag (typically the build ID)
type: string
url:
description: URL is the full artifact URL (e.g., registry.nuon.co/org_id/app_id)
type: string
type: object
plantypes.BuildPlan:
properties:
component_build_id:
type: string
component_id:
type: string
container_image_pull_plan:
$ref: '#/definitions/plantypes.ContainerImagePullPlan'
docker_build_plan:
$ref: '#/definitions/plantypes.DockerBuildPlan'
dst_registry:
$ref: '#/definitions/configs.OCIRegistryRepository'
dst_tag:
type: string
git_source:
$ref: '#/definitions/plantypes.GitSource'
helm_build_plan:
$ref: '#/definitions/plantypes.HelmBuildPlan'
kubernetes_manifest_build_plan:
$ref: '#/definitions/plantypes.KubernetesManifestBuildPlan'
pulumi_build_plan:
$ref: '#/definitions/plantypes.PulumiBuildPlan'
sandbox_mode:
$ref: '#/definitions/plantypes.SandboxMode'
terraform_build_plan:
$ref: '#/definitions/plantypes.TerraformBuildPlan'
required:
- dst_registry
- dst_tag
type: object
compositeerrors.Section:
properties:
body:
type: string
heading:
type: string
kind:
$ref: '#/definitions/compositeerrors.SectionKind'
type: object
github_com_nuonco_nuon_pkg_labels.Labels:
additionalProperties:
type: string
type: object
app.DockerBuildComponentConfig:
properties:
build_args:
items:
type: string
type: array
component_config_connection_id:
description: value
type: string
connected_github_vcs_config:
$ref: '#/definitions/app.ConnectedGithubVCSConfig'
created_at:
type: string
created_by_id:
type: string
dockerfile:
type: string
env_vars:
additionalProperties:
type: string
type: object
id:
type: string
public_git_vcs_config:
$ref: '#/definitions/app.PublicGitVCSConfig'
target:
type: string
updated_at:
type: string
type: object
app.CompositeStatus:
properties:
created_at_ts:
type: integer
created_by_id:
type: string
history:
items:
$ref: '#/definitions/app.CompositeStatus'
type: array
metadata:
additionalProperties: {}
type: object
status:
$ref: '#/definitions/app.Status'
status_human_description:
type: string
type: object
app.ConnectedGithubVCSConfig:
properties:
branch:
type: string
component_config_id:
description: parent component
type: string
component_config_type:
type: string
created_at:
type: string
created_by_id:
type: string
directory:
type: string
id:
type: string
path_filter:
type: string
repo:
type: string
repo_name:
type: string
repo_owner:
type: string
updated_at:
type: string
vcs_connection:
$ref: '#/definitions/app.VCSConnection'
vcs_connection_id:
type: string
type: object
state.RunnerState:
properties:
id:
type: string
populated:
type: boolean
runner_group_id:
type: string
status:
type: string
type: object
plantypes.SyncOCIPlan:
properties:
dst_registry:
$ref: '#/definitions/configs.OCIRegistryRepository'
dst_tag:
type: string
sandbox_mode:
$ref: '#/definitions/plantypes.SandboxMode'
src_registry:
$ref: '#/definitions/configs.OCIRegistryRepository'
src_tag:
type: string
required:
- dst_registry
- dst_tag
- src_registry
- src_tag
type: object
app.Queue:
properties:
created_at:
type: string
created_by_id:
type: string
emitters:
items:
$ref: '#/definitions/app.QueueEmitter'
type: array
id:
type: string
idle_timeout:
type: integer
max_depth:
type: integer
max_in_flight:
type: integer
metadata:
additionalProperties:
type: string
type: object
name:
type: string
org_id:
type: string
owner_id:
type: string
owner_type:
type: string
queue_signal:
items:
$ref: '#/definitions/app.QueueSignal'
type: array
status_v2:
$ref: '#/definitions/app.CompositeStatus'
updated_at:
type: string
workflow:
$ref: '#/definitions/signaldb.WorkflowRef'
type: object
app.OCIArtifact:
properties:
annotations:
additionalProperties:
type: string
type: object
architecture:
type: string
artifact_type:
type: string
created_at:
type: string
created_by_id:
type: string
digest:
type: string
id:
type: string
media_type:
type: string
org_id:
type: string
os:
description: Platform fields
type: string
os_features:
items:
type: string
type: array
os_version:
type: string
owner_id:
type: string
# --- truncated at 32 KB (153 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/nuon/refs/heads/main/openapi/nuon-orgs-api-openapi.yml