Fivexer Auth API

The auth API from Fivexer — 12 operation(s) for auth.

Operations 15

POST /auth/google/start Start Google sign-in for an existing account #
POST /auth/google/complete Exchange a completed Google sign-in for a Fivexer session #
POST /auth/signup Sign up: org + sandbox + test key, immediately #
POST /auth/login Log in for a session token #
POST /auth/code Email a one-time code to sign in or sign up #
POST /auth/code/verify Exchange a code for a session, creating the account if new #
POST /auth/password/forgot Email a one-time password-reset code #
POST /auth/password/reset Set a new password with an emailed code #
POST /auth/verify-email Consume a verification token #
GET /auth/verify-email Verification link target (from the email) #
POST /auth/logout Revoke the current session #
POST /auth/google/link/complete Finish linking Google to the signed-in account #

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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/5xer-com:5xer-com-auth-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

5xer-com-auth-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Fivexer Platform Auth API
  description: 'Routing-as-a-service: create workers and tasks, the platform matches continuously. `/v1` authenticates with a workspace API key (`Authorization: Bearer sk_...`); `/console` with a session token from `/auth`; `/admin` with the operator token.'
  version: 0.1.0
servers:
- url: https://5xer.com
  description: This deployment
tags:
- name: Auth
paths:
  /auth/google/start:
    post:
      summary: Start Google sign-in for an existing account
      tags:
      - Auth
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
              - returnOrigin
              properties:
                returnOrigin:
                  type: string
                  minLength: 1
                  maxLength: 512
                intent:
                  type: string
                  enum:
                  - login
                  - signup
                name:
                  type: string
                  minLength: 1
                  maxLength: 128
                path:
                  type: string
                  enum:
                  - routing
                  - roster
                  - everything
                source:
                  type: object
                  additionalProperties: false
                  properties:
                    from:
                      type: string
                      maxLength: 400
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    gclid:
                      type: string
                      maxLength: 400
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    fbclid:
                      type: string
                      maxLength: 400
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    utmSource:
                      type: string
                      maxLength: 160
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    utmMedium:
                      type: string
                      maxLength: 160
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    utmCampaign:
                      type: string
                      maxLength: 160
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    utmTerm:
                      type: string
                      maxLength: 160
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    utmContent:
                      type: string
                      maxLength: 160
                      pattern: ^[^\u0000-\u001f\u007f]*$
      security: []
      responses:
        '200':
          description: Default Response
      operationId: postAuthGoogleStart
      x-operation-id-source: derived
  /auth/google/complete:
    post:
      summary: Exchange a completed Google sign-in for a Fivexer session
      tags:
      - Auth
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
              - completionKey
              properties:
                completionKey:
                  type: string
                  minLength: 40
                  maxLength: 128
      security: []
      responses:
        '200':
          description: Default Response
      operationId: postAuthGoogleComplete
      x-operation-id-source: derived
  /auth/signup:
    post:
      summary: 'Sign up: org + sandbox + test key, immediately'
      tags:
      - Auth
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
              - email
              - password
              properties:
                email:
                  type: string
                  minLength: 3
                  maxLength: 254
                  pattern: ^\S+@\S+\.\S+$
                password:
                  type: string
                  minLength: 10
                  maxLength: 128
                name:
                  type: string
                  minLength: 1
                  maxLength: 128
                path:
                  type: string
                  enum:
                  - routing
                  - roster
                  - everything
                source:
                  type: object
                  additionalProperties: false
                  properties:
                    from:
                      type: string
                      maxLength: 400
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    gclid:
                      type: string
                      maxLength: 400
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    fbclid:
                      type: string
                      maxLength: 400
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    utmSource:
                      type: string
                      maxLength: 160
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    utmMedium:
                      type: string
                      maxLength: 160
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    utmCampaign:
                      type: string
                      maxLength: 160
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    utmTerm:
                      type: string
                      maxLength: 160
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    utmContent:
                      type: string
                      maxLength: 160
                      pattern: ^[^\u0000-\u001f\u007f]*$
      security: []
      responses:
        '200':
          description: Default Response
      operationId: postAuthSignup
      x-operation-id-source: derived
  /auth/login:
    post:
      summary: Log in for a session token
      tags:
      - Auth
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
              - email
              - password
              properties:
                email:
                  type: string
                  minLength: 3
                  maxLength: 254
                  pattern: ^\S+@\S+\.\S+$
                password:
                  type: string
                  minLength: 1
                  maxLength: 128
      security: []
      responses:
        '200':
          description: Default Response
      operationId: postAuthLogin
      x-operation-id-source: derived
  /auth/code:
    post:
      summary: Email a one-time code to sign in or sign up
      tags:
      - Auth
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
              - email
              properties:
                email:
                  type: string
                  minLength: 3
                  maxLength: 254
                  pattern: ^\S+@\S+\.\S+$
      security: []
      responses:
        '200':
          description: Default Response
      operationId: postAuthCode
      x-operation-id-source: derived
  /auth/code/verify:
    post:
      summary: Exchange a code for a session, creating the account if new
      tags:
      - Auth
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
              - email
              - code
              properties:
                email:
                  type: string
                  minLength: 3
                  maxLength: 254
                  pattern: ^\S+@\S+\.\S+$
                code:
                  type: string
                  pattern: ^[0-9]{4,10}$
                name:
                  type: string
                  minLength: 1
                  maxLength: 128
                path:
                  type: string
                  enum:
                  - routing
                  - roster
                  - everything
                source:
                  type: object
                  additionalProperties: false
                  properties:
                    from:
                      type: string
                      maxLength: 400
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    gclid:
                      type: string
                      maxLength: 400
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    fbclid:
                      type: string
                      maxLength: 400
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    utmSource:
                      type: string
                      maxLength: 160
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    utmMedium:
                      type: string
                      maxLength: 160
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    utmCampaign:
                      type: string
                      maxLength: 160
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    utmTerm:
                      type: string
                      maxLength: 160
                      pattern: ^[^\u0000-\u001f\u007f]*$
                    utmContent:
                      type: string
                      maxLength: 160
                      pattern: ^[^\u0000-\u001f\u007f]*$
      security: []
      responses:
        '200':
          description: Default Response
      operationId: postAuthCodeVerify
      x-operation-id-source: derived
  /auth/password/forgot:
    post:
      summary: Email a one-time password-reset code
      tags:
      - Auth
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
              - email
              properties:
                email:
                  type: string
                  minLength: 3
                  maxLength: 254
                  pattern: ^\S+@\S+\.\S+$
      security: []
      responses:
        '200':
          description: Default Response
      operationId: postAuthPasswordForgot
      x-operation-id-source: derived
  /auth/password/reset:
    post:
      summary: Set a new password with an emailed code
      tags:
      - Auth
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
              - email
              - code
              - password
              properties:
                email:
                  type: string
                  minLength: 3
                  maxLength: 254
                  pattern: ^\S+@\S+\.\S+$
                code:
                  type: string
                  pattern: ^[0-9]{4,10}$
                password:
                  type: string
                  minLength: 10
                  maxLength: 128
      security: []
      responses:
        '200':
          description: Default Response
      operationId: postAuthPasswordReset
      x-operation-id-source: derived
  /auth/verify-email:
    post:
      summary: Consume a verification token
      tags:
      - Auth
      security: []
      responses:
        '200':
          description: Default Response
      operationId: postAuthVerifyEmail
      x-operation-id-source: derived
    get:
      summary: Verification link target (from the email)
      tags:
      - Auth
      security: []
      responses:
        '200':
          description: Default Response
      operationId: getAuthVerifyEmail
      x-operation-id-source: derived
  /auth/logout:
    post:
      summary: Revoke the current session
      tags:
      - Auth
      security:
      - session: []
      responses:
        '200':
          description: Default Response
      operationId: postAuthLogout
      x-operation-id-source: derived
  /auth/google/link:
    get:
      summary: Whether Google is linked to the signed-in account
      tags:
      - Auth
      security:
      - session: []
      responses:
        '200':
          description: Default Response
      operationId: getAuthGoogleLink
      x-operation-id-source: derived
    post:
      summary: Start linking Google to the signed-in account
      tags:
      - Auth
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
              - returnOrigin
              properties:
                returnOrigin:
                  type: string
                  minLength: 1
                  maxLength: 512
      security:
      - session: []
      responses:
        '200':
          description: Default Response
      operationId: postAuthGoogleLink
      x-operation-id-source: derived
    delete:
      summary: Unlink Google from the signed-in account (requires a recent session)
      tags:
      - Auth
      security:
      - session: []
      responses:
        '200':
          description: Default Response
      operationId: deleteAuthGoogleLink
      x-operation-id-source: derived
  /auth/google/link/complete:
    post:
      summary: Finish linking Google to the signed-in account
      tags:
      - Auth
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: false
              required:
              - completionKey
              properties:
                completionKey:
                  type: string
                  minLength: 40
                  maxLength: 128
      security:
      - session: []
      responses:
        '200':
          description: Default Response
      operationId: postAuthGoogleLinkComplete
      x-operation-id-source: derived
components:
  securitySchemes:
    apiKey:
      type: http
      scheme: bearer
      description: Workspace API key (sk_test_/sk_live_)
    session:
      type: http
      scheme: bearer
      description: Console session token (st_...)
    adminToken:
      type: http
      scheme: bearer
      description: Operator ADMIN_TOKEN
    workerToken:
      type: http
      scheme: bearer
      description: Worker session token (wt_...)
    supervisorToken:
      type: http
      scheme: bearer
      description: Supervisor session token (sv_...), scoped to one workspace and optionally one team