Google Users API

Operations related to Users

OpenAPI Specification

google-users-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Google Books About Users API
  description: API for retrieving Bookshelf and Volume resources from Google Books
  version: 1.0.0
  contact:
    name: Google Books API
    url: https://developers.google.com/books
servers:
- url: https://www.googleapis.com/books/v1
  description: Google Books API v1
tags:
- name: Users
  description: Operations related to Users
paths:
  /v2/{name}:
    get:
      tags:
      - Users
      summary: Google Retrieve Name
      description: Gets the user capabilities.
      operationId: googleDrivelabelsUsersGetcapabilities
      security:
      - Oauth2:
        - https://www.googleapis.com/auth/drive.admin.labels
        Oauth2c:
        - https://www.googleapis.com/auth/drive.admin.labels
      - Oauth2:
        - https://www.googleapis.com/auth/drive.admin.labels.readonly
        Oauth2c:
        - https://www.googleapis.com/auth/drive.admin.labels.readonly
      - Oauth2:
        - https://www.googleapis.com/auth/drive.labels
        Oauth2c:
        - https://www.googleapis.com/auth/drive.labels
      - Oauth2:
        - https://www.googleapis.com/auth/drive.labels.readonly
        Oauth2c:
        - https://www.googleapis.com/auth/drive.labels.readonly
      parameters:
      - description: Required. The resource name of the user. Only "users/me/capabilities" is supported.
        in: path
        name: name
        required: true
        schema:
          type: string
      - description: 'The customer to scope this request to. For example: "customers/abcd1234". If unset, will return settings within the current customer.'
        in: query
        name: customer
        schema:
          type: string
      - description: Set to `true` in order to use the user's admin credentials. The server verifies that the user is an admin for the label before allowing access.
        in: query
        name: useAdminAccess
        schema:
          type: boolean
      - description: When specified, only certain fields belonging to the indicated view are returned.
        in: query
        name: view
        schema:
          enum:
          - LABEL_VIEW_BASIC
          - LABEL_VIEW_FULL
          type: string
      - description: V1 error format.
        in: query
        name: $.xgafv
        schema:
          enum:
          - '1'
          - '2'
          type: string
      - description: OAuth access token.
        in: query
        name: access_token
        schema:
          type: string
      - description: Data format for response.
        in: query
        name: alt
        schema:
          enum:
          - json
          - media
          - proto
          type: string
      - description: JSONP
        in: query
        name: callback
        schema:
          type: string
      - description: Selector specifying which fields to include in a partial response.
        in: query
        name: fields
        schema:
          type: string
      - description: API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
        in: query
        name: key
        schema:
          type: string
      - description: OAuth 2.0 token for the current user.
        in: query
        name: oauth_token
        schema:
          type: string
      - description: Returns response with indentations and line breaks.
        in: query
        name: prettyPrint
        schema:
          type: boolean
      - description: Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
        in: query
        name: quotaUser
        schema:
          type: string
      - description: Upload protocol for media (e.g. "raw", "multipart").
        in: query
        name: upload_protocol
        schema:
          type: string
      - description: Legacy upload protocol for media (e.g. "media", "multipart").
        in: query
        name: uploadType
        schema:
          type: string
      - in: header
        name: Authorization
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleAppsDriveLabelsV2UserCapabilities'
      x-microcks-operation:
        delay: 100
        dispatcher: FALLBACK
        dispatcherRules: SuccessExample
  /gmail/v1/users/{userId}/watch:
    post:
      tags:
      - Users
      summary: Google Watch Users
      description: The Watch Users operation in the Google Gmail API allows applications to set up push notifications for a user's mailbox by establishing a watch on their Gmail account. When called via POST to /gmail/v1/users/{userId}/watch, this endpoint configures Gmail to send notifications to a specified Cloud Pub/Sub topic whenever changes occur in the user's mailbox, such as receiving new emails, messages being deleted, or labels being modified. The watch remains active for a renewable period (default 7 days), and applications must include the target Pub/Sub topic details in the request body along with optional filters to specify which types of events should trigger notifications. This enables real-time synchronization and event-driven architectures without the need for constant polling of the mailbox.
      parameters:
      - name: Content-Type
        in: header
        schema:
          type: string
        example: application/json
      - name: Accept
        in: header
        schema:
          type: string
        example: application/json
      - name: userId
        in: path
        schema:
          type: string
        required: true
        description: '(Required) '
        example: incididunt labore i
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GmailUsersWatchPostRequest'
      responses:
        '200':
          description: OK
          headers:
            Content-Type:
              schema:
                type: string
                example: application/json
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GmailUsersWatchPostResponse'
              examples:
                GmailUsersWatchPostResponseExample:
                  $ref: '#/components/examples/GmailUsersWatchPostResponseExample'
      x-api-evangelist-processing:
        ChooseTags: true
        WriteDescription: true
      x-microcks-operation:
        delay: 100
        dispatcher: FALLBACK
        dispatcherRules: GmailUsersWatchPostResponseExample
  /gmail/v1/users/{userId}/stop:
    post:
      tags:
      - Users
      summary: Google Stop Notifications for User
      description: Stop receiving push notifications for the given user mailbox.
      parameters:
      - name: userId
        in: path
        schema:
          type: string
        required: true
        description: '(Required) '
        example: incididunt labore i
      requestBody:
        content: {}
      responses:
        '204':
          description: No Content
          content:
            text/plain:
              schema:
                type: string
      x-api-evangelist-processing:
        ChooseTags: true
      x-microcks-operation:
        delay: 100
        dispatcher: FALLBACK
        dispatcherRules: SuccessExample
components:
  schemas:
    GoogleAppsDriveLabelsV2UserCapabilities:
      description: The capabilities of a user.
      properties:
        canAccessLabelManager:
          description: Output only. Whether the user is allowed access to the label manager.
          readOnly: true
          type: boolean
        canAdministrateLabels:
          description: Output only. Whether the user is an administrator for the shared labels feature.
          readOnly: true
          type: boolean
        canCreateAdminLabels:
          description: Output only. Whether the user is allowed to create new admin labels.
          readOnly: true
          type: boolean
        canCreateSharedLabels:
          description: Output only. Whether the user is allowed to create new shared labels.
          readOnly: true
          type: boolean
        name:
          description: Output only. Resource name for the user capabilities.
          readOnly: true
          type: string
      type: object
    GmailUsersWatchPostResponse:
      description: GmailUsersWatchPostResponse schema
      type: object
      properties:
        historyId:
          type: string
        expiration:
          type: string
    GmailUsersWatchPostRequest:
      description: GmailUsersWatchPostRequest schema
      type: object
      example:
        labelIds:
        - officia ex reprehenderit et
        - labore ullamco ut
        labelFilterAction: exclude
        labelFilterBehavior: include
        topicName: Ut enim in in
  examples:
    GmailUsersWatchPostResponseExample:
      summary: Successful 200 response
      value:
        historyId: quis aute sed
        expiration: dolore non exercitation Excepteur est
  securitySchemes:
    OAuth2:
      type: oauth2
      description: OAuth 2.0 authentication for Google Books API
      flows:
        authorizationCode:
          authorizationUrl: https://accounts.google.com/o/oauth2/v2/auth
          tokenUrl: https://oauth2.googleapis.com/token
          scopes:
            https://www.googleapis.com/auth/books: Manage your Google Books library