Misskey I API

The I API from Misskey — 38 operation(s) for i.

OpenAPI Specification

misskey-i-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  version: 2025.4.1-io.12b-fb6fbea074
  title: Misskey account I API
servers:
- url: https://misskey.io/api
tags:
- name: I
paths:
  /i/2fa/done:
    post:
      operationId: post___i___2fa___done
      summary: i/2fa/done
      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/i/2fa/done.ts
      security:
      - bearerAuth: []
      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:
                  backupCodes:
                    type: array
                    items:
                      type: string
                required:
                - backupCodes
        '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
      tags:
      - I
  /i/2fa/key-done:
    post:
      operationId: post___i___2fa___key-done
      summary: i/2fa/key-done
      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/i/2fa/key-done.ts
      security:
      - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                password:
                  type: string
                token:
                  type:
                  - string
                  - 'null'
                name:
                  type: string
                  minLength: 1
                  maxLength: 30
                credential:
                  type: object
              required:
              - password
              - name
              - credential
      responses:
        '200':
          description: OK (with results)
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  name:
                    type: string
                required:
                - id
                - name
        '400':
          description: Client error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                INCORRECT_PASSWORD:
                  value:
                    error:
                      message: Incorrect password.
                      code: INCORRECT_PASSWORD
                      id: 0d7ec6d2-e652-443e-a7bf-9ee9a0cd77b0
                AUTHENTICATION_FAILED:
                  value:
                    error:
                      message: Authentication failed.
                      code: AUTHENTICATION_FAILED
                      id: 7b7b1e88-c569-4873-9676-25c5717ace4e
                TWO_FACTOR_NOT_ENABLED:
                  value:
                    error:
                      message: 2fa not enabled.
                      code: TWO_FACTOR_NOT_ENABLED
                      id: 798d6847-b1ed-4f9c-b1f9-163c42655995
                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
      tags:
      - I
  /i/2fa/password-less:
    post:
      operationId: post___i___2fa___password-less
      summary: i/2fa/password-less
      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/i/2fa/password-less.ts
      security:
      - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                value:
                  type: boolean
              required:
              - value
      responses:
        '204':
          description: OK (without any results)
        '400':
          description: Client error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                NO_SECURITY_KEY:
                  value:
                    error:
                      message: No security key.
                      code: NO_SECURITY_KEY
                      id: f9c54d7f-d4c2-4d3c-9a8g-a70daac86512
                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
      tags:
      - I
  /i/2fa/register:
    post:
      operationId: post___i___2fa___register
      summary: i/2fa/register
      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/i/2fa/register.ts
      security:
      - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                password:
                  type: string
                token:
                  type:
                  - string
                  - 'null'
              required:
              - password
      responses:
        '200':
          description: OK (with results)
          content:
            application/json:
              schema:
                type: object
                properties:
                  qr:
                    type: string
                  url:
                    type: string
                  secret:
                    type: string
                  label:
                    type: string
                  issuer:
                    type: string
                required:
                - qr
                - url
                - secret
                - label
                - issuer
        '400':
          description: Client error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                INCORRECT_PASSWORD:
                  value:
                    error:
                      message: Incorrect password.
                      code: INCORRECT_PASSWORD
                      id: 78d6c839-20c9-4c66-b90a-fc0542168b48
                AUTHENTICATION_FAILED:
                  value:
                    error:
                      message: Authentication failed.
                      code: AUTHENTICATION_FAILED
                      id: e428f177-c6ae-4e91-9c7e-334b1836f9aa
                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
      tags:
      - I
  /i/2fa/register-key:
    post:
      operationId: post___i___2fa___register-key
      summary: i/2fa/register-key
      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/i/2fa/register-key.ts
      security:
      - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                password:
                  type: string
                token:
                  type:
                  - string
                  - 'null'
              required:
              - password
      responses:
        '200':
          description: OK (with results)
          content:
            application/json:
              schema:
                type: object
                properties:
                  rp:
                    type: object
                    properties:
                      id:
                        type: string
                  user:
                    type: object
                    properties:
                      id:
                        type: string
                      name:
                        type: string
                      displayName:
                        type: string
                    required:
                    - id
                    - name
                    - displayName
                  challenge:
                    type: string
                  pubKeyCredParams:
                    type: array
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                        alg:
                          type: number
                      required:
                      - type
                      - alg
                  timeout:
                    type:
                    - number
                    - 'null'
                  excludeCredentials:
                    type:
                    - array
                    - 'null'
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        type:
                          type: string
                        transports:
                          type: array
                          items:
                            type: string
                            enum:
                            - ble
                            - cable
                            - hybrid
                            - internal
                            - nfc
                            - smart-card
                            - usb
                      required:
                      - id
                      - type
                      - transports
                  authenticatorSelection:
                    type:
                    - object
                    - 'null'
                    properties:
                      authenticatorAttachment:
                        type: string
                        enum:
                        - cross-platform
                        - platform
                      requireResidentKey:
                        type: boolean
                      userVerification:
                        type: string
                        enum:
                        - discouraged
                        - preferred
                        - required
                    required:
                    - authenticatorAttachment
                    - requireResidentKey
                    - userVerification
                  attestation:
                    type:
                    - string
                    - 'null'
                    enum:
                    - direct
                    - enterprise
                    - indirect
                    - none
                    - null
                  extensions:
                    type:
                    - object
                    - 'null'
                    properties:
                      appid:
                        type:
                        - string
                        - 'null'
                      credProps:
                        type:
                        - boolean
                        - 'null'
                      hmacCreateSecret:
                        type:
                        - boolean
                        - 'null'
                    required:
                    - appid
                    - credProps
                    - hmacCreateSecret
                required:
                - rp
                - user
                - challenge
                - pubKeyCredParams
                - timeout
                - excludeCredentials
                - authenticatorSelection
                - attestation
                - extensions
        '400':
          description: Client error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                USER_NOT_FOUND:
                  value:
                    error:
                      message: User not found.
                      code: USER_NOT_FOUND
                      id: 652f899f-66d4-490e-993e-6606c8ec04c3
                INCORRECT_PASSWORD:
                  value:
                    error:
                      message: Incorrect password.
                      code: INCORRECT_PASSWORD
                      id: 38769596-efe2-4faf-9bec-abbb3f2cd9ba
                AUTHENTICATION_FAILED:
                  value:
                    error:
                      message: Authentication failed.
                      code: AUTHENTICATION_FAILED
                      id: a7628591-668b-47b2-919f-d986b22af06a
                TWO_FACTOR_NOT_ENABLED:
                  value:
                    error:
                      message: 2fa not enabled.
                      code: TWO_FACTOR_NOT_ENABLED
                      id: bf32b864-449b-47b8-974e-f9a5468546f1
                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
      tags:
      - I
  /i/2fa/remove-key:
    post:
      operationId: post___i___2fa___remove-key
      summary: i/2fa/remove-key
      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/i/2fa/remove-key.ts
      security:
      - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                password:
                  type: string
                token:
                  type:
                  - string
                  - 'null'
                credentialId:
                  type: string
              required:
              - password
              - credentialId
      responses:
        '204':
          description: OK (without any results)
        '400':
          description: Client error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                INCORRECT_PASSWORD:
                  value:
                    error:
                      message: Incorrect password.
                      code: INCORRECT_PASSWORD
                      id: 141c598d-a825-44c8-9173-cfb9d92be493
                AUTHENTICATION_FAILED:
                  value:
                    error:
                      message: Authentication failed.
                      code: AUTHENTICATION_FAILED
                      id: 724bcf94-1f52-4c57-ad40-4f7fbbf6ce87
                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
      tags:
      - I
  /i/2fa/unregister:
    post:
      operationId: post___i___2fa___unregister
      summary: i/2fa/unregister
      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/i/2fa/unregister.ts
      security:
      - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                password:
                  type: string
                token:
                  type:
                  - string
                  - 'null'
              required:
              - password
      responses:
        '204':
          description: OK (without any results)
        '400':
          description: Client error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                INCORRECT_PASSWORD:
                  value:
                    error:
                      message: Incorrect password.
                      code: INCORRECT_PASSWORD
                      id: 7add0395-9901-4098-82f9-4f67af65f775
                AUTHENTICATION_FAILED:
                  value:
                    error:
                      message: Authentication failed.
                      code: AUTHENTICATION_FAILED
                      id: 1b99d9c1-629c-41f9-9315-b27ee876f498
                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
      tags:
      - I
  /i/2fa/update-key:
    post:
      operationId: post___i___2fa___update-key
      summary: i/2fa/update-key
      description: 'No description provided.


        **Internal End

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