Quantum Art Auth API
The Auth API from Quantum Art — 5 operation(s) for auth.
The Auth API from Quantum Art — 5 operation(s) for auth.
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/quantum-art-auth-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: QaaS Backend Auth API
description: Quantum-as-a-Service Backend providing task management, metrics, and real-time communication
version: 1.0.0
tags:
- name: Auth
paths:
/auth/login:
post:
summary: Login
description: 'Phase 1 of login: validate the password, then either issue tokens
(bypass accounts / MFA disabled) or start an email MFA challenge.
When a challenge is started this returns ``{mfa_required: true, mfa_token}``
and emails a one-time code; the client completes the flow via
``POST /auth/login/verify-mfa``.'
operationId: login_auth_login_post
requestBody:
content:
application/json:
schema:
additionalProperties: true
type: object
title: Credentials
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
tags:
- Auth
/auth/login/verify-mfa:
post:
summary: Verify Mfa
description: 'Phase 2 of login: verify the emailed code and issue JWT tokens.'
operationId: verify_mfa_auth_login_verify_mfa_post
requestBody:
content:
application/json:
schema:
additionalProperties: true
type: object
title: Payload
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
tags:
- Auth
/auth/login/resend-mfa:
post:
summary: Resend Mfa
description: Re-send a fresh verification code for an in-flight MFA session.
operationId: resend_mfa_auth_login_resend_mfa_post
requestBody:
content:
application/json:
schema:
additionalProperties: true
type: object
title: Payload
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
tags:
- Auth
/auth/register:
post:
tags:
- Auth
summary: Register
description: 'Public registration endpoint — creates a pending registration request.
Body shape (form v2)::
{
"first_name": str, # required
"last_name": str, # required
"email": str, # required
"organization": str, # required
"form_answers": {
"heard_from": str, # required
"interest": str, # required
"country_of_residency": str, # required
"additional_info": str | null, # optional
"keep_updated": bool # optional marketing opt-in
},
"legal_accepted": bool, # must be true
"recaptcha_token": str | null # reCAPTCHA v2 token
}
No credentials are collected: the activation pipeline mints them
after an admin confirms the request and the user completes
activation. See migration_2026_05_registration_v2.sql.
The `recaptcha_token` is the "I''m not a robot" response from the
public form. It is verified here (a no-op unless RECAPTCHA_SECRET_KEY
is configured) and never persisted — `submit_request` ignores unknown
top-level keys.'
operationId: register_auth_register_post
requestBody:
content:
application/json:
schema:
additionalProperties: true
type: object
title: Registration Data
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/auth/verify-email/{token}:
get:
tags:
- Auth
summary: Verify Email
description: 'Flip a pending request to ''verified'' via the email link.
Returns a friendly HTML page rather than a JSON body — this URL is
clicked from a mail client, not consumed by JavaScript. The HTTP
status is 200 on success or 400 on a failure case (invalid /
expired) so any monitoring still sees the right signal.'
operationId: verify_email_auth_verify_email__token__get
parameters:
- name: token
in: path
required: true
schema:
type: string
title: Token
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
securitySchemes:
HTTPBearer:
type: http
scheme: bearer