Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/nuon-general-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
OpenAPI Specification
openapi: 3.2.0
info:
contact:
email: support@nuon.co
name: Nuon Support
description: API for managing nuon apps, components, installs, and actions.
title: Nuon accounts General API
version: 0.19.1074
servers:
- url: https://api.nuon.co/
tags:
- description: general
name: general
paths:
/v1/general/cli-config:
get:
description: 'Returns CLI configuration and settings.
'
operationId: GetCLIConfig
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/service.CLIConfig'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
summary: Get config for cli
tags:
- general
/v1/general/cloud-platform/{cloud_platform}/regions:
get:
description: 'Return region metadata for the Nuon supported cloud platforms.
'
operationId: GetCloudPlatformRegions
parameters:
- description: cloud platform
in: path
name: cloud_platform
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
items:
$ref: '#/components/schemas/app.CloudPlatformRegion'
type: array
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
summary: Get regions for a cloud platform
tags:
- general
/v1/general/config-schema:
get:
description: 'Return jsonschemas for Nuon configs. These can be used in frontmatter in most editors that have a TOML LSP (such as
[Taplo](https://taplo.tamasfe.dev/) configured.
```toml
#:schema https://api.nuon.co/v1/general/config-schema?source=inputs
description = "description"
```
You can pass in a valid source argument to render within a specific config file:
- input
- input-group
- installer
- sandbox
- runner
- docker_build
- container_image
- helm
- terraform
- runbook
- job
'
operationId: GetConfigSchema
parameters:
- description: return a schema for a source file
in: query
name: type
schema:
type: string
- description: deprecated alias for type; responses include a Deprecation header when used
in: query
name: source
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema: {}
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
summary: Get jsonschema for config file (deprecated query form)
tags:
- general
/v1/general/config-schema/{type}:
get:
description: 'Return jsonschemas for Nuon configs. These can be used in frontmatter in most editors that have a TOML LSP (such as
[Taplo](https://taplo.tamasfe.dev/) configured.
```toml
#:schema https://api.nuon.co/v1/general/config-schema?source=inputs
description = "description"
```
You can pass in a valid source argument to render within a specific config file:
- input
- input-group
- installer
- sandbox
- runner
- docker_build
- container_image
- helm
- terraform
- runbook
- job
'
operationId: GetConfigSchemaByType
parameters:
- description: config file type, e.g. sandbox, terraform, action
in: path
name: type
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema: {}
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
summary: Get jsonschema for a config file type
tags:
- general
/v1/general/current-user:
get:
description: 'Returns the current authenticated user account.
'
operationId: GetCurrentUser
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/app.Account'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/stderr.ErrResponse'
security:
- APIKey: []
summary: Get current user
tags:
- general
/v1/general/waitlist:
post:
description: 'Add an entry to the waitlist.
'
operationId: CreateWaitlist
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/app.Waitlist'
security:
- APIKey: []
summary: Allow user to be added to an org waitlist.
tags:
- general
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/service.WaitlistRequest'
description: Input
required: true
components:
schemas:
app.AccountType:
enum:
- auth
- auth0
- service
- canary
- integration
type: string
x-enum-varnames:
- AccountTypeAuth
- AccountTypeAuth0
- AccountTypeService
- AccountTypeCanary
- AccountTypeIntegration
app.Account:
properties:
account_type:
$ref: '#/components/schemas/app.AccountType'
created_at:
type: string
email:
type: string
id:
type: string
org_ids:
description: ReadOnly Fields
items:
type: string
type: array
permissions:
$ref: '#/components/schemas/permissions.Set'
roles:
items:
$ref: '#/components/schemas/app.Role'
type: array
subject:
type: string
updated_at:
type: string
user_journeys:
items:
$ref: '#/components/schemas/app.UserJourney'
type: array
type: object
service.CLIConfig:
properties:
auth_audience:
type: string
auth_client_id:
type: string
auth_domain:
type: string
dashboard_url:
type: string
nuon_auth_enabled:
type: boolean
root_domain:
type: string
type: object
app.UserJourneyStep:
properties:
complete:
type: boolean
completed_at:
description: Top-level completion tracking fields
type: string
completion_method:
type: string
completion_source:
type: string
metadata:
additionalProperties: true
description: Flexible metadata for business data
type: object
name:
type: string
title:
type: string
type: object
permissions.Permission:
enum:
- unknown
- all
- create
- read
- update
- delete
type: string
x-enum-varnames:
- PermissionUnknown
- PermissionAll
- PermissionCreate
- PermissionRead
- PermissionUpdate
- PermissionDelete
app.RoleType:
enum:
- org_admin
- org_support
- installer
- runner
- hosted-installer
type: string
x-enum-varnames:
- RoleTypeOrgAdmin
- RoleTypeOrgSupport
- RoleTypeInstaller
- RoleTypeRunner
- RoleTypeHostedInstaller
permissions.Set:
additionalProperties:
$ref: '#/components/schemas/permissions.Permission'
type: object
stderr.ErrResponse:
properties:
description:
type: string
error:
type: string
user_error:
type: boolean
type: object
app.PolicyName:
enum:
- org_admin
- org_support
- installer
- runner
- hosted_installer
type: string
x-enum-varnames:
- PolicyNameOrgAdmin
- PolicyNameOrgSupport
- PolicyNameInstaller
- PolicyNameRunner
- PolicyNameHostedInstaller
app.CloudPlatformRegion:
properties:
display_name:
type: string
icon:
type: string
name:
type: string
value:
type: string
type: object
app.Policy:
properties:
created_at:
type: string
created_by_id:
type: string
id:
type: string
name:
$ref: '#/components/schemas/app.PolicyName'
permissions:
additionalProperties:
type: string
description: Permissions are used to track granular permissions for each domain
type: object
role_id:
type: string
updated_at:
type: string
type: object
app.UserJourney:
properties:
name:
type: string
steps:
items:
$ref: '#/components/schemas/app.UserJourneyStep'
type: array
title:
type: string
type: object
app.Role:
properties:
createdBy:
$ref: '#/components/schemas/app.Account'
created_at:
type: string
created_by_id:
type: string
id:
type: string
policies:
items:
$ref: '#/components/schemas/app.Policy'
type: array
role_type:
$ref: '#/components/schemas/app.RoleType'
updated_at:
type: string
type: object
service.WaitlistRequest:
properties:
org_name:
type: string
required:
- org_name
type: object
app.Waitlist:
properties:
created_at:
type: string
created_by_id:
type: string
id:
type: string
org_name:
type: string
updated_at:
type: string
type: object
securitySchemes:
APIKey:
description: Type "Bearer" followed by a space and token.
in: header
name: Authorization
type: apiKey
OrgID:
description: Nuon org ID
in: header
name: X-Nuon-Org-ID
type: apiKey