NimbusNexus V1:keystone:projects API
The v1:keystone:projects API from NimbusNexus — 4 operation(s) for v1:keystone:projects.
The v1:keystone:projects API from NimbusNexus — 4 operation(s) for v1:keystone:projects.
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-projects-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:projects 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:projects
paths:
/api/v1/projects/:
get:
tags:
- v1:keystone:projects
summary: Find Projects
description: List projects accessible to the caller within the current scope, optionally filtered by a search term.
operationId: find_projects_api_v1_projects__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: user
in: query
required: false
schema:
anyOf:
- type: string
minLength: 1
- type: 'null'
title: User
- name: domain
in: query
required: false
schema:
anyOf:
- type: string
minLength: 1
- type: 'null'
title: Domain
- name: parent
in: query
required: false
schema:
anyOf:
- type: string
minLength: 1
- type: 'null'
title: Parent
- name: search
in: query
required: false
schema:
anyOf:
- type: string
minLength: 1
- type: 'null'
title: Search
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectsSuccessOutFind'
'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'
post:
tags:
- v1:keystone:projects
summary: Project Create
description: Create a new project in the given domain (subject to the per-domain limit) and grant the caller the admin role on it.
operationId: project_create_api_v1_projects__post
security:
- SwaggerLogin: []
- ApiKeyAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectCreate'
responses:
'201':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectsSuccessOutCreate'
'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:projects
summary: Project Delete
description: Delete a project after first removing any networks attached to it.
operationId: project_delete_api_v1_projects__delete
security:
- SwaggerLogin: []
- ApiKeyAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectDelete'
responses:
'204':
description: Successful Response
'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'
/api/v1/projects/{project_id}:
patch:
tags:
- v1:keystone:projects
summary: Project Update
description: Update the mutable attributes (name, description, enabled) of an existing project.
operationId: project_update_api_v1_projects__project_id__patch
security:
- SwaggerLogin: []
- ApiKeyAuth: []
parameters:
- name: project_id
in: path
required: true
schema:
type: string
title: Project Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectUpdate'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ProjectsSuccessOutCreate'
'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'
/api/v1/projects/invite:
post:
tags:
- v1:keystone:projects
summary: Invite To Project
description: Invite a user by email to a project with the specified role and notify them in-app and via email.
operationId: invite_to_project_api_v1_projects_invite_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/InviteProject'
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/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: []
/api/v1/projects/invite_action:
post:
tags:
- v1:keystone:projects
summary: Invite Action
description: Accept or decline a pending project invitation, applying or revoking the offered role accordingly.
operationId: invite_action_api_v1_projects_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:
ProjectUpdate:
properties:
project_name:
anyOf:
- type: string
- type: 'null'
title: Project Name
project_description:
anyOf:
- type: string
- type: 'null'
title: Project Description
enabled:
anyOf:
- type: boolean
- type: 'null'
title: Enabled
type: object
title: ProjectUpdate
ProjectDelete:
properties:
id:
type: string
minLength: 1
title: Id
description: Project ID
type: object
required:
- id
title: ProjectDelete
ProjectOutBase:
properties:
id:
type: string
title: Id
name:
type: string
title: Name
description:
anyOf:
- type: string
- type: 'null'
title: Description
domain:
type: string
title: Domain
domain_id:
type: string
title: Domain Id
enabled:
type: boolean
title: Enabled
type: object
required:
- id
- name
- domain
- domain_id
- enabled
title: ProjectOutBase
ProjectCreate:
properties:
domain_id:
type: string
title: Domain Id
project_name:
type: string
title: Project Name
project_description:
anyOf:
- type: string
- type: 'null'
title: Project Description
enabled:
type: boolean
title: Enabled
default: true
type: object
required:
- domain_id
- project_name
title: ProjectCreate
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
InviteProject:
properties:
project_id:
type: string
minLength: 1
title: Project Id
description: Project ID
role_id:
type: string
title: Role Id
email:
type: string
format: email
title: Email
type: object
required:
- project_id
- role_id
- email
title: InviteProject
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
ProjectsSuccessOutCreate:
properties:
success:
type: boolean
title: Success
default: true
data:
$ref: '#/components/schemas/ProjectOutBase'
type: object
required:
- data
title: ProjectsSuccessOutCreate
ActionInvProject:
properties:
access:
type: boolean
title: Access
notification_id:
type: string
title: Notification Id
type: object
required:
- access
- notification_id
title: ActionInvProject
ProjectsSuccessOutFind:
properties:
success:
type: boolean
title: Success
default: true
data:
items:
$ref: '#/components/schemas/ProjectOutBase'
type: array
title: Data
type: object
required:
- data
title: ProjectsSuccessOutFind
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>')