invoicepdfs-com Auth API

The auth API from invoicepdfs-com — 7 operation(s) for auth.

Operations 8

GET /api/v1/auth/me Get Current User #
PATCH /api/v1/auth/me Update Current User #
POST /api/v1/auth/register Register #
POST /api/v1/auth/token Exchange Auth Token #
POST /api/v1/auth/logout Logout #
POST /api/v1/auth/refresh Refresh Access Token #
POST /api/v1/auth/forgot-password Request Password Reset #
POST /api/v1/auth/reset-password Reset Password #

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/invoicepdfs-com:invoicepdfs-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

invoicepdfs-com-auth-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Invoicepdfs Com Auth API
  version: 0.3.0
  contact:
    name: InvoicePDFs
    url: https://invoicepdfs.com/
  license:
    name: MIT
  description: 'Operations tagged auth across 2 of this provider''s published API definitions: openapi.json, invoicepdfs-com-openapi.json. Each path carries the servers of the definition it was published in.'
tags:
- name: Auth
paths:
  /api/v1/auth/me:
    get:
      tags:
      - Auth
      summary: Get Current User
      description: 'The account behind the current credential, and the plan it is on.


        Works with either an API key or a Firebase token, so it is the cheapest

        way to confirm a credential is live and see what it can reach.'
      operationId: get_current_user
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthMeResponse'
      security:
      - HTTPBearer: []
      x-visibility: internal
    patch:
      tags:
      - Auth
      summary: Update Current User
      description: Update the authenticated account's name or email.
      operationId: update_current_user
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuthMePatchRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthMeResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
      security:
      - HTTPBearer: []
      x-visibility: internal
  /api/v1/auth/register:
    post:
      tags:
      - Auth
      summary: Register
      description: 'Register a new account using a Firebase ID token.


        The client authenticates with Firebase (email/password, Google, etc.)

        and sends the resulting ID token here to create an InvoicePDFs account.'
      operationId: register
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuthRegisterRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthRegisterResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
      x-visibility: internal
  /api/v1/auth/token:
    post:
      tags:
      - Auth
      summary: Exchange Auth Token
      description: 'Exchange a Firebase ID token for account info.


        Use this on login: the client authenticates with Firebase, sends the ID

        token here, and receives the InvoicePDFs account details. The Firebase

        token itself is used as the Bearer token for subsequent API calls.'
      operationId: exchange_auth_token
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuthTokenRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthTokenResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
      x-visibility: internal
  /api/v1/auth/logout:
    post:
      tags:
      - Auth
      summary: Logout
      description: Revoke all Firebase refresh tokens for the authenticated user.
      operationId: logout
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthMessageResponse'
      security:
      - HTTPBearer: []
      x-visibility: internal
  /api/v1/auth/refresh:
    post:
      tags:
      - Auth
      summary: Refresh Access Token
      description: Exchange a Firebase refresh token for a new ID token.
      operationId: refresh_access_token
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuthRefreshRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthRefreshResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
      x-visibility: internal
  /api/v1/auth/forgot-password:
    post:
      tags:
      - Auth
      summary: Request Password Reset
      description: Send a password reset email via Firebase.
      operationId: request_password_reset
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuthForgotPasswordRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthMessageResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
      x-visibility: internal
  /api/v1/auth/reset-password:
    post:
      tags:
      - Auth
      summary: Reset Password
      description: Confirm a password reset using the code from the reset email.
      operationId: reset_password
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuthResetPasswordRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthMessageResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
      x-visibility: internal
components:
  schemas:
    AuthForgotPasswordRequest:
      properties:
        email:
          type: string
          title: Email
          description: Email address of the account
      type: object
      required:
      - email
      title: AuthForgotPasswordRequest
    AuthMeResponse:
      properties:
        data:
          $ref: '#/components/schemas/AuthMeData'
      type: object
      required:
      - data
      title: AuthMeResponse
    AuthRegisterRequest:
      properties:
        id_token:
          type: string
          title: Id Token
          description: Firebase ID token from client-side auth
        name:
          anyOf:
          - type: string
          - type: 'null'
          title: Name
          description: Display name for the account
      type: object
      required:
      - id_token
      title: AuthRegisterRequest
    AuthMeData:
      properties:
        account:
          $ref: '#/components/schemas/AuthMeAccount'
      type: object
      required:
      - account
      title: AuthMeData
    AuthTokenRequest:
      properties:
        id_token:
          type: string
          title: Id Token
          description: Firebase ID token from client-side auth
      type: object
      required:
      - id_token
      title: AuthTokenRequest
    AuthResetPasswordRequest:
      properties:
        oob_code:
          type: string
          title: Oob Code
          description: Code from the password reset email
        new_password:
          type: string
          minLength: 6
          title: New Password
          description: New password
      type: object
      required:
      - oob_code
      - new_password
      title: AuthResetPasswordRequest
    AuthTokenResponse:
      properties:
        data:
          $ref: '#/components/schemas/AuthAccountData'
      type: object
      required:
      - data
      title: AuthTokenResponse
    AuthMeAccount:
      properties:
        id:
          type: string
          title: Id
        name:
          type: string
          title: Name
        plan_id:
          type: string
          title: Plan Id
        plan_name:
          type: string
          title: Plan Name
      type: object
      required:
      - id
      - name
      - plan_id
      - plan_name
      title: AuthMeAccount
    AuthRegisterResponse:
      properties:
        data:
          $ref: '#/components/schemas/AuthAccountData'
      type: object
      required:
      - data
      title: AuthRegisterResponse
    AuthRefreshRequest:
      properties:
        refresh_token:
          type: string
          title: Refresh Token
          description: Firebase refresh token
      type: object
      required:
      - refresh_token
      title: AuthRefreshRequest
    AuthMePatchRequest:
      properties:
        name:
          type: string
          maxLength: 256
          title: Name
        email:
          anyOf:
          - type: string
            maxLength: 256
          - type: 'null'
          title: Email
      type: object
      title: AuthMePatchRequest
    ApiErrorResponse:
      type: object
      title: ApiErrorResponse
      properties:
        error:
          type: object
          properties:
            status:
              type: integer
              example: 422
              description: HTTP status, mirroring the response status line.
            code:
              type: string
              example: unprocessable_entity
            message:
              type: string
              example: Request validation failed
            request_id:
              type: string
              nullable: true
              description: Trace id for this request; also returned as X-Trace-Id.
            details:
              type: object
              nullable: true
              description: Error-specific context. Validation failures carry `fields`.
          required:
          - status
          - code
          - message
      required:
      - error
    AuthAccountData:
      properties:
        account_id:
          type: string
          title: Account Id
        name:
          type: string
          title: Name
        email:
          anyOf:
          - type: string
          - type: 'null'
          title: Email
        plan_id:
          type: string
          title: Plan Id
        plan_name:
          type: string
          title: Plan Name
      type: object
      required:
      - account_id
      - name
      - plan_id
      - plan_name
      title: AuthAccountData
    AuthRefreshResponse:
      properties:
        data:
          $ref: '#/components/schemas/AuthRefreshData'
      type: object
      required:
      - data
      title: AuthRefreshResponse
    AuthRefreshData:
      properties:
        id_token:
          type: string
          title: Id Token
        refresh_token:
          type: string
          title: Refresh Token
        expires_in:
          type: integer
          title: Expires In
      type: object
      required:
      - id_token
      - refresh_token
      - expires_in
      title: AuthRefreshData
    AuthMessageResponse:
      properties:
        data:
          additionalProperties: true
          type: object
          title: Data
      type: object
      required:
      - data
      title: AuthMessageResponse
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer
x-refined-from:
- openapi.json
- invoicepdfs-com-openapi.json
x-internal-tags:
- auth
- jobs
- logs