XSKY auth API

AuthController Manage authentication and authorization

Operations 6

POST /auth/rsa-keys #
GET /auth/security-policy #
PATCH /auth/security-policy #
POST /auth/tokens #
POST /auth/tokens:login #
POST /auth/tokens:logout #

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

xsky-auth-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: XMS is the controller of distributed storage system
  version: SDS_4.2.000.0.200302
  title: XMS access-paths Auth API
  contact: {}
  license:
    name: Commercial
servers:
- url: /v1
tags:
- name: auth
  description: 'AuthController Manage authentication and authorization

    '
paths:
  /auth/rsa-keys:
    post:
      tags:
      - auth
      description: Create RSA key
      operationId: CreateRSAKey
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthRSAKeyResp'
        400:
          description: BadRequest
        401:
          description: Unauthorized
        500:
          description: InternalServerError
  /auth/security-policy:
    get:
      tags:
      - auth
      description: setup auth security policy
      operationId: GetAuthSecurityPolicy
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthSecurityPolicyResp'
        400:
          description: BadRequest
        500:
          description: InternalServerError
      security:
      - tokenInQuery: []
      - tokenInHeader: []
    patch:
      tags:
      - auth
      description: update auth security policy
      operationId: UpdateAuthSecurityPolicy
      responses:
        200:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthSecurityPolicyResp'
        400:
          description: BadRequest
        500:
          description: InternalServerError
      security:
      - tokenInQuery: []
      - tokenInHeader: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuthSecurityPolicyUpdateReq'
        description: auth security policy info
        required: true
  /auth/tokens:
    post:
      tags:
      - auth
      description: creates temporary token for credentials
      operationId: CreateToken
      responses:
        201:
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenResp'
        400:
          description: BadRequest
        401:
          description: Unauthorized
        500:
          description: InternalServerError
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TokenCreateReq'
        description: the identity credential
        required: true
  /auth/tokens:login:
    post:
      tags:
      - auth
      description: logs in
      operationId: Login
      responses:
        201:
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenResp'
        400:
          description: BadRequest
        401:
          description: Unauthorized
        500:
          description: InternalServerError
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuthLoginReq'
        description: the identity credential
        required: true
  /auth/tokens:logout:
    post:
      tags:
      - auth
      description: logs out
      operationId: Logout
      responses:
        204:
          description: No Content
        400:
          description: BadRequest
        401:
          description: Unauthorized
        404:
          description: NotFound
        500:
          description: InternalServerError
      security:
      - tokenInQuery: []
      - tokenInHeader: []
components:
  schemas:
    AuthLoginReq:
      type: object
      required:
      - auth
      properties:
        auth:
          $ref: '#/components/schemas/AuthLoginReq_Auth'
      title: AuthLoginReq
      example:
        auth:
          password: password
          name: name
          rsa_key_id: rsa_key_id
          sign: sign
          platform: platform
          encrypted_password: encrypted_password
          timestamp: timestamp
          token: token
    TokenResp:
      type: object
      required:
      - token
      properties:
        token:
          description: token
          $ref: '#/components/schemas/TokenRecord'
      title: TokenResp
      example:
        token: ''
    Token:
      type: object
      properties:
        create:
          type: string
          format: date-time
        expires:
          type: string
          format: date-time
        user:
          $ref: '#/components/schemas/User'
        uuid:
          type: string
        valid:
          type: boolean
      title: Token
      description: 'An access token contains the security information for a logon session. The

        system creates an access token when a user logs on, and every process executed

        on behalf of the user has a copy of the token. The token identifies the user,

        the user''s groups, and the user''s privileges. The system uses the token to

        control access to securable objects and to control the ability of the user to

        perform various system-related operations on the local computer.'
    AuthRSAKey:
      type: object
      properties:
        expiration:
          type: string
          format: date-time
        id:
          type: string
        public_key:
          type: string
      title: AuthRSAKey
      example:
        public_key: public_key
        expiration: '2000-01-23T04:56:07.000+00:00'
        id: id
    TokenCreateReq_Auth_Identity:
      type: object
      properties:
        password:
          description: password for auth
          $ref: '#/components/schemas/AuthPasswordReq'
        token:
          description: token for auth
          $ref: '#/components/schemas/AuthTokenReq'
      title: TokenCreateReq_Auth_Identity
      example:
        password:
          user:
            password: password
            name: name
            id: 0
            email: email
        token:
          uuid: uuid
    AuthPasswordReq:
      type: object
      required:
      - user
      properties:
        user:
          $ref: '#/components/schemas/AuthPasswordReq_User'
      title: AuthPasswordReq
      example:
        user:
          password: password
          name: name
          id: 0
          email: email
    AuthSecurityPolicyUpdateReq:
      type: object
      properties:
        auth_security_policy:
          $ref: '#/components/schemas/AuthSecurityPolicyUpdateReq_AuthSecurityPolicy'
      title: AuthSecurityPolicyUpdateReq
      example:
        auth_security_policy:
          freeze_duration: 0
          max_attempts: 6
          password_expiration_warning: true
          password_lifetime: 1
          enabled: true
    TokenCreateReq_Auth:
      type: object
      required:
      - identity
      properties:
        identity:
          $ref: '#/components/schemas/TokenCreateReq_Auth_Identity'
      title: TokenCreateReq_Auth
      example:
        identity:
          password:
            user:
              password: password
              name: name
              id: 0
              email: email
          token:
            uuid: uuid
    TokenRecord:
      title: TokenRecord
      allOf:
      - $ref: '#/components/schemas/Token'
      - properties:
          roles:
            type: array
            items:
              type: string
      description: TokenRecord defines token record for api response
    AuthSecurityPolicy:
      type: object
      properties:
        enabled:
          type: boolean
        freeze_duration:
          type: integer
          format: int64
          description: 'unit: second'
        max_attempts:
          type: integer
          format: int64
        password_expiration_warning:
          type: boolean
        password_lifetime:
          type: integer
          format: int64
          description: 'unit: second'
      title: AuthSecurityPolicy
      description: AuthSecurityPolicy defines auth security policy
      example:
        freeze_duration: 0
        max_attempts: 6
        password_expiration_warning: true
        password_lifetime: 1
        enabled: true
    User:
      type: object
      properties:
        create:
          type: string
          format: date-time
          description: time of creating user
        email:
          type: string
          description: email of user
        enabled:
          type: boolean
          description: enable the user or not
        external_id:
          type: string
          description: external id of user
        id:
          type: integer
          format: int64
          description: id of user
        identity_platform:
          description: identity platform of user
          $ref: '#/components/schemas/IdentityPlatform_Nestview'
        name:
          type: string
          description: name of user
        password_last_update:
          type: string
          format: date-time
          description: time of last password update
        roles:
          type: array
          description: roles of user
          items:
            type: string
      title: User
    TokenCreateReq:
      type: object
      required:
      - auth
      properties:
        auth:
          $ref: '#/components/schemas/TokenCreateReq_Auth'
      title: TokenCreateReq
      example:
        auth:
          identity:
            password:
              user:
                password: password
                name: name
                id: 0
                email: email
            token:
              uuid: uuid
    IdentityPlatform_Nestview:
      type: object
      properties:
        id:
          type: integer
          format: int64
          description: id of identity platform
        name:
          type: string
          description: name of identity platform
      title: IdentityPlatform_Nestview
      example:
        name: name
        id: 6
    AuthLoginReq_Auth:
      type: object
      properties:
        encrypted_password:
          type: string
          description: encrypted password for auth
        name:
          type: string
          description: user name or email for auth
        password:
          type: string
          description: password for auth
        platform:
          type: string
          description: uuid of the identity platform
        rsa_key_id:
          type: string
          description: rsa key id
        sign:
          type: string
          description: signature of login request
        timestamp:
          type: string
          description: timestamp of platform token
        token:
          type: string
          description: token of the identity platform
      title: AuthLoginReq_Auth
      example:
        password: password
        name: name
        rsa_key_id: rsa_key_id
        sign: sign
        platform: platform
        encrypted_password: encrypted_password
        timestamp: timestamp
        token: token
    AuthRSAKeyResp:
      type: object
      properties:
        rsa_key:
          $ref: '#/components/schemas/AuthRSAKey'
      title: AuthRSAKeyResp
      example:
        rsa_key:
          public_key: public_key
          expiration: '2000-01-23T04:56:07.000+00:00'
          id: id
    AuthTokenReq:
      type: object
      required:
      - uuid
      properties:
        uuid:
          type: string
          description: uuid of authorized token
      title: AuthTokenReq
      example:
        uuid: uuid
    AuthSecurityPolicyUpdateReq_AuthSecurityPolicy:
      type: object
      properties:
        enabled:
          type: boolean
        freeze_duration:
          type: integer
          format: int64
        max_attempts:
          type: integer
          format: int64
        password_expiration_warning:
          type: boolean
        password_lifetime:
          type: integer
          format: int64
      title: AuthSecurityPolicyUpdateReq_AuthSecurityPolicy
      example:
        freeze_duration: 0
        max_attempts: 6
        password_expiration_warning: true
        password_lifetime: 1
        enabled: true
    AuthPasswordReq_User:
      type: object
      required:
      - password
      properties:
        email:
          type: string
          description: user email for auth
        id:
          type: integer
          format: int64
          description: user id for auth
        name:
          type: string
          description: user name or email for auth
        password:
          type: string
          description: password for auth
      title: AuthPasswordReq_User
      example:
        password: password
        name: name
        id: 0
        email: email
    AuthSecurityPolicyResp:
      type: object
      properties:
        auth_security_policy:
          $ref: '#/components/schemas/AuthSecurityPolicy'
      title: AuthSecurityPolicyResp
      example:
        auth_security_policy:
          freeze_duration: 0
          max_attempts: 6
          password_expiration_warning: true
          password_lifetime: 1
          enabled: true
  securitySchemes:
    tokenInHeader:
      description: auth by token
      type: apiKey
      name: Xms-Auth-Token
      in: header
    tokenInQuery:
      description: auth by token
      type: apiKey
      name: token
      in: query