NimbusNexus V1:keystone:domains API
The v1:keystone:domains API from NimbusNexus — 4 operation(s) for v1:keystone:domains.
The v1:keystone:domains API from NimbusNexus — 4 operation(s) for v1:keystone:domains.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/nimbusnexus:nimbusnexus-v1-keystone-domains-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: NimbusNexus API — External V1:keystone:domains API
description: 'External (public) API intended for client-facing integrations and the web portal.
Authentication:
- This API uses JWT Bearer authentication.
- In Swagger UI, click ''Authorize'' and sign in via the configured token endpoint.
- Swagger will automatically attach the header: Authorization: Bearer .'
version: test
servers:
- url: /
description: Current host
- url: https://fastapi.dev.nimbusnexus.net
description: Development
security:
- SwaggerLogin: []
- ApiKeyAuth: []
tags:
- name: v1:keystone:domains
paths:
/api/v1/domains/:
get:
tags:
- v1:keystone:domains
summary: Find Domain
description: List domains visible to the caller, optionally filtered by a name search term.
operationId: find_domain_api_v1_domains__get
security:
- SwaggerLogin: []
- ApiKeyAuth: []
parameters:
- name: admin_domain
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Admin Domain
- name: admin_project
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Admin Project
- name: search
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Search
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/DomainSuccessOutFind'
'401':
description: Unauthorized
content:
application/json:
example:
success: false
message: Unauthorized | Invalid token | Expired token | Authentication required
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'403':
description: Forbidden
content:
application/json:
example:
success: false
message: Forbidden
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'422':
description: Validation error
content:
application/json:
example:
success: false
errors:
field:
- Invalid value
schema:
$ref: '#/components/schemas/ResponseValidationErrorOut'
'500':
description: Internal Server Error
content:
application/json:
example:
success: false
message: Internal Server Error
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
post:
tags:
- v1:keystone:domains
summary: Create Domain
description: Create a new domain and grant the calling user the admin role on it.
operationId: create_domain_api_v1_domains__post
security:
- SwaggerLogin: []
- ApiKeyAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateDomain'
responses:
'201':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/DomainSuccessOutCreate'
'400':
description: Bad Request
content:
application/json:
example:
success: false
message: Bad Request
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'401':
description: Unauthorized
content:
application/json:
example:
success: false
message: Unauthorized | Invalid token | Expired token | Authentication required
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'403':
description: Forbidden
content:
application/json:
example:
success: false
message: Forbidden
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'422':
description: Validation error
content:
application/json:
example:
success: false
errors:
field:
- Invalid value
schema:
$ref: '#/components/schemas/ResponseValidationErrorOut'
'500':
description: Internal Server Error
content:
application/json:
example:
success: false
message: Internal Server Error
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
patch:
tags:
- v1:keystone:domains
summary: Update Domain
description: Update the name, description or enabled state of an existing domain.
operationId: update_domain_api_v1_domains__patch
security:
- SwaggerLogin: []
- ApiKeyAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateDomain'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/DomainSuccessOutCreate'
'422':
description: Validation error
content:
application/json:
example:
success: false
errors:
field:
- Invalid value
schema:
$ref: '#/components/schemas/ResponseValidationErrorOut'
'400':
description: Bad Request
content:
application/json:
example:
success: false
message: Bad Request
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'401':
description: Unauthorized
content:
application/json:
example:
success: false
message: Unauthorized | Invalid token | Expired token | Authentication required
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'403':
description: Forbidden
content:
application/json:
example:
success: false
message: Forbidden
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'404':
description: Not Found
content:
application/json:
example:
success: false
message: Not Found
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'409':
description: Conflict
content:
application/json:
example:
success: false
message: Conflict
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'429':
description: Too Many Requests
headers:
Retry-After:
description: Seconds to wait before retrying the request
schema:
type: string
example: '30'
content:
application/json:
example:
code: 429
message: Too many requests
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'500':
description: Internal Server Error
content:
application/json:
example:
success: false
message: Internal Server Error
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
delete:
tags:
- v1:keystone:domains
summary: Delete Domain
description: Disable (if needed) and delete a domain along with its descendants.
operationId: delete_domain_api_v1_domains__delete
security:
- SwaggerLogin: []
- ApiKeyAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteDomain'
responses:
'204':
description: Successful Response
'401':
description: Unauthorized
content:
application/json:
example:
success: false
message: Unauthorized | Invalid token | Expired token | Authentication required
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'403':
description: Forbidden
content:
application/json:
example:
success: false
message: Forbidden
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'404':
description: Not Found
content:
application/json:
example:
success: false
message: Not Found
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'500':
description: Internal Server Error
content:
application/json:
example:
success: false
message: Internal Server Error
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/domains/{domain_id}:
get:
tags:
- v1:keystone:domains
summary: Show Domain
description: Retrieve a single domain by ID.
operationId: show_domain_api_v1_domains__domain_id__get
security:
- SwaggerLogin: []
- ApiKeyAuth: []
parameters:
- name: domain_id
in: path
required: true
schema:
type: string
title: Domain Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/DomainSuccessOutCreate'
'401':
description: Unauthorized
content:
application/json:
example:
success: false
message: Unauthorized | Invalid token | Expired token | Authentication required
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'403':
description: Forbidden
content:
application/json:
example:
success: false
message: Forbidden
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
'422':
description: Validation error
content:
application/json:
example:
success: false
errors:
field:
- Invalid value
schema:
$ref: '#/components/schemas/ResponseValidationErrorOut'
'500':
description: Internal Server Error
content:
application/json:
example:
success: false
message: Internal Server Error
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
/api/v1/domains/invite:
post:
tags:
- v1:keystone:domains
summary: Invite To Domain
description: Invite a user by email to a domain with the specified role and notify them in-app and via email.
operationId: invite_to_domain_api_v1_domains_invite_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/InviteDomain'
required: true
responses:
'201':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ResponseSuccessOutBase'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- SwaggerLogin: []
- ApiKeyAuth: []
/api/v1/domains/invite_action:
post:
tags:
- v1:keystone:domains
summary: Invite Action
description: Accept or decline a pending domain invitation, applying or revoking the offered role accordingly.
operationId: invite_action_api_v1_domains_invite_action_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ActionInvProject'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ResponseSuccessOutBase'
'422':
description: Validation error
content:
application/json:
schema:
$ref: '#/components/schemas/ResponseValidationErrorOut'
example:
success: false
errors:
field:
- Invalid value
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
example:
success: false
message: Bad Request
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
example:
success: false
message: Unauthorized | Invalid token | Expired token | Authentication required
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
example:
success: false
message: Forbidden
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
example:
success: false
message: Not Found
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
example:
success: false
message: Conflict
'429':
description: Too Many Requests
headers:
Retry-After:
description: Seconds to wait before retrying the request
schema:
type: string
example: '30'
content:
application/json:
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
example:
code: 429
message: Too many requests
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ResponseBaseErrorOut'
example:
success: false
message: Internal Server Error
security:
- SwaggerLogin: []
- ApiKeyAuth: []
components:
schemas:
DeleteDomain:
properties:
id:
type: string
minLength: 1
title: Id
description: Domain ID
type: object
required:
- id
title: DeleteDomain
UpdateDomain:
properties:
domain_id:
type: string
minLength: 1
title: Domain Id
description: Domain ID
domain_name:
anyOf:
- type: string
- type: 'null'
title: Domain Name
domain_description:
anyOf:
- type: string
- type: 'null'
title: Domain Description
enabled:
anyOf:
- type: boolean
- type: 'null'
title: Enabled
type: object
required:
- domain_id
title: UpdateDomain
DomainSuccessOutCreate:
properties:
success:
type: boolean
title: Success
default: true
data:
$ref: '#/components/schemas/DomainSuccessOutBase'
type: object
required:
- data
title: DomainSuccessOutCreate
DomainSuccessOutBase:
properties:
success:
type: boolean
title: Success
default: true
id:
type: string
title: Id
name:
anyOf:
- type: string
- type: 'null'
title: Name
description:
anyOf:
- type: string
- type: 'null'
title: Description
enabled:
anyOf:
- type: boolean
- type: 'null'
title: Enabled
type: object
required:
- id
title: DomainSuccessOutBase
DomainSuccessOutFind:
properties:
success:
type: boolean
title: Success
default: true
data:
items:
$ref: '#/components/schemas/DomainSuccessOutBase'
type: array
title: Data
type: object
required:
- data
title: DomainSuccessOutFind
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
type: object
required:
- loc
- msg
- type
title: ValidationError
ResponseBaseErrorOut:
properties:
success:
type: boolean
title: Success
default: false
message:
type: string
title: Message
type: object
required:
- message
title: ResponseBaseErrorOut
ResponseSuccessOutBase:
properties:
success:
type: boolean
title: Success
default: true
type: object
title: ResponseSuccessOutBase
ResponseValidationErrorOut:
properties:
success:
type: boolean
title: Success
default: false
errors:
additionalProperties:
items:
type: string
type: array
type: object
title: Errors
type: object
required:
- errors
title: ResponseValidationErrorOut
InviteDomain:
properties:
domain:
type: string
minLength: 1
title: Domain
description: Project ID
role_id:
type: string
title: Role Id
email:
type: string
format: email
title: Email
type: object
required:
- domain
- role_id
- email
title: InviteDomain
CreateDomain:
properties:
name:
type: string
minLength: 1
title: Name
description: Domain name
description:
anyOf:
- type: string
- type: 'null'
title: Description
enabled:
anyOf:
- type: boolean
- type: 'null'
title: Enabled
default: true
type: object
required:
- name
title: CreateDomain
ActionInvProject:
properties:
access:
type: boolean
title: Access
notification_id:
type: string
title: Notification Id
type: object
required:
- access
- notification_id
title: ActionInvProject
securitySchemes:
HTTPBearer:
type: http
scheme: bearer
APIKeyHeader:
type: apiKey
in: header
name: X-API-Key
SwaggerLogin:
type: oauth2
flows:
password:
tokenUrl: /api/v1/account/login_swagger
scopes: {}
ApiKeyAuth:
type: apiKey
in: header
name: X-API-Key
description: API Key format - base64('<id>:<secret>')