Fax for Agents Auth API

The auth API from Fax for Agents — 18 operation(s) for auth.

Operations 19

GET /v1/auth/providers Which sign-in methods are available #
GET /v1/auth/me The signed-in person, their organizations and the CSRF token #
POST /v1/auth/logout End this session #
POST /v1/auth/switch-organization Look at another organization you belong to #
POST /v1/auth/passkeys/register/options Options for navigator.credentials.create() (fresh session required) #
POST /v1/auth/passkeys/register/verify Store a new passkey after the browser created it #
GET /v1/auth/passkeys Your passkeys #
DELETE /v1/auth/passkeys/{passkey_id} Remove one of your passkeys #
POST /v1/auth/passkeys/login/options Options for navigator.credentials.get() (discoverable, no email needed) #
POST /v1/auth/passkeys/login/verify Sign in with a passkey assertion #
POST /v1/auth/reauth Prove it is you again (passkey now, or a fresh link by mail) before a sensitive… #
GET /v1/auth/oauth/{provider}/start Begin GitHub or Google sign-in (redirects to the provider) #
GET /v1/auth/oauth/{provider}/callback Finish GitHub or Google sign-in (the app forwards its /auth/{provider}/callback… #
POST /v1/auth/invitations/{token}/accept Join the organization an invitation link names (the signed-in email must match) #
GET /v1/auth/sessions Your live sessions #
DELETE /v1/auth/sessions Sign out everywhere else #
DELETE /v1/auth/sessions/{session_id} Revoke one of your sessions #

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/faxforagents:faxforagents-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

faxforagents-auth-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Faxforagents Auth API
  version: 1.4.3
  contact:
    name: Fax for Agents
    url: https://faxforagents.com/contact/
    email: hello@faxforagents.com
  termsOfService: https://faxforagents.com/terms/
  x-refined-note:
  - x-snapshot differs across the merged source definitions and was not carried
  description: 'Operations tagged auth across 2 of this provider''s published API definitions: faxforagents-api-openapi.json, faxforagents-site-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.faxforagents.com
  description: Production
tags:
- name: Auth
paths:
  /v1/auth/providers:
    get:
      tags:
      - Auth
      summary: Which sign-in methods are available
      operationId: get_auth_providers
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Providers'
  /v1/auth/me:
    get:
      tags:
      - Auth
      summary: The signed-in person, their organizations and the CSRF token
      operationId: get_auth_me
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/faxforagents__auth__schemas__Me'
  /v1/auth/logout:
    post:
      tags:
      - Auth
      summary: End this session
      operationId: logout
      responses:
        '204':
          description: Successful Response
  /v1/auth/switch-organization:
    post:
      tags:
      - Auth
      summary: Look at another organization you belong to
      operationId: switch_organization
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SwitchOrganization'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/faxforagents__auth__schemas__Me'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/auth/magic-links:
    post:
      tags:
      - Auth
      summary: Send a sign-in link to an email address (always 202)
      operationId: request_magic_link
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MagicLinkRequest'
        required: true
      responses:
        '202':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Sent'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/auth/magic-links/{token}:
    get:
      tags:
      - Auth
      summary: 'Open a sign-in link: sets the session cookie and redirects to the app'
      operationId: open_magic_link
      parameters:
      - name: token
        in: path
        required: true
        schema:
          type: string
          title: Token
      responses:
        '303':
          description: Redirect to the app, signed in or with an error code in the query.
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/auth/passkeys/register/options:
    post:
      tags:
      - Auth
      summary: Options for navigator.credentials.create() (fresh session required)
      operationId: passkey_register_options
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
                title: Response Passkey Register Options
  /v1/auth/passkeys/register/verify:
    post:
      tags:
      - Auth
      summary: Store a new passkey after the browser created it
      operationId: passkey_register_verify
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PasskeyRegisterVerify'
        required: true
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Passkey'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/auth/passkeys:
    get:
      tags:
      - Auth
      summary: Your passkeys
      operationId: list_passkeys
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PasskeyList'
  /v1/auth/passkeys/{passkey_id}:
    delete:
      tags:
      - Auth
      summary: Remove one of your passkeys
      operationId: delete_passkey
      parameters:
      - name: passkey_id
        in: path
        required: true
        schema:
          type: string
          title: Passkey Id
      responses:
        '204':
          description: Successful Response
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/auth/passkeys/login/options:
    post:
      tags:
      - Auth
      summary: Options for navigator.credentials.get() (discoverable, no email needed)
      operationId: passkey_login_options
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
                title: Response Passkey Login Options
  /v1/auth/passkeys/login/verify:
    post:
      tags:
      - Auth
      summary: Sign in with a passkey assertion
      operationId: passkey_login_verify
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PasskeyLoginVerify'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/faxforagents__auth__schemas__Me'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/auth/reauth:
    post:
      tags:
      - Auth
      summary: Prove it is you again (passkey now, or a fresh link by mail) before a sensitive…
      operationId: reauth
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Reauth'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/faxforagents__auth__schemas__Me'
        '202':
          description: A sign-in link was sent; opening it in this browser refreshes the session.
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/auth/oauth/{provider}/start:
    get:
      tags:
      - Auth
      summary: Begin GitHub or Google sign-in (redirects to the provider)
      operationId: oauth_start
      parameters:
      - name: provider
        in: path
        required: true
        schema:
          type: string
          title: Provider
      - name: next
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            maxLength: 400
          - type: 'null'
          title: Next
      responses:
        '303':
          description: Successful Response
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/auth/oauth/{provider}/callback:
    get:
      tags:
      - Auth
      summary: Finish GitHub or Google sign-in (the app forwards its /auth/{provider}/callback…
      operationId: oauth_callback
      parameters:
      - name: provider
        in: path
        required: true
        schema:
          type: string
          title: Provider
      - name: code
        in: query
        required: false
        schema:
          type: string
          default: ''
          title: Code
      - name: state
        in: query
        required: false
        schema:
          type: string
          default: ''
          title: State
      - name: error
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: Error
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/faxforagents__auth__schemas__Me'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/auth/invitations/{token}/accept:
    post:
      tags:
      - Auth
      summary: Join the organization an invitation link names (the signed-in email must match)
      operationId: accept_invitation
      parameters:
      - name: token
        in: path
        required: true
        schema:
          type: string
          title: Token
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Accepted'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/auth/sessions:
    get:
      tags:
      - Auth
      summary: Your live sessions
      operationId: list_sessions
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionList'
    delete:
      tags:
      - Auth
      summary: Sign out everywhere else
      operationId: revoke_other_sessions
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Revoked'
  /v1/auth/sessions/{session_id}:
    delete:
      tags:
      - Auth
      summary: Revoke one of your sessions
      operationId: revoke_session
      parameters:
      - name: session_id
        in: path
        required: true
        schema:
          type: string
          title: Session Id
      responses:
        '204':
          description: Successful Response
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    faxforagents__auth__schemas__Me:
      properties:
        user:
          $ref: '#/components/schemas/UserOut'
        organization:
          anyOf:
          - $ref: '#/components/schemas/OrganizationSummary'
          - type: 'null'
        organizations:
          items:
            $ref: '#/components/schemas/OrganizationSummary'
          type: array
          title: Organizations
        session:
          $ref: '#/components/schemas/SessionInfo'
        csrf_token:
          type: string
          title: Csrf Token
        passkeys:
          type: integer
          title: Passkeys
        providers:
          $ref: '#/components/schemas/Providers'
      additionalProperties: true
      type: object
      required:
      - user
      - organization
      - organizations
      - session
      - csrf_token
      - passkeys
      - providers
      title: Me
    PasskeyLoginVerify:
      properties:
        credential:
          additionalProperties: true
          type: object
          title: Credential
      additionalProperties: false
      type: object
      required:
      - credential
      title: PasskeyLoginVerify
    Revoked:
      properties:
        revoked:
          type: integer
          title: Revoked
      additionalProperties: true
      type: object
      required:
      - revoked
      title: Revoked
    Providers:
      properties:
        magic_link:
          type: boolean
          title: Magic Link
          default: true
        passkeys:
          type: boolean
          title: Passkeys
          default: true
        github:
          type: boolean
          title: Github
        google:
          type: boolean
          title: Google
      additionalProperties: true
      type: object
      required:
      - github
      - google
      title: Providers
    Reauth:
      properties:
        method:
          type: string
          enum:
          - passkey
          - magic_link
          title: Method
        credential:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Credential
      additionalProperties: false
      type: object
      required:
      - method
      title: Reauth
    SwitchOrganization:
      properties:
        org_id:
          type: string
          title: Org Id
      additionalProperties: false
      type: object
      required:
      - org_id
      title: SwitchOrganization
    UserOut:
      properties:
        id:
          type: string
          title: Id
        email:
          type: string
          title: Email
        name:
          anyOf:
          - type: string
          - type: 'null'
          title: Name
        email_verified:
          type: boolean
          title: Email Verified
        created_at:
          type: string
          title: Created At
        last_login_at:
          anyOf:
          - type: string
          - type: 'null'
          title: Last Login At
      additionalProperties: true
      type: object
      required:
      - id
      - email
      - name
      - email_verified
      - created_at
      - last_login_at
      title: UserOut
    SessionInfo:
      properties:
        id:
          type: string
          title: Id
        auth_method:
          type: string
          title: Auth Method
        authenticated_at:
          type: string
          title: Authenticated At
        fresh_until:
          type: string
          title: Fresh Until
        fresh:
          type: boolean
          title: Fresh
        expires_at:
          type: string
          title: Expires At
      additionalProperties: true
      type: object
      required:
      - id
      - auth_method
      - authenticated_at
      - fresh_until
      - fresh
      - expires_at
      title: SessionInfo
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    OrganizationSummary:
      properties:
        id:
          type: string
          title: Id
        name:
          type: string
          title: Name
        role:
          type: string
          enum:
          - owner
          - admin
          - member
          - viewer
          title: Role
      additionalProperties: true
      type: object
      required:
      - id
      - name
      - role
      title: OrganizationSummary
    Passkey:
      properties:
        id:
          type: string
          title: Id
        label:
          anyOf:
          - type: string
          - type: 'null'
          title: Label
        aaguid:
          anyOf:
          - type: string
          - type: 'null'
          title: Aaguid
        transports:
          anyOf:
          - items:
              type: string
            type: array
          - type: 'null'
          title: Transports
        backup_eligible:
          type: boolean
          title: Backup Eligible
        created_at:
          type: string
          title: Created At
        last_used_at:
          anyOf:
          - type: string
          - type: 'null'
          title: Last Used At
      additionalProperties: true
      type: object
      required:
      - id
      - label
      - aaguid
      - transports
      - backup_eligible
      - created_at
      - last_used_at
      title: Passkey
    SessionOut:
      properties:
        id:
          type: string
          title: Id
        current:
          type: boolean
          title: Current
        auth_method:
          type: string
          title: Auth Method
        ip:
          anyOf:
          - type: string
          - type: 'null'
          title: Ip
        user_agent:
          anyOf:
          - type: string
          - type: 'null'
          title: User Agent
        created_at:
          type: string
          title: Created At
        authenticated_at:
          type: string
          title: Authenticated At
        last_seen_at:
          type: string
          title: Last Seen At
        expires_at:
          type: string
          title: Expires At
      additionalProperties: true
      type: object
      required:
      - id
      - current
      - auth_method
      - ip
      - user_agent
      - created_at
      - authenticated_at
      - last_seen_at
      - expires_at
      title: SessionOut
    PasskeyList:
      properties:
        items:
          items:
            $ref: '#/components/schemas/Passkey'
          type: array
          title: Items
      additionalProperties: true
      type: object
      required:
      - items
      title: PasskeyList
    SessionList:
      properties:
        items:
          items:
            $ref: '#/components/schemas/SessionOut'
          type: array
          title: Items
      additionalProperties: true
      type: object
      required:
      - items
      title: SessionList
    Accepted:
      properties:
        organization:
          $ref: '#/components/schemas/OrganizationSummary'
      additionalProperties: true
      type: object
      required:
      - organization
      title: Accepted
    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
    Sent:
      properties:
        sent:
          type: boolean
          title: Sent
        message:
          type: string
          title: Message
      additionalProperties: true
      type: object
      required:
      - sent
      - message
      title: Sent
    PasskeyRegisterVerify:
      properties:
        credential:
          additionalProperties: true
          type: object
          title: Credential
        label:
          anyOf:
          - type: string
            maxLength: 80
          - type: 'null'
          title: Label
      additionalProperties: false
      type: object
      required:
      - credential
      title: PasskeyRegisterVerify
    MagicLinkRequest:
      properties:
        email:
          type: string
          format: email
          title: Email
        next:
          anyOf:
          - type: string
            maxLength: 400
          - type: 'null'
          title: Next
          description: An in-app path to open after sign-in.
      additionalProperties: false
      type: object
      required:
      - email
      title: MagicLinkRequest
x-refined-from:
- faxforagents-api-openapi.json
- faxforagents-site-openapi.json