swagger: "2.0"
info:
  title: Casdoor API
  description: Documentation of Casdoor API
  version: 1.0.0
  contact:
    email: admin@casbin.org
basePath: /
paths:
  /.well-known/openid-configuration:
    get:
      tags:
      - OIDC API
      operationId: RootController.GetOidcDiscovery
  /api/add-application:
    post:
      tags:
      - Application API
      description: add an application
      operationId: ApiController.AddApplication
      parameters:
      - in: body
        name: body
        description: The details of the application
        required: true
        schema:
          $ref: '#/definitions/object.Application'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/add-ldap:
    post:
      tags:
      - Account API
      operationId: ApiController.AddLdap
  /api/add-organization:
    post:
      tags:
      - Organization API
      description: add organization
      operationId: ApiController.AddOrganization
      parameters:
      - in: body
        name: body
        description: The details of the organization
        required: true
        schema:
          $ref: '#/definitions/object.Organization'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/add-provider:
    post:
      tags:
      - Provider API
      description: add provider
      operationId: ApiController.AddProvider
      parameters:
      - in: body
        name: body
        description: The details of the provider
        required: true
        schema:
          $ref: '#/definitions/object.Provider'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/add-resource:
    post:
      tags:
      - Resource API
      operationId: ApiController.AddResource
  /api/add-token:
    post:
      tags:
      - Token API
      description: add token
      operationId: ApiController.AddToken
      parameters:
      - in: body
        name: body
        description: Details of the token
        required: true
        schema:
          $ref: '#/definitions/object.Token'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/add-user:
    post:
      tags:
      - User API
      description: add user
      operationId: ApiController.AddUser
      parameters:
      - in: body
        name: body
        description: The details of the user
        required: true
        schema:
          $ref: '#/definitions/object.User'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/add-webhook:
    post:
      tags:
      - Webhook API
      description: add webhook
      operationId: ApiController.AddWebhook
      parameters:
      - in: body
        name: body
        description: The details of the webhook
        required: true
        schema:
          $ref: '#/definitions/object.Webhook'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/api/get-human-check:
    get:
      tags:
      - Login API
      operationId: ApiController.GetHumancheck
  /api/api/reset-email-or-phone:
    post:
      tags:
      - Account API
      operationId: ApiController.ResetEmailOrPhone
  /api/api/send-email:
    post:
      tags:
      - Service API
      description: This API is not for Casdoor frontend to call, it is for Casdoor SDKs.
      operationId: ApiController.SendEmail
      parameters:
      - in: query
        name: clientId
        description: The clientId of the application
        required: true
        type: string
      - in: query
        name: clientSecret
        description: The clientSecret of the application
        required: true
        type: string
      - in: body
        name: body
        description: Details of the email request
        required: true
        schema:
          $ref: '#/definitions/emailForm'
      responses:
        "200":
          description: object
          schema:
            $ref: '#/definitions/Response'
  /api/api/send-sms:
    post:
      tags:
      - Service API
      description: This API is not for Casdoor frontend to call, it is for Casdoor SDKs.
      operationId: ApiController.SendSms
      parameters:
      - in: query
        name: clientId
        description: The clientId of the application
        required: true
        type: string
      - in: query
        name: clientSecret
        description: The clientSecret of the application
        required: true
        type: string
      - in: body
        name: body
        description: Details of the sms request
        required: true
        schema:
          $ref: '#/definitions/smsForm'
      responses:
        "200":
          description: object
          schema:
            $ref: '#/definitions/Response'
  /api/certs:
    get:
      tags:
      - OIDC API
      operationId: RootController.GetOidcCert
  /api/check-ldap-users-exist:
    post:
      tags:
      - Account API
      operationId: ApiController.CheckLdapUserExist
  /api/check-user-password:
    post:
      tags:
      - User API
      operationId: ApiController.CheckUserPassword
  /api/delete-application:
    post:
      tags:
      - Application API
      description: delete an application
      operationId: ApiController.DeleteApplication
      parameters:
      - in: body
        name: body
        description: The details of the application
        required: true
        schema:
          $ref: '#/definitions/object.Application'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/delete-ldap:
    post:
      tags:
      - Account API
      operationId: ApiController.DeleteLdap
  /api/delete-organization:
    post:
      tags:
      - Organization API
      description: delete organization
      operationId: ApiController.DeleteOrganization
      parameters:
      - in: body
        name: body
        description: The details of the organization
        required: true
        schema:
          $ref: '#/definitions/object.Organization'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/delete-provider:
    post:
      tags:
      - Provider API
      description: delete provider
      operationId: ApiController.DeleteProvider
      parameters:
      - in: body
        name: body
        description: The details of the provider
        required: true
        schema:
          $ref: '#/definitions/object.Provider'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/delete-resource:
    post:
      tags:
      - Resource API
      operationId: ApiController.DeleteResource
  /api/delete-token:
    post:
      tags:
      - Token API
      description: delete token
      operationId: ApiController.DeleteToken
      parameters:
      - in: body
        name: body
        description: Details of the token
        required: true
        schema:
          $ref: '#/definitions/object.Token'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/delete-user:
    post:
      tags:
      - User API
      description: delete user
      operationId: ApiController.DeleteUser
      parameters:
      - in: body
        name: body
        description: The details of the user
        required: true
        schema:
          $ref: '#/definitions/object.User'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/delete-webhook:
    post:
      tags:
      - Webhook API
      description: delete webhook
      operationId: ApiController.DeleteWebhook
      parameters:
      - in: body
        name: body
        description: The details of the webhook
        required: true
        schema:
          $ref: '#/definitions/object.Webhook'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/get-account:
    get:
      tags:
      - Account API
      description: get the details of the current account
      operationId: ApiController.GetAccount
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/get-application:
    get:
      tags:
      - Application API
      description: get the detail of an application
      operationId: ApiController.GetApplication
      parameters:
      - in: query
        name: id
        description: The id of the application.
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/object.Application'
  /api/get-applications:
    get:
      tags:
      - Application API
      description: get all applications
      operationId: ApiController.GetApplications
      parameters:
      - in: query
        name: owner
        description: The owner of applications.
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            type: array
            items:
              $ref: '#/definitions/object.Application'
  /api/get-email-and-phone:
    post:
      tags:
      - User API
      description: get email and phone by username
      operationId: ApiController.GetEmailAndPhone
      parameters:
      - in: formData
        name: username
        description: The username of the user
        required: true
        type: string
      - in: formData
        name: organization
        description: The organization of the user
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/get-global-users:
    get:
      tags:
      - User API
      description: get global users
      operationId: ApiController.GetGlobalUsers
      responses:
        "200":
          description: The Response object
          schema:
            type: array
            items:
              $ref: '#/definitions/object.User'
  /api/get-ldap:
    post:
      tags:
      - Account API
      operationId: ApiController.GetLdap
  /api/get-ldap-user:
    post:
      tags:
      - Account API
      operationId: ApiController.GetLdapser
  /api/get-ldaps:
    post:
      tags:
      - Account API
      operationId: ApiController.GetLdaps
  /api/get-organization:
    get:
      tags:
      - Organization API
      description: get organization
      operationId: ApiController.GetOrganization
      parameters:
      - in: query
        name: id
        description: organization id
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/object.Organization'
  /api/get-organizations:
    get:
      tags:
      - Organization API
      description: get organizations
      operationId: ApiController.GetOrganizations
      parameters:
      - in: query
        name: owner
        description: owner
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            type: array
            items:
              $ref: '#/definitions/object.Organization'
  /api/get-provider:
    get:
      tags:
      - Provider API
      description: get provider
      operationId: ApiController.GetProvider
      parameters:
      - in: query
        name: id
        description: The id of the provider
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/object.Provider'
  /api/get-providers:
    get:
      tags:
      - Provider API
      description: get providers
      operationId: ApiController.GetProviders
      parameters:
      - in: query
        name: owner
        description: The owner of providers
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            type: array
            items:
              $ref: '#/definitions/object.Provider'
  /api/get-records:
    get:
      tags:
      - Record API
      description: get all records
      operationId: ApiController.GetRecords
      parameters:
      - in: query
        name: pageSize
        description: The size of each page
        required: true
        type: string
      - in: query
        name: p
        description: The number of the page
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            type: array
            items:
              $ref: '#/definitions/object.Records'
  /api/get-records-filter:
    post:
      tags:
      - Record API
      description: get records by filter
      operationId: ApiController.GetRecordsByFilter
      parameters:
      - in: body
        name: body
        description: filter Record message
        required: true
        schema:
          $ref: '#/definitions/object.Records'
      responses:
        "200":
          description: The Response object
          schema:
            type: array
            items:
              $ref: '#/definitions/object.Records'
  /api/get-resource:
    get:
      tags:
      - Resource API
      operationId: ApiController.GetResource
  /api/get-resources:
    get:
      tags:
      - Resource API
      operationId: ApiController.GetResources
  /api/get-sorted-users:
    get:
      tags:
      - User API
      operationId: ApiController.GetSortedUsers
      parameters:
      - in: query
        name: owner
        description: The owner of users
        required: true
        type: string
      - in: query
        name: sorter
        description: The DB column name to sort by, e.g., created_time
        required: true
        type: string
      - in: query
        name: limit
        description: The count of users to return, e.g., 25
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            type: array
            items:
              $ref: '#/definitions/object.User'
  /api/get-token:
    get:
      tags:
      - Token API
      description: get token
      operationId: ApiController.GetToken
      parameters:
      - in: query
        name: id
        description: The id of token
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/object.Token'
  /api/get-tokens:
    get:
      tags:
      - Token API
      description: get tokens
      operationId: ApiController.GetTokens
      parameters:
      - in: query
        name: owner
        description: The owner of tokens
        required: true
        type: string
      - in: query
        name: pageSize
        description: The size of each page
        required: true
        type: string
      - in: query
        name: p
        description: The number of the page
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            type: array
            items:
              $ref: '#/definitions/object.Token'
  /api/get-user:
    get:
      tags:
      - User API
      description: get user
      operationId: ApiController.GetUser
      parameters:
      - in: query
        name: id
        description: The id of the user
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/object.User'
  /api/get-user-application:
    get:
      tags:
      - Application API
      description: get the detail of the user's application
      operationId: ApiController.GetUserApplication
      parameters:
      - in: query
        name: id
        description: The id of the user
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/object.Application'
  /api/get-user-count:
    get:
      tags:
      - User API
      operationId: ApiController.GetUserCount
      parameters:
      - in: query
        name: owner
        description: The owner of users
        required: true
        type: string
      - in: query
        name: isOnline
        description: The filter for query, 1 for online, 0 for offline, empty string for all users
        required: true
        type: string
      responses:
        "200":
          description: '{int} int The count of filtered users for an organization'
  /api/get-users:
    get:
      tags:
      - User API
      operationId: ApiController.GetUsers
      parameters:
      - in: query
        name: owner
        description: The owner of users
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            type: array
            items:
              $ref: '#/definitions/object.User'
  /api/get-webhook:
    get:
      tags:
      - Webhook API
      description: get webhook
      operationId: ApiController.GetWebhook
      parameters:
      - in: query
        name: id
        description: The id of the webhook
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/object.Webhook'
  /api/get-webhooks:
    get:
      tags:
      - Webhook API
      description: get webhooks
      operationId: ApiController.GetWebhooks
      parameters:
      - in: query
        name: owner
        description: The owner of webhooks
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            type: array
            items:
              $ref: '#/definitions/object.Webhook'
  /api/login:
    post:
      tags:
      - Login API
      description: login
      operationId: ApiController.Login
      parameters:
      - in: query
        name: oAuthParams
        description: oAuth parameters
        required: true
        type: string
      - in: body
        name: body
        description: Login information
        required: true
        schema:
          $ref: '#/definitions/RequestForm'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.api_controller.Response'
  /api/login/oauth/access_token:
    post:
      tags:
      - Token API
      description: get OAuth access token
      operationId: ApiController.GetOAuthToken
      parameters:
      - in: query
        name: grant_type
        description: OAuth grant type
        required: true
        type: string
      - in: query
        name: client_id
        description: OAuth client id
        required: true
        type: string
      - in: query
        name: client_secret
        description: OAuth client secret
        required: true
        type: string
      - in: query
        name: code
        description: OAuth code
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/object.TokenWrapper'
  /api/login/oauth/code:
    post:
      tags:
      - Token API
      description: get OAuth code
      operationId: ApiController.GetOAuthCode
      parameters:
      - in: query
        name: user_id
        description: The id of user
        required: true
        type: string
      - in: query
        name: client_id
        description: OAuth client id
        required: true
        type: string
      - in: query
        name: response_type
        description: OAuth response type
        required: true
        type: string
      - in: query
        name: redirect_uri
        description: OAuth redirect URI
        required: true
        type: string
      - in: query
        name: scope
        description: OAuth scope
        required: true
        type: string
      - in: query
        name: state
        description: OAuth state
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/object.TokenWrapper'
  /api/logout:
    post:
      tags:
      - Login API
      description: logout the current user
      operationId: ApiController.Logout
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/send-verification-code:
    post:
      tags:
      - Verification API
      operationId: ApiController.SendVerificationCode
  /api/set-password:
    post:
      tags:
      - Account API
      description: set password
      operationId: ApiController.SetPassword
      parameters:
      - in: formData
        name: userOwner
        description: The owner of the user
        required: true
        type: string
      - in: formData
        name: userName
        description: The name of the user
        required: true
        type: string
      - in: formData
        name: oldPassword
        description: The old password of the user
        required: true
        type: string
      - in: formData
        name: newPassword
        description: The new password of the user
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/signup:
    post:
      tags:
      - Login API
      description: sign up a new user
      operationId: ApiController.Signup
      parameters:
      - in: formData
        name: username
        description: The username to sign up
        required: true
        type: string
      - in: formData
        name: password
        description: The password
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/sync-ldap-users:
    post:
      tags:
      - Account API
      operationId: ApiController.SyncLdapUsers
  /api/unlink:
    post:
      tags:
      - Login API
  /api/update-application:
    get:
      tags:
      - Login API
      description: get application login
      operationId: ApiController.GetApplicationLogin
      parameters:
      - in: query
        name: clientId
        description: client id
        required: true
        type: string
      - in: query
        name: responseType
        description: response type
        required: true
        type: string
      - in: query
        name: redirectUri
        description: redirect uri
        required: true
        type: string
      - in: query
        name: scope
        description: scope
        required: true
        type: string
      - in: query
        name: state
        description: state
        required: true
        type: string
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.api_controller.Response'
    post:
      tags:
      - Application API
      description: update an application
      operationId: ApiController.UpdateApplication
      parameters:
      - in: query
        name: id
        description: The id of the application
        required: true
        type: string
      - in: body
        name: body
        description: The details of the application
        required: true
        schema:
          $ref: '#/definitions/object.Application'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/update-ldap:
    post:
      tags:
      - Account API
      operationId: ApiController.UpdateLdap
  /api/update-organization:
    post:
      tags:
      - Organization API
      description: update organization
      operationId: ApiController.UpdateOrganization
      parameters:
      - in: query
        name: id
        description: The id of the organization
        required: true
        type: string
      - in: body
        name: body
        description: The details of the organization
        required: true
        schema:
          $ref: '#/definitions/object.Organization'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/update-provider:
    post:
      tags:
      - Provider API
      description: update provider
      operationId: ApiController.UpdateProvider
      parameters:
      - in: query
        name: id
        description: The id of the provider
        required: true
        type: string
      - in: body
        name: body
        description: The details of the provider
        required: true
        schema:
          $ref: '#/definitions/object.Provider'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/update-resource:
    post:
      tags:
      - Resource API
      operationId: ApiController.UpdateResource
  /api/update-token:
    post:
      tags:
      - Token API
      description: update token
      operationId: ApiController.UpdateToken
      parameters:
      - in: query
        name: id
        description: The id of token
        required: true
        type: string
      - in: body
        name: body
        description: Details of the token
        required: true
        schema:
          $ref: '#/definitions/object.Token'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/update-user:
    post:
      tags:
      - User API
      description: update user
      operationId: ApiController.UpdateUser
      parameters:
      - in: query
        name: id
        description: The id of the user
        required: true
        type: string
      - in: body
        name: body
        description: The details of the user
        required: true
        schema:
          $ref: '#/definitions/object.User'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/update-webhook:
    post:
      tags:
      - Webhook API
      description: update webhook
      operationId: ApiController.UpdateWebhook
      parameters:
      - in: query
        name: id
        description: The id of the webhook
        required: true
        type: string
      - in: body
        name: body
        description: The details of the webhook
        required: true
        schema:
          $ref: '#/definitions/object.Webhook'
      responses:
        "200":
          description: The Response object
          schema:
            $ref: '#/definitions/controllers.Response'
  /api/upload-resource:
    post:
      tags:
      - Resource API
      operationId: ApiController.UploadResource
definitions:
  1713.0xc000393f50.false:
    title: "false"
    type: object
  1747.0xc000393f80.false:
    title: "false"
    type: object
  RequestForm:
    title: RequestForm
    type: object
  Response:
    title: Response
    type: object
  controllers.Response:
    title: Response
    type: object
    properties:
      data:
        $ref: '#/definitions/1713.0xc000393f50.false'
      data2:
        $ref: '#/definitions/1747.0xc000393f80.false'
      msg:
        type: string
      status:
        type: string
  controllers.api_controller.Response:
    title: Response
    type: object
    properties:
      data:
        $ref: '#/definitions/1713.0xc000393f50.false'
      data2:
        $ref: '#/definitions/1747.0xc000393f80.false'
      msg:
        type: string
      status:
        type: string
  emailForm:
    title: emailForm
    type: object
  object.Application:
    title: Application
    type: object
    properties:
      affiliationUrl:
        type: string
      clientId:
        type: string
      clientSecret:
        type: string
      createdTime:
        type: string
      description:
        type: string
      displayName:
        type: string
      enableCodeSignin:
        type: boolean
      enablePassword:
        type: boolean
      enableSignUp:
        type: boolean
      expireInHours:
        type: integer
        format: int64
      forgetUrl:
        type: string
      homepageUrl:
        type: string
      logo:
        type: string
      name:
        type: string
      organization:
        type: string
      organizationObj:
        $ref: '#/definitions/object.Organization'
      owner:
        type: string
      providers:
        type: array
        items:
          $ref: '#/definitions/object.ProviderItem'
      redirectUris:
        type: array
        items:
          type: string
      signinHtml:
        type: string
      signinUrl:
        type: string
      signupHtml:
        type: string
      signupItems:
        type: array
        items:
          $ref: '#/definitions/object.SignupItem'
      signupUrl:
        type: string
      termsOfUse:
        type: string
  object.Organization:
    title: Organization
    type: object
    properties:
      createdTime:
        type: string
      defaultAvatar:
        type: string
      displayName:
        type: string
      enableSoftDeletion:
        type: boolean
      favicon:
        type: string
      masterPassword:
        type: string
      name:
        type: string
      owner:
        type: string
      passwordSalt:
        type: string
      passwordType:
        type: string
      phonePrefix:
        type: string
      websiteUrl:
        type: string
  object.Provider:
    title: Provider
    type: object
    properties:
      appId:
        type: string
      bucket:
        type: string
      category:
        type: string
      clientId:
        type: string
      clientSecret:
        type: string
      content:
        type: string
      createdTime:
        type: string
      displayName:
        type: string
      domain:
        type: string
      endpoint:
        type: string
      host:
        type: string
      method:
        type: string
      name:
        type: string
      owner:
        type: string
      port:
        type: integer
        format: int64
      providerUrl:
        type: string
      regionId:
        type: string
      signName:
        type: string
      templateCode:
        type: string
      title:
        type: string
      type:
        type: string
  object.ProviderItem:
    title: ProviderItem
    type: object
    properties:
      alertType:
        type: string
      canSignIn:
        type: boolean
      canSignUp:
        type: boolean
      canUnlink:
        type: boolean
      name:
        type: string
      prompted:
        type: boolean
      provider:
        $ref: '#/definitions/object.Provider'
  object.Records:
    title: Records
    type: object
  object.SignupItem:
    title: SignupItem
    type: object
    properties:
      name:
        type: string
      prompted:
        type: boolean
      required:
        type: boolean
      rule:
        type: string
      visible:
        type: boolean
  object.Token:
    title: Token
    type: object
    properties:
      accessToken:
        type: string
      application:
        type: string
      code:
        type: string
      createdTime:
        type: string
      expiresIn:
        type: integer
        format: int64
      name:
        type: string
      organization:
        type: string
      owner:
        type: string
      scope:
        type: string
      tokenType:
        type: string
      user:
        type: string
  object.TokenWrapper:
    title: TokenWrapper
    type: object
    properties:
      access_token:
        type: string
      expires_in:
        type: integer
        format: int64
      id_token:
        type: string
      scope:
        type: string
      token_type:
        type: string
  object.User:
    title: User
    type: object
    properties:
      address:
        type: array
        items:
          type: string
      affiliation:
        type: string
      avatar:
        type: string
      bio:
        type: string
      birthday:
        type: string
      createdIp:
        type: string
      createdTime:
        type: string
      dingtalk:
        type: string
      displayName:
        type: string
      education:
        type: string
      email:
        type: string
      facebook:
        type: string
      gender:
        type: string
      gitee:
        type: string
      github:
        type: string
      gitlab:
        type: string
      google:
        type: string
      hash:
        type: string
      homepage:
        type: string
      id:
        type: string
      idCard:
        type: string
      idCardType:
        type: string
      isAdmin:
        type: boolean
      isDefaultAvatar:
        type: boolean
      isDeleted:
        type: boolean
      isForbidden:
        type: boolean
      isGlobalAdmin:
        type: boolean
      isOnline:
        type: boolean
      language:
        type: string
      lark:
        type: string
      lastSigninIp:
        type: string
      lastSigninTime:
        type: string
      ldap:
        type: string
      linkedin:
        type: string
      location:
        type: string
      name:
        type: string
      owner:
        type: string
      password:
        type: string
      passwordSalt:
        type: string
      permanentAvatar:
        type: string
      phone:
        type: string
      preHash:
        type: string
      properties:
        additionalProperties:
          type: string
      qq:
        type: string
      ranking:
        type: integer
        format: int64
      region:
        type: string
      score:
        type: integer
        format: int64
      signupApplication:
        type: string
      tag:
        type: string
      title:
        type: string
      type:
        type: string
      updatedTime:
        type: string
      wechat:
        type: string
      wecom:
        type: string
      weibo:
        type: string
  object.Webhook:
    title: Webhook
    type: object
    properties:
      contentType:
        type: string
      createdTime:
        type: string
      events:
        type: array
        items:
          type: string
      name:
        type: string
      organization:
        type: string
      owner:
        type: string
      url:
        type: string
  smsForm:
    title: smsForm
    type: object
