Misskey auth API

The auth API from Misskey — 5 operation(s) for auth.

Operations 5

POST /auth/accept auth/accept #
POST /auth/session/generate auth/session/generate #
POST /auth/session/show auth/session/show #
POST /auth/session/userkey auth/session/userkey #
POST /miauth/gen-token miauth/gen-token #

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/misskey-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

misskey-auth-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 2025.4.1-io.12b-fb6fbea074
  title: Misskey account Auth API
servers:
- url: https://misskey.io/api
tags:
- name: auth
paths:
  /auth/accept:
    post:
      operationId: post___auth___accept
      summary: auth/accept
      description: 'No description provided.


        **Internal Endpoint**: This endpoint is an API for the misskey mainframe and is not intended for use by third parties.

        **Credential required**: *Yes*'
      externalDocs:
        description: Source code
        url: https://github.com/MisskeyIO/misskey/blob/io/packages/backend/src/server/api/endpoints/auth/accept.ts
      tags:
      - auth
      security:
      - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                token:
                  type: string
              required:
              - token
      responses:
        '204':
          description: OK (without any results)
        '400':
          description: Client error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                NO_SUCH_SESSION:
                  value:
                    error:
                      message: No such session.
                      code: NO_SUCH_SESSION
                      id: 9c72d8de-391a-43c1-9d06-08d29efde8df
                INVALID_PARAM:
                  value:
                    error:
                      message: Invalid param.
                      code: INVALID_PARAM
                      id: 3d81ceae-475f-4600-b2a8-2bc116157532
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CREDENTIAL_REQUIRED:
                  value:
                    error:
                      message: Credential required.
                      code: CREDENTIAL_REQUIRED
                      id: 1384574d-a912-4b81-8601-c7b1c4085df1
        '403':
          description: Forbidden error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                AUTHENTICATION_FAILED:
                  value:
                    error:
                      message: Authentication failed. Please ensure your token is correct.
                      code: AUTHENTICATION_FAILED
                      id: b0a7f5f8-dc2f-4171-b91f-de88ad238e14
        '418':
          description: I'm Ai
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                I_AM_AI:
                  value:
                    error:
                      message: You sent a request to Ai-chan, Misskey's showgirl, instead of the server.
                      code: I_AM_AI
                      id: 60c46cd1-f23a-46b1-bebe-5d2b73951a84
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                INTERNAL_ERROR:
                  value:
                    error:
                      message: Internal error occurred. Please contact us if the error persists.
                      code: INTERNAL_ERROR
                      id: 5d37dbcb-891e-41ca-a3d6-e690c97775ac
  /auth/session/generate:
    post:
      operationId: post___auth___session___generate
      summary: auth/session/generate
      description: 'No description provided.


        **Credential required**: *No*'
      externalDocs:
        description: Source code
        url: https://github.com/MisskeyIO/misskey/blob/io/packages/backend/src/server/api/endpoints/auth/session/generate.ts
      tags:
      - auth
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                appSecret:
                  type: string
              required:
              - appSecret
      responses:
        '200':
          description: OK (with results)
          content:
            application/json:
              schema:
                type: object
                properties:
                  token:
                    type: string
                  url:
                    type: string
                    format: url
                required:
                - token
                - url
        '400':
          description: Client error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                NO_SUCH_APP:
                  value:
                    error:
                      message: No such app.
                      code: NO_SUCH_APP
                      id: 92f93e63-428e-4f2f-a5a4-39e1407fe998
                INVALID_PARAM:
                  value:
                    error:
                      message: Invalid param.
                      code: INVALID_PARAM
                      id: 3d81ceae-475f-4600-b2a8-2bc116157532
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CREDENTIAL_REQUIRED:
                  value:
                    error:
                      message: Credential required.
                      code: CREDENTIAL_REQUIRED
                      id: 1384574d-a912-4b81-8601-c7b1c4085df1
        '403':
          description: Forbidden error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                AUTHENTICATION_FAILED:
                  value:
                    error:
                      message: Authentication failed. Please ensure your token is correct.
                      code: AUTHENTICATION_FAILED
                      id: b0a7f5f8-dc2f-4171-b91f-de88ad238e14
        '418':
          description: I'm Ai
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                I_AM_AI:
                  value:
                    error:
                      message: You sent a request to Ai-chan, Misskey's showgirl, instead of the server.
                      code: I_AM_AI
                      id: 60c46cd1-f23a-46b1-bebe-5d2b73951a84
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                INTERNAL_ERROR:
                  value:
                    error:
                      message: Internal error occurred. Please contact us if the error persists.
                      code: INTERNAL_ERROR
                      id: 5d37dbcb-891e-41ca-a3d6-e690c97775ac
  /auth/session/show:
    post:
      operationId: post___auth___session___show
      summary: auth/session/show
      description: 'No description provided.


        **Credential required**: *No*'
      externalDocs:
        description: Source code
        url: https://github.com/MisskeyIO/misskey/blob/io/packages/backend/src/server/api/endpoints/auth/session/show.ts
      tags:
      - auth
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                token:
                  type: string
              required:
              - token
      responses:
        '200':
          description: OK (with results)
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    format: id
                  app:
                    type: object
                    $ref: '#/components/schemas/App'
                  token:
                    type: string
                required:
                - id
                - app
                - token
        '400':
          description: Client error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                NO_SUCH_SESSION:
                  value:
                    error:
                      message: No such session.
                      code: NO_SUCH_SESSION
                      id: bd72c97d-eba7-4adb-a467-f171b8847250
                INVALID_PARAM:
                  value:
                    error:
                      message: Invalid param.
                      code: INVALID_PARAM
                      id: 3d81ceae-475f-4600-b2a8-2bc116157532
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CREDENTIAL_REQUIRED:
                  value:
                    error:
                      message: Credential required.
                      code: CREDENTIAL_REQUIRED
                      id: 1384574d-a912-4b81-8601-c7b1c4085df1
        '403':
          description: Forbidden error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                AUTHENTICATION_FAILED:
                  value:
                    error:
                      message: Authentication failed. Please ensure your token is correct.
                      code: AUTHENTICATION_FAILED
                      id: b0a7f5f8-dc2f-4171-b91f-de88ad238e14
        '418':
          description: I'm Ai
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                I_AM_AI:
                  value:
                    error:
                      message: You sent a request to Ai-chan, Misskey's showgirl, instead of the server.
                      code: I_AM_AI
                      id: 60c46cd1-f23a-46b1-bebe-5d2b73951a84
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                INTERNAL_ERROR:
                  value:
                    error:
                      message: Internal error occurred. Please contact us if the error persists.
                      code: INTERNAL_ERROR
                      id: 5d37dbcb-891e-41ca-a3d6-e690c97775ac
  /auth/session/userkey:
    post:
      operationId: post___auth___session___userkey
      summary: auth/session/userkey
      description: 'No description provided.


        **Credential required**: *No*'
      externalDocs:
        description: Source code
        url: https://github.com/MisskeyIO/misskey/blob/io/packages/backend/src/server/api/endpoints/auth/session/userkey.ts
      tags:
      - auth
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                appSecret:
                  type: string
                token:
                  type: string
              required:
              - appSecret
              - token
      responses:
        '200':
          description: OK (with results)
          content:
            application/json:
              schema:
                type: object
                properties:
                  accessToken:
                    type: string
                  user:
                    type: object
                    $ref: '#/components/schemas/UserDetailed'
                required:
                - accessToken
                - user
        '400':
          description: Client error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                NO_SUCH_APP:
                  value:
                    error:
                      message: No such app.
                      code: NO_SUCH_APP
                      id: fcab192a-2c5a-43b7-8ad8-9b7054d8d40d
                NO_SUCH_SESSION:
                  value:
                    error:
                      message: No such session.
                      code: NO_SUCH_SESSION
                      id: 5b5a1503-8bc8-4bd0-8054-dc189e8cdcb3
                PENDING_SESSION:
                  value:
                    error:
                      message: This session is not completed yet.
                      code: PENDING_SESSION
                      id: 8c8a4145-02cc-4cca-8e66-29ba60445a8e
                INVALID_PARAM:
                  value:
                    error:
                      message: Invalid param.
                      code: INVALID_PARAM
                      id: 3d81ceae-475f-4600-b2a8-2bc116157532
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CREDENTIAL_REQUIRED:
                  value:
                    error:
                      message: Credential required.
                      code: CREDENTIAL_REQUIRED
                      id: 1384574d-a912-4b81-8601-c7b1c4085df1
        '403':
          description: Forbidden error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                AUTHENTICATION_FAILED:
                  value:
                    error:
                      message: Authentication failed. Please ensure your token is correct.
                      code: AUTHENTICATION_FAILED
                      id: b0a7f5f8-dc2f-4171-b91f-de88ad238e14
        '418':
          description: I'm Ai
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                I_AM_AI:
                  value:
                    error:
                      message: You sent a request to Ai-chan, Misskey's showgirl, instead of the server.
                      code: I_AM_AI
                      id: 60c46cd1-f23a-46b1-bebe-5d2b73951a84
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                INTERNAL_ERROR:
                  value:
                    error:
                      message: Internal error occurred. Please contact us if the error persists.
                      code: INTERNAL_ERROR
                      id: 5d37dbcb-891e-41ca-a3d6-e690c97775ac
  /miauth/gen-token:
    post:
      operationId: post___miauth___gen-token
      summary: miauth/gen-token
      description: 'No description provided.


        **Internal Endpoint**: This endpoint is an API for the misskey mainframe and is not intended for use by third parties.

        **Credential required**: *Yes*'
      externalDocs:
        description: Source code
        url: https://github.com/MisskeyIO/misskey/blob/io/packages/backend/src/server/api/endpoints/miauth/gen-token.ts
      tags:
      - auth
      security:
      - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                session:
                  type:
                  - string
                  - 'null'
                name:
                  type:
                  - string
                  - 'null'
                description:
                  type:
                  - string
                  - 'null'
                iconUrl:
                  type:
                  - string
                  - 'null'
                permission:
                  type: array
                  uniqueItems: true
                  items:
                    type: string
              required:
              - session
              - permission
      responses:
        '200':
          description: OK (with results)
          content:
            application/json:
              schema:
                type: object
                properties:
                  token:
                    type: string
                required:
                - token
        '400':
          description: Client error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                INVALID_PARAM:
                  value:
                    error:
                      message: Invalid param.
                      code: INVALID_PARAM
                      id: 3d81ceae-475f-4600-b2a8-2bc116157532
        '401':
          description: Authentication error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                CREDENTIAL_REQUIRED:
                  value:
                    error:
                      message: Credential required.
                      code: CREDENTIAL_REQUIRED
                      id: 1384574d-a912-4b81-8601-c7b1c4085df1
        '403':
          description: Forbidden error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                AUTHENTICATION_FAILED:
                  value:
                    error:
                      message: Authentication failed. Please ensure your token is correct.
                      code: AUTHENTICATION_FAILED
                      id: b0a7f5f8-dc2f-4171-b91f-de88ad238e14
        '418':
          description: I'm Ai
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                I_AM_AI:
                  value:
                    error:
                      message: You sent a request to Ai-chan, Misskey's showgirl, instead of the server.
                      code: I_AM_AI
                      id: 60c46cd1-f23a-46b1-bebe-5d2b73951a84
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                INTERNAL_ERROR:
                  value:
                    error:
                      message: Internal error occurred. Please contact us if the error persists.
                      code: INTERNAL_ERROR
                      id: 5d37dbcb-891e-41ca-a3d6-e690c97775ac
components:
  schemas:
    PageBlock:
      type: object
      oneOf:
      - type: object
        properties:
          id:
            type: string
          type:
            type: string
            enum:
            - text
          text:
            type: string
        required:
        - id
        - type
        - text
      - type: object
        properties:
          id:
            type: string
          type:
            type: string
            enum:
            - section
          title:
            type: string
          children:
            type: array
            items:
              type: object
        required:
        - id
        - type
        - title
        - children
      - type: object
        properties:
          id:
            type: string
          type:
            type: string
            enum:
            - image
          fileId:
            type:
            - string
            - 'null'
        required:
        - id
        - type
        - fileId
      - type: object
        properties:
          id:
            type: string
          type:
            type: string
            enum:
            - note
          detailed:
            type: boolean
          note:
            type:
            - string
            - 'null'
        required:
        - id
        - type
        - detailed
        - note
    UserLite:
      type: object
      properties:
        id:
          type: string
          format: id
          example: xxxxxxxxxx
        name:
          type:
          - string
          - 'null'
          example: 藍
        username:
          type: string
          example: ai
        host:
          type:
          - string
          - 'null'
          example: misskey.example.com
          description: The local host is represented with `null`.
        avatarUrl:
          type:
          - string
          - 'null'
          format: url
        avatarBlurhash:
          type:
          - string
          - 'null'
        avatarDecorations:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
                format: id
              angle:
                type: number
              flipH:
                type: boolean
              url:
                type: string
                format: url
              offsetX:
                type: number
              offsetY:
                type: number
            required:
            - id
            - url
        isBot:
          type: boolean
        isCat:
          type: boolean
        requireSigninToViewContents:
          type: boolean
        makeNotesFollowersOnlyBefore:
          type:
          - number
          - 'null'
        makeNotesHiddenBefore:
          type:
          - number
          - 'null'
        instance:
          type: object
          properties:
            name:
              type:
              - string
              - 'null'
            softwareName:
              type:
              - string
              - 'null'
            softwareVersion:
              type:
              - string
              - 'null'
            iconUrl:
              type:
              - string
              - 'null'
            faviconUrl:
              type:
              - string
              - 'null'
            themeColor:
              type:
              - string
              - 'null'
          required:
          - name
          - softwareName
          - softwareVersion
          - iconUrl
          - faviconUrl
          - themeColor
        emojis:
          type: object
          additionalProperties:
            type: string
        onlineStatus:
          type: string
          enum:
          - unknown
          - online
          - active
          - offline
        badgeRoles:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
              iconUrl:
                type:
                - string
                - 'null'
              displayOrder:
                type: number
              behavior:
                type: string
            required:
            - name
            - iconUrl
            - displayOrder
      required:
      - id
      - name
      - username
      - host
      - avatarUrl
      - avatarBlurhash
      - avatarDecorations
      - emojis
      - onlineStatus
    Page:
      type: object
      properties:
        id:
          type: string
          format: id
          example: xxxxxxxxxx
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        userId:
          type: string
          format: id
        user:
          type: object
          $ref: '#/components/schemas/UserLite'
        content:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/PageBlock'
        variables:
          type: array
          items:
            type: object
        title:
          type: string
        name:
          type: string
        summary:
          type:
          - string
          - 'null'
        hideTitleWhenPinned:
          type: boolean
        alignCenter:
          type: boolean
        font:
          type: string
        script:
          type: string
        eyeCatchingImageId:
          type:
          - string
          - 'null'
        eyeCatchingImage:
          type:
          - object
          - 'null'
          anyOf:
          - $ref: '#/components/schemas/DriveFile'
          - type: 'null'
        attachedFiles:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/DriveFile'
        likedCount:
          type: number
        isLiked:
          type: boolean
        visibility:
          type: string
          enum:
          - public
          - private
      required:
      - id
      - createdAt
      - updatedAt
      - userId
      - user
      - content
      - variables
      - title
      - name
      - summary
      - hideTitleWhenPinned
      - alignCenter
      - font
      - script
      - eyeCatchingImageId
      - eyeCatchingImage
      - attachedFiles
      - likedCount
      - visibility
    Error:
      type: object
      properties:
        error:
          type: object
          description: An error object.
          properties:
            code:
              type: string
              description: An error code. Unique within the endpoint.
            message:
              type: string
              description: An error message.
            id:
              type: string
              format: uuid
              description: An error ID. This ID is static.
          required:
          - code
          - id
          - message
      required:
      - error
    RoleLite:
      type: object
      properties:
        id:
          type: string
          format: id
          example: xxxxxxxxxx
        name:
          type: string
          example: New Role
        color:
          type:
          - string
          - 'null'
          example: '#000000'
        iconUrl:
          type:
          - string
          - 'null'
        description:
          type: string
        isModerator:
          type: boolean
          example: false
        isAdministrator:
          type: boolean
          example: false
        displayOrder:
          type: integer
          example: 0
      required:
      - id
      - name
      - color
      - iconUrl
      - description
      - isModerator
      - isAdministrator
      - displayOrder
    MeDetailedOnly:
      type: object
      properties:
        avatarId:
          type:
          - string
          - 'null'
          format: id
        bannerId:
          type:
          - string
          - 'null'
          format: id
        followedMessage:
          type:
          - string
          - 'null'
        isModerator:
          type:
          - boolean
          - 'null'
        isAdmin:
          type:
          - boolean
          - 'null'
        injectFeaturedNote:
          type: boolean
        receiveAnnouncementEmail:
          type: boolean
        alwaysMarkNsfw:
          type: boolean
        autoSensitive:
          type: boolean
        carefulBot:
          type: boolean
        autoAcceptFollowed:
          type: boolean
        noCrawle:
          type: boolean
        preventAiLearning:
          type: boolean
        isExplorable:
          type: boolean
        isDeleted:
          type: boolean
        twoFactorBackupCodesStock:
          type: string
          enum:
          - full
          - partial
          - none
        hideOnlineStatus:
          type: boolean
        hasUnreadSpecifiedNotes:
          type: boolean
        hasUnreadMentions:
          type: boolean
        hasUnreadAnnouncement:
          type: boolean
        unreadAnnouncements:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/Announcement'
        hasUnreadAntenna:
          type: boolean
        hasUnreadChannel:
          type: boolean
        hasUnreadChatMessages:
          type: boolean
        hasUnreadNotification:
          type: boolean
        hasPendingReceivedFollowRequest:
          type: boolean
        unreadNotificationsCount:
          type: number
        mutedWords:
          type: array
          items:
            type: array
            items:
              type: string
        mutedInstances:
          type:
          - array
          - 'null'
          items:
            type: string
        postingLang:
          type:
          - string
          - 'null'
          example: ja-JP
        viewingLangs:
          type: array
          items:
            type: string
        showMediaInAllLanguages:
          type: boolean
        showHashtagsInAllLanguages:
          type: boolean
        notificationRecieveConfig:
          type: object
          properties:
            note:
              type: object
              oneOf:
              - type: object
                properties:
                  type:
                    type: string
                    enum:
                    - all
                    - following
                    - follower
                    - mutualFollow
                    - followingOrFollower
                    - never
                required:
                - type
              - type: object
                properties:
                  type:
                    type: string
                    enum:
                    - list
                  userListId:
                    type: string
                    format: misskey:id
                required:
                - type
                - userListId
            follow:
              type: object
              oneOf:
              - type: object
                properties:
                  type:
                    type: string
                    enum:
                    - all
                    - following
                    - follower
                    - mutualFollow
                    - followingOrFollower
                    - never
                required:
                - type
              - type: object
                properties:
                  type:
                    type: string
                    enum:
                    - list
                  userListId:
                    type: string
                    format: misskey:id
                required:
                - type
                - userListId
            mention:
              type: object
              oneOf:
              - type: object
                properties:
                  type:
                    type: string
                    enum:
                    - all
                    - following
                    - follower
                    - mutualFollow
                    - followingOrFollower
                    - never
                required:
                - type
              - type: object
                properties:
                  type:
                    type: string
                    enum:
                    - list
                  userListId:
                    type: string
                    format: misskey:id
                required:
                - type
                - userListId
            reply:
              type: object
              oneOf:
              - type: object
                properties:
                  type:
                    type: string
                    enum:
                    - all
                    - following
                    - follower
                    - mutualFollow
                    - followingOrFollower
                    - never
                required:
                - type
              - type: object
                properties:
                  type:
                    type: string
                    enum:
                    - list
                  userListId:
                    type: string
                    format: misskey:id
                required:
                - type
                - userListId
            renote:
              type: object
          

# --- truncated at 32 KB (62 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/misskey/refs/heads/main/openapi/misskey-auth-api-openapi.yml