StarHunt Auth API

The Auth API from StarHunt — 13 operation(s) for auth.

GitHub OpenAPI

Operations 13

GET /auth/login Auth Login #
GET /auth/callback Auth Callback #
POST /auth/magic/request Magic Request #
GET /auth/magic/verify Magic Verify #
POST /auth/password/signup Password Signup #
GET /auth/password/verify Password Verify #
POST /auth/password/login Password Login #
POST /auth/password/forgot Password Forgot #
POST /auth/password/reset Password Reset #
GET /auth/me Auth Me #
POST /auth/logout Auth Logout #
DELETE /auth/account Delete 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/getstarhunt-com:getstarhunt-com-auth-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

getstarhunt-com-auth-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Fast Auth API
  version: 0.1.0
tags:
- name: Auth
paths:
  /auth/login:
    get:
      summary: Auth Login
      operationId: auth_login_auth_login_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Auth
  /auth/github/link:
    get:
      summary: Auth Github Link
      description: 'Rattache un compte GitHub au compte DEJA connecte.


        Un compte cree par email n''a pas de token GitHub : il ne voit que l''index,

        jamais la recherche en direct. Sans ce chemin, la seule facon d''avoir les

        deux etait d''ouvrir un second compte, et de payer sur l''un en cherchant sur

        l''autre.'
      operationId: auth_github_link_auth_github_link_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Auth
  /auth/callback:
    get:
      summary: Auth Callback
      operationId: auth_callback_auth_callback_get
      parameters:
      - name: code
        in: query
        required: true
        schema:
          type: string
          title: Code
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      tags:
      - Auth
  /auth/magic/request:
    post:
      summary: Magic Request
      description: 'Demande un lien de connexion par email. Réponse neutre (ne révèle pas

        si un compte existe). Envoie l''email via Resend en tâche de fond.'
      operationId: magic_request_auth_magic_request_post
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/Body_magic_request_auth_magic_request_post'
        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/magic/verify:
    get:
      summary: Magic Verify
      description: 'Valide le token du lien, ouvre une session pour le compte email.

        Handler sync -> exécuté dans le threadpool de Starlette (I/O DB non bloquant).'
      operationId: magic_verify_auth_magic_verify_get
      parameters:
      - name: token
        in: query
        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'
      tags:
      - Auth
  /auth/password/signup:
    post:
      summary: Password Signup
      description: 'Inscription : cree le compte (non verifie) et envoie un email de

        verification. Le login par mot de passe ne marche qu''apres verification.'
      operationId: password_signup_auth_password_signup_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Auth
  /auth/password/verify:
    get:
      summary: Password Verify
      description: Confirme l'email (lien du mail) puis ouvre une session.
      operationId: password_verify_auth_password_verify_get
      parameters:
      - name: token
        in: query
        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'
      tags:
      - Auth
  /auth/password/login:
    post:
      summary: Password Login
      description: Connexion par mot de passe. Erreur neutre (ne revele pas quel champ).
      operationId: password_login_auth_password_login_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Auth
  /auth/password/forgot:
    post:
      summary: Password Forgot
      description: Envoie un lien de reset. Reponse TOUJOURS neutre (pas d'enumeration).
      operationId: password_forgot_auth_password_forgot_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Auth
  /auth/password/reset:
    post:
      summary: Password Reset
      description: Definit un nouveau mot de passe via le lien de reset (usage unique).
      operationId: password_reset_auth_password_reset_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Auth
  /auth/me:
    get:
      summary: Auth Me
      operationId: auth_me_auth_me_get
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Auth
  /auth/logout:
    post:
      summary: Auth Logout
      operationId: auth_logout_auth_logout_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Auth
  /auth/account:
    delete:
      summary: Delete Account
      description: 'Supprime le compte et toutes les données — droit à l''effacement RGPD.


        Deux choses manquaient. L''abonnement Stripe n''etait pas annule : on

        continuait de prelever quelqu''un qui etait parti, et sa ligne `users` ayant

        disparu, plus aucun webhook ne pouvait le rattraper. Et la reponse etait un

        "ok" inconditionnel, alors que la suppression avalait chacune de ses

        erreurs : c''est la derniere action ou l''on a le droit de mentir.'
      operationId: delete_account_auth_account_delete
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Auth
components:
  schemas:
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    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
    Body_magic_request_auth_magic_request_post:
      properties:
        email:
          type: string
          title: Email
      type: object
      required:
      - email
      title: Body_magic_request_auth_magic_request_post
x-provenance:
  method: harvested
  publisher: StarHunt
  source: https://app.getstarhunt.com/openapi.json
  note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
    stamped by stamp-openapi-provenance.py (roadmap#793)