openapi: 3.0.0
servers:
  - url: https://walletobjects.googleapis.com/
info:
  contact:
    name: Google
    url: https://google.com
  description: API for issuers to save and manage Google Wallet Objects.
  license:
    name: Creative Commons Attribution 3.0
    url: http://creativecommons.org/licenses/by/3.0/
  termsOfService: https://developers.google.com/terms/
  title: Google Pay Passes API
  version: v1
  x-origin:
    - format: google
      url: https://walletobjects.googleapis.com/$discovery/rest?version=v1
      version: v1
  x-providerName: walletobjects.googleapis.com
  x-serviceName: pay-passes
externalDocs:
  url: https://developers.google.com/pay/passes
tags:
  - name: eventticketclass
  - name: eventticketobject
  - name: flightclass
  - name: flightobject
  - name: genericclass
  - name: genericobject
  - name: giftcardclass
  - name: giftcardobject
  - name: issuer
  - name: jwt
  - name: loyaltyclass
  - name: loyaltyobject
  - name: media
  - name: offerclass
  - name: offerobject
  - name: permissions
  - name: smarttap
  - name: transitclass
  - name: transitobject
  - name: walletobjects
paths:
  /walletobjects/v1/eventTicketClass:
    get:
      description: Returns a list of all event ticket classes for a given issuer ID.
      operationId: walletobjects.eventticketclass.list
      parameters:
        - description: The ID of the issuer authorized to list classes.
          in: query
          name: issuerId
          schema:
            type: string
        - description: Identifies the max number of results returned by a list. All results are returned if `maxResults` isn't defined.
          in: query
          name: maxResults
          schema:
            type: integer
        - description: Used to get the next set of results if `maxResults` is specified, but more than `maxResults` classes are available in a list. For example, if you have a list of 200 classes and you call list with `maxResults` set to 20, list will return the first 20 classes and a token. Call list again with `maxResults` set to 20 and the token to get the next 20 classes.
          in: query
          name: token
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/EventTicketClassListResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - eventticketclass
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts an event ticket class with the given ID and properties.
      operationId: walletobjects.eventticketclass.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/EventTicketClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/EventTicketClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - eventticketclass
  "/walletobjects/v1/eventTicketClass/{resourceId}":
    get:
      description: Returns the event ticket class with the given class ID.
      operationId: walletobjects.eventticketclass.get
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/EventTicketClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - eventticketclass
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    patch:
      description: Updates the event ticket class referenced by the given class ID. This method supports patch semantics.
      operationId: walletobjects.eventticketclass.patch
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/EventTicketClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/EventTicketClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - eventticketclass
    put:
      description: Updates the event ticket class referenced by the given class ID.
      operationId: walletobjects.eventticketclass.update
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/EventTicketClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/EventTicketClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - eventticketclass
  "/walletobjects/v1/eventTicketClass/{resourceId}/addMessage":
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Adds a message to the event ticket class referenced by the given class ID.
      operationId: walletobjects.eventticketclass.addmessage
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddMessageRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/EventTicketClassAddMessageResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - eventticketclass
  /walletobjects/v1/eventTicketObject:
    get:
      description: Returns a list of all event ticket objects for a given issuer ID.
      operationId: walletobjects.eventticketobject.list
      parameters:
        - description: The ID of the class whose objects will be listed.
          in: query
          name: classId
          schema:
            type: string
        - description: Identifies the max number of results returned by a list. All results are returned if `maxResults` isn't defined.
          in: query
          name: maxResults
          schema:
            type: integer
        - description: Used to get the next set of results if `maxResults` is specified, but more than `maxResults` objects are available in a list. For example, if you have a list of 200 objects and you call list with `maxResults` set to 20, list will return the first 20 objects and a token. Call list again with `maxResults` set to 20 and the token to get the next 20 objects.
          in: query
          name: token
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/EventTicketObjectListResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - eventticketobject
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts an event ticket object with the given ID and properties.
      operationId: walletobjects.eventticketobject.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/EventTicketObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/EventTicketObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - eventticketobject
  "/walletobjects/v1/eventTicketObject/{resourceId}":
    get:
      description: Returns the event ticket object with the given object ID.
      operationId: walletobjects.eventticketobject.get
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/EventTicketObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - eventticketobject
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    patch:
      description: Updates the event ticket object referenced by the given object ID. This method supports patch semantics.
      operationId: walletobjects.eventticketobject.patch
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/EventTicketObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/EventTicketObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - eventticketobject
    put:
      description: Updates the event ticket object referenced by the given object ID.
      operationId: walletobjects.eventticketobject.update
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/EventTicketObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/EventTicketObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - eventticketobject
  "/walletobjects/v1/eventTicketObject/{resourceId}/addMessage":
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Adds a message to the event ticket object referenced by the given object ID.
      operationId: walletobjects.eventticketobject.addmessage
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddMessageRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/EventTicketObjectAddMessageResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - eventticketobject
  "/walletobjects/v1/eventTicketObject/{resourceId}/modifyLinkedOfferObjects":
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Modifies linked offer objects for the event ticket object with the given ID.
      operationId: walletobjects.eventticketobject.modifylinkedofferobjects
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ModifyLinkedOfferObjectsRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/EventTicketObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - eventticketobject
  /walletobjects/v1/flightClass:
    get:
      description: Returns a list of all flight classes for a given issuer ID.
      operationId: walletobjects.flightclass.list
      parameters:
        - description: The ID of the issuer authorized to list classes.
          in: query
          name: issuerId
          schema:
            type: string
        - description: Identifies the max number of results returned by a list. All results are returned if `maxResults` isn't defined.
          in: query
          name: maxResults
          schema:
            type: integer
        - description: Used to get the next set of results if `maxResults` is specified, but more than `maxResults` classes are available in a list. For example, if you have a list of 200 classes and you call list with `maxResults` set to 20, list will return the first 20 classes and a token. Call list again with `maxResults` set to 20 and the token to get the next 20 classes.
          in: query
          name: token
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FlightClassListResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - flightclass
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts an flight class with the given ID and properties.
      operationId: walletobjects.flightclass.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/FlightClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FlightClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - flightclass
  "/walletobjects/v1/flightClass/{resourceId}":
    get:
      description: Returns the flight class with the given class ID.
      operationId: walletobjects.flightclass.get
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FlightClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - flightclass
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    patch:
      description: Updates the flight class referenced by the given class ID. This method supports patch semantics.
      operationId: walletobjects.flightclass.patch
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/FlightClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FlightClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - flightclass
    put:
      description: Updates the flight class referenced by the given class ID.
      operationId: walletobjects.flightclass.update
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/FlightClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FlightClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - flightclass
  "/walletobjects/v1/flightClass/{resourceId}/addMessage":
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Adds a message to the flight class referenced by the given class ID.
      operationId: walletobjects.flightclass.addmessage
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddMessageRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FlightClassAddMessageResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - flightclass
  /walletobjects/v1/flightObject:
    get:
      description: Returns a list of all flight objects for a given issuer ID.
      operationId: walletobjects.flightobject.list
      parameters:
        - description: The ID of the class whose objects will be listed.
          in: query
          name: classId
          schema:
            type: string
        - description: Identifies the max number of results returned by a list. All results are returned if `maxResults` isn't defined.
          in: query
          name: maxResults
          schema:
            type: integer
        - description: Used to get the next set of results if `maxResults` is specified, but more than `maxResults` objects are available in a list. For example, if you have a list of 200 objects and you call list with `maxResults` set to 20, list will return the first 20 objects and a token. Call list again with `maxResults` set to 20 and the token to get the next 20 objects.
          in: query
          name: token
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FlightObjectListResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - flightobject
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts an flight object with the given ID and properties.
      operationId: walletobjects.flightobject.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/FlightObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FlightObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - flightobject
  "/walletobjects/v1/flightObject/{resourceId}":
    get:
      description: Returns the flight object with the given object ID.
      operationId: walletobjects.flightobject.get
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FlightObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - flightobject
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    patch:
      description: Updates the flight object referenced by the given object ID. This method supports patch semantics.
      operationId: walletobjects.flightobject.patch
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/FlightObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FlightObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - flightobject
    put:
      description: Updates the flight object referenced by the given object ID.
      operationId: walletobjects.flightobject.update
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/FlightObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FlightObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - flightobject
  "/walletobjects/v1/flightObject/{resourceId}/addMessage":
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Adds a message to the flight object referenced by the given object ID.
      operationId: walletobjects.flightobject.addmessage
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddMessageRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FlightObjectAddMessageResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - flightobject
  /walletobjects/v1/genericClass:
    get:
      description: Returns a list of all generic classes for a given issuer ID.
      operationId: walletobjects.genericclass.list
      parameters:
        - description: The ID of the issuer authorized to list classes.
          in: query
          name: issuerId
          schema:
            type: string
        - description: Identifies the max number of results returned by a list. All results are returned if `maxResults` isn't defined.
          in: query
          name: maxResults
          schema:
            type: integer
        - description: Used to get the next set of results if `maxResults` is specified, but more than `maxResults` classes are available in a list. For example, if you have a list of 200 classes and you call list with `maxResults` set to 20, list will return the first 20 classes and a token. Call list again with `maxResults` set to 20 and the token to get the next 20 classes.
          in: query
          name: token
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GenericClassListResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - genericclass
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts a generic class with the given ID and properties.
      operationId: walletobjects.genericclass.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GenericClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GenericClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - genericclass
  "/walletobjects/v1/genericClass/{resourceId}":
    get:
      description: Returns the generic class with the given class ID.
      operationId: walletobjects.genericclass.get
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GenericClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - genericclass
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    patch:
      description: Updates the generic class referenced by the given class ID. This method supports patch semantics.
      operationId: walletobjects.genericclass.patch
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GenericClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GenericClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - genericclass
    put:
      description: Updates the Generic class referenced by the given class ID.
      operationId: walletobjects.genericclass.update
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GenericClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GenericClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - genericclass
  /walletobjects/v1/genericObject:
    get:
      description: Returns a list of all generic objects for a given issuer ID.
      operationId: walletobjects.genericobject.list
      parameters:
        - description: The ID of the class whose objects will be listed.
          in: query
          name: classId
          schema:
            type: string
        - description: Identifies the max number of results returned by a list. All results are returned if `maxResults` isn't defined.
          in: query
          name: maxResults
          schema:
            type: integer
        - description: Used to get the next set of results if `maxResults` is specified, but more than `maxResults` objects are available in a list. For example, if you have a list of 200 objects and you call list with `maxResults` set to 20, list will return the first 20 objects and a token. Call list again with `maxResults` set to 20 and the token to get the next 20 objects.
          in: query
          name: token
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GenericObjectListResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - genericobject
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts a generic object with the given ID and properties.
      operationId: walletobjects.genericobject.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GenericObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GenericObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - genericobject
  "/walletobjects/v1/genericObject/{resourceId}":
    get:
      description: Returns the generic object with the given object ID.
      operationId: walletobjects.genericobject.get
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GenericObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - genericobject
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    patch:
      description: Updates the generic object referenced by the given object ID. This method supports patch semantics.
      operationId: walletobjects.genericobject.patch
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GenericObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GenericObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - genericobject
    put:
      description: Updates the generic object referenced by the given object ID.
      operationId: walletobjects.genericobject.update
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GenericObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GenericObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - genericobject
  /walletobjects/v1/giftCardClass:
    get:
      description: Returns a list of all gift card classes for a given issuer ID.
      operationId: walletobjects.giftcardclass.list
      parameters:
        - description: The ID of the issuer authorized to list classes.
          in: query
          name: issuerId
          schema:
            type: string
        - description: Identifies the max number of results returned by a list. All results are returned if `maxResults` isn't defined.
          in: query
          name: maxResults
          schema:
            type: integer
        - description: Used to get the next set of results if `maxResults` is specified, but more than `maxResults` classes are available in a list. For example, if you have a list of 200 classes and you call list with `maxResults` set to 20, list will return the first 20 classes and a token. Call list again with `maxResults` set to 20 and the token to get the next 20 classes.
          in: query
          name: token
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GiftCardClassListResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - giftcardclass
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts an gift card class with the given ID and properties.
      operationId: walletobjects.giftcardclass.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GiftCardClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GiftCardClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - giftcardclass
  "/walletobjects/v1/giftCardClass/{resourceId}":
    get:
      description: Returns the gift card class with the given class ID.
      operationId: walletobjects.giftcardclass.get
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GiftCardClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - giftcardclass
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    patch:
      description: Updates the gift card class referenced by the given class ID. This method supports patch semantics.
      operationId: walletobjects.giftcardclass.patch
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GiftCardClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GiftCardClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - giftcardclass
    put:
      description: Updates the gift card class referenced by the given class ID.
      operationId: walletobjects.giftcardclass.update
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GiftCardClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GiftCardClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - giftcardclass
  "/walletobjects/v1/giftCardClass/{resourceId}/addMessage":
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Adds a message to the gift card class referenced by the given class ID.
      operationId: walletobjects.giftcardclass.addmessage
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddMessageRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GiftCardClassAddMessageResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - giftcardclass
  /walletobjects/v1/giftCardObject:
    get:
      description: Returns a list of all gift card objects for a given issuer ID.
      operationId: walletobjects.giftcardobject.list
      parameters:
        - description: The ID of the class whose objects will be listed.
          in: query
          name: classId
          schema:
            type: string
        - description: Identifies the max number of results returned by a list. All results are returned if `maxResults` isn't defined.
          in: query
          name: maxResults
          schema:
            type: integer
        - description: Used to get the next set of results if `maxResults` is specified, but more than `maxResults` objects are available in a list. For example, if you have a list of 200 objects and you call list with `maxResults` set to 20, list will return the first 20 objects and a token. Call list again with `maxResults` set to 20 and the token to get the next 20 objects.
          in: query
          name: token
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GiftCardObjectListResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - giftcardobject
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts an gift card object with the given ID and properties.
      operationId: walletobjects.giftcardobject.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GiftCardObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GiftCardObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - giftcardobject
  "/walletobjects/v1/giftCardObject/{resourceId}":
    get:
      description: Returns the gift card object with the given object ID.
      operationId: walletobjects.giftcardobject.get
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GiftCardObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - giftcardobject
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    patch:
      description: Updates the gift card object referenced by the given object ID. This method supports patch semantics.
      operationId: walletobjects.giftcardobject.patch
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GiftCardObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GiftCardObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - giftcardobject
    put:
      description: Updates the gift card object referenced by the given object ID.
      operationId: walletobjects.giftcardobject.update
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GiftCardObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GiftCardObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - giftcardobject
  "/walletobjects/v1/giftCardObject/{resourceId}/addMessage":
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Adds a message to the gift card object referenced by the given object ID.
      operationId: walletobjects.giftcardobject.addmessage
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddMessageRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GiftCardObjectAddMessageResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - giftcardobject
  /walletobjects/v1/issuer:
    get:
      description: Returns a list of all issuers shared to the caller.
      operationId: walletobjects.issuer.list
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/IssuerListResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - issuer
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts an issuer with the given ID and properties.
      operationId: walletobjects.issuer.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Issuer"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Issuer"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - issuer
  "/walletobjects/v1/issuer/{resourceId}":
    get:
      description: Returns the issuer with the given issuer ID.
      operationId: walletobjects.issuer.get
      parameters:
        - description: The unique identifier for an issuer.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Issuer"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - issuer
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    patch:
      description: Updates the issuer referenced by the given issuer ID. This method supports patch semantics.
      operationId: walletobjects.issuer.patch
      parameters:
        - description: The unique identifier for an issuer.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Issuer"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Issuer"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - issuer
    put:
      description: Updates the issuer referenced by the given issuer ID.
      operationId: walletobjects.issuer.update
      parameters:
        - description: The unique identifier for an issuer.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Issuer"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Issuer"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - issuer
  /walletobjects/v1/jwt:
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts the resources in the JWT.
      operationId: walletobjects.jwt.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/JwtResource"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/JwtInsertResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - jwt
  /walletobjects/v1/loyaltyClass:
    get:
      description: Returns a list of all loyalty classes for a given issuer ID.
      operationId: walletobjects.loyaltyclass.list
      parameters:
        - description: The ID of the issuer authorized to list classes.
          in: query
          name: issuerId
          schema:
            type: string
        - description: Identifies the max number of results returned by a list. All results are returned if `maxResults` isn't defined.
          in: query
          name: maxResults
          schema:
            type: integer
        - description: Used to get the next set of results if `maxResults` is specified, but more than `maxResults` classes are available in a list. For example, if you have a list of 200 classes and you call list with `maxResults` set to 20, list will return the first 20 classes and a token. Call list again with `maxResults` set to 20 and the token to get the next 20 classes.
          in: query
          name: token
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LoyaltyClassListResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - loyaltyclass
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts an loyalty class with the given ID and properties.
      operationId: walletobjects.loyaltyclass.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LoyaltyClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LoyaltyClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - loyaltyclass
  "/walletobjects/v1/loyaltyClass/{resourceId}":
    get:
      description: Returns the loyalty class with the given class ID.
      operationId: walletobjects.loyaltyclass.get
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LoyaltyClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - loyaltyclass
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    patch:
      description: Updates the loyalty class referenced by the given class ID. This method supports patch semantics.
      operationId: walletobjects.loyaltyclass.patch
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LoyaltyClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LoyaltyClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - loyaltyclass
    put:
      description: Updates the loyalty class referenced by the given class ID.
      operationId: walletobjects.loyaltyclass.update
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LoyaltyClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LoyaltyClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - loyaltyclass
  "/walletobjects/v1/loyaltyClass/{resourceId}/addMessage":
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Adds a message to the loyalty class referenced by the given class ID.
      operationId: walletobjects.loyaltyclass.addmessage
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddMessageRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LoyaltyClassAddMessageResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - loyaltyclass
  /walletobjects/v1/loyaltyObject:
    get:
      description: Returns a list of all loyalty objects for a given issuer ID.
      operationId: walletobjects.loyaltyobject.list
      parameters:
        - description: The ID of the class whose objects will be listed.
          in: query
          name: classId
          schema:
            type: string
        - description: Identifies the max number of results returned by a list. All results are returned if `maxResults` isn't defined.
          in: query
          name: maxResults
          schema:
            type: integer
        - description: Used to get the next set of results if `maxResults` is specified, but more than `maxResults` objects are available in a list. For example, if you have a list of 200 objects and you call list with `maxResults` set to 20, list will return the first 20 objects and a token. Call list again with `maxResults` set to 20 and the token to get the next 20 objects.
          in: query
          name: token
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LoyaltyObjectListResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - loyaltyobject
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts an loyalty object with the given ID and properties.
      operationId: walletobjects.loyaltyobject.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LoyaltyObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LoyaltyObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - loyaltyobject
  "/walletobjects/v1/loyaltyObject/{resourceId}":
    get:
      description: Returns the loyalty object with the given object ID.
      operationId: walletobjects.loyaltyobject.get
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LoyaltyObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - loyaltyobject
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    patch:
      description: Updates the loyalty object referenced by the given object ID. This method supports patch semantics.
      operationId: walletobjects.loyaltyobject.patch
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LoyaltyObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LoyaltyObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - loyaltyobject
    put:
      description: Updates the loyalty object referenced by the given object ID.
      operationId: walletobjects.loyaltyobject.update
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LoyaltyObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LoyaltyObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - loyaltyobject
  "/walletobjects/v1/loyaltyObject/{resourceId}/addMessage":
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Adds a message to the loyalty object referenced by the given object ID.
      operationId: walletobjects.loyaltyobject.addmessage
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddMessageRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LoyaltyObjectAddMessageResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - loyaltyobject
  "/walletobjects/v1/loyaltyObject/{resourceId}/modifyLinkedOfferObjects":
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Modifies linked offer objects for the loyalty object with the given ID.
      operationId: walletobjects.loyaltyobject.modifylinkedofferobjects
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ModifyLinkedOfferObjectsRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LoyaltyObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - loyaltyobject
  /walletobjects/v1/offerClass:
    get:
      description: Returns a list of all offer classes for a given issuer ID.
      operationId: walletobjects.offerclass.list
      parameters:
        - description: The ID of the issuer authorized to list classes.
          in: query
          name: issuerId
          schema:
            type: string
        - description: Identifies the max number of results returned by a list. All results are returned if `maxResults` isn't defined.
          in: query
          name: maxResults
          schema:
            type: integer
        - description: Used to get the next set of results if `maxResults` is specified, but more than `maxResults` classes are available in a list. For example, if you have a list of 200 classes and you call list with `maxResults` set to 20, list will return the first 20 classes and a token. Call list again with `maxResults` set to 20 and the token to get the next 20 classes.
          in: query
          name: token
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OfferClassListResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - offerclass
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts an offer class with the given ID and properties.
      operationId: walletobjects.offerclass.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/OfferClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OfferClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - offerclass
  "/walletobjects/v1/offerClass/{resourceId}":
    get:
      description: Returns the offer class with the given class ID.
      operationId: walletobjects.offerclass.get
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OfferClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - offerclass
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    patch:
      description: Updates the offer class referenced by the given class ID. This method supports patch semantics.
      operationId: walletobjects.offerclass.patch
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/OfferClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OfferClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - offerclass
    put:
      description: Updates the offer class referenced by the given class ID.
      operationId: walletobjects.offerclass.update
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/OfferClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OfferClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - offerclass
  "/walletobjects/v1/offerClass/{resourceId}/addMessage":
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Adds a message to the offer class referenced by the given class ID.
      operationId: walletobjects.offerclass.addmessage
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddMessageRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OfferClassAddMessageResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - offerclass
  /walletobjects/v1/offerObject:
    get:
      description: Returns a list of all offer objects for a given issuer ID.
      operationId: walletobjects.offerobject.list
      parameters:
        - description: The ID of the class whose objects will be listed.
          in: query
          name: classId
          schema:
            type: string
        - description: Identifies the max number of results returned by a list. All results are returned if `maxResults` isn't defined.
          in: query
          name: maxResults
          schema:
            type: integer
        - description: Used to get the next set of results if `maxResults` is specified, but more than `maxResults` objects are available in a list. For example, if you have a list of 200 objects and you call list with `maxResults` set to 20, list will return the first 20 objects and a token. Call list again with `maxResults` set to 20 and the token to get the next 20 objects.
          in: query
          name: token
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OfferObjectListResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - offerobject
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts an offer object with the given ID and properties.
      operationId: walletobjects.offerobject.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/OfferObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OfferObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - offerobject
  "/walletobjects/v1/offerObject/{resourceId}":
    get:
      description: Returns the offer object with the given object ID.
      operationId: walletobjects.offerobject.get
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OfferObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - offerobject
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    patch:
      description: Updates the offer object referenced by the given object ID. This method supports patch semantics.
      operationId: walletobjects.offerobject.patch
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/OfferObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OfferObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - offerobject
    put:
      description: Updates the offer object referenced by the given object ID.
      operationId: walletobjects.offerobject.update
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/OfferObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OfferObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - offerobject
  "/walletobjects/v1/offerObject/{resourceId}/addMessage":
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Adds a message to the offer object referenced by the given object ID.
      operationId: walletobjects.offerobject.addmessage
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddMessageRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OfferObjectAddMessageResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - offerobject
  "/walletobjects/v1/permissions/{resourceId}":
    get:
      description: Returns the permissions for the given issuer id.
      operationId: walletobjects.permissions.get
      parameters:
        - description: The unique identifier for an issuer. This ID must be unique across all issuers.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Permissions"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - permissions
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    put:
      description: Updates the permissions for the given issuer.
      operationId: walletobjects.permissions.update
      parameters:
        - description: The unique identifier for an issuer. This ID must be unique across all issuers.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Permissions"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Permissions"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - permissions
  /walletobjects/v1/privateContent/uploadPrivateData:
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Upload private data (text or URI) and returns an Id to be used in its place.
      operationId: walletobjects.walletobjects.v1.privateContent.uploadPrivateData
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UploadPrivateDataRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UploadPrivateDataResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - walletobjects
  "/walletobjects/v1/privateContent/{issuerId}/uploadPrivateImage":
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Uploads a private image and returns an Id to be used in its place.
      operationId: walletobjects.media.upload
      parameters:
        - description: The ID of the issuer sending the image.
          in: path
          name: issuerId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/octet-stream:
            schema:
              $ref: "#/components/schemas/UploadPrivateImageRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UploadPrivateImageResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - media
  /walletobjects/v1/smartTap:
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts the smart tap.
      operationId: walletobjects.smarttap.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SmartTap"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SmartTap"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - smarttap
  /walletobjects/v1/transitClass:
    get:
      description: Returns a list of all transit classes for a given issuer ID.
      operationId: walletobjects.transitclass.list
      parameters:
        - description: The ID of the issuer authorized to list classes.
          in: query
          name: issuerId
          schema:
            type: string
        - description: Identifies the max number of results returned by a list. All results are returned if `maxResults` isn't defined.
          in: query
          name: maxResults
          schema:
            type: integer
        - description: Used to get the next set of results if `maxResults` is specified, but more than `maxResults` classes are available in a list. For example, if you have a list of 200 classes and you call list with `maxResults` set to 20, list will return the first 20 classes and a token. Call list again with `maxResults` set to 20 and the token to get the next 20 classes.
          in: query
          name: token
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TransitClassListResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - transitclass
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts a transit class with the given ID and properties.
      operationId: walletobjects.transitclass.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/TransitClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TransitClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - transitclass
  "/walletobjects/v1/transitClass/{resourceId}":
    get:
      description: Returns the transit class with the given class ID.
      operationId: walletobjects.transitclass.get
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TransitClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - transitclass
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    patch:
      description: Updates the transit class referenced by the given class ID. This method supports patch semantics.
      operationId: walletobjects.transitclass.patch
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/TransitClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TransitClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - transitclass
    put:
      description: Updates the transit class referenced by the given class ID.
      operationId: walletobjects.transitclass.update
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/TransitClass"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TransitClass"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - transitclass
  "/walletobjects/v1/transitClass/{resourceId}/addMessage":
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Adds a message to the transit class referenced by the given class ID.
      operationId: walletobjects.transitclass.addmessage
      parameters:
        - description: The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddMessageRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TransitClassAddMessageResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - transitclass
  /walletobjects/v1/transitObject:
    get:
      description: Returns a list of all transit objects for a given issuer ID.
      operationId: walletobjects.transitobject.list
      parameters:
        - description: The ID of the class whose objects will be listed.
          in: query
          name: classId
          schema:
            type: string
        - description: Identifies the max number of results returned by a list. All results are returned if `maxResults` isn't defined.
          in: query
          name: maxResults
          schema:
            type: integer
        - description: Used to get the next set of results if `maxResults` is specified, but more than `maxResults` objects are available in a list. For example, if you have a list of 200 objects and you call list with `maxResults` set to 20, list will return the first 20 objects and a token. Call list again with `maxResults` set to 20 and the token to get the next 20 objects.
          in: query
          name: token
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TransitObjectListResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - transitobject
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Inserts an transit object with the given ID and properties.
      operationId: walletobjects.transitobject.insert
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/TransitObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TransitObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - transitobject
  "/walletobjects/v1/transitObject/{resourceId}":
    get:
      description: Returns the transit object with the given object ID.
      operationId: walletobjects.transitobject.get
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TransitObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - transitobject
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    patch:
      description: Updates the transit object referenced by the given object ID. This method supports patch semantics.
      operationId: walletobjects.transitobject.patch
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/TransitObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TransitObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - transitobject
    put:
      description: Updates the transit object referenced by the given object ID.
      operationId: walletobjects.transitobject.update
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/TransitObject"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TransitObject"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - transitobject
  "/walletobjects/v1/transitObject/{resourceId}/addMessage":
    parameters:
      - $ref: "#/components/parameters/_.xgafv"
      - $ref: "#/components/parameters/access_token"
      - $ref: "#/components/parameters/alt"
      - $ref: "#/components/parameters/callback"
      - $ref: "#/components/parameters/fields"
      - $ref: "#/components/parameters/key"
      - $ref: "#/components/parameters/oauth_token"
      - $ref: "#/components/parameters/prettyPrint"
      - $ref: "#/components/parameters/quotaUser"
      - $ref: "#/components/parameters/upload_protocol"
      - $ref: "#/components/parameters/uploadType"
    post:
      description: Adds a message to the transit object referenced by the given object ID.
      operationId: walletobjects.transitobject.addmessage
      parameters:
        - description: The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          in: path
          name: resourceId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddMessageRequest"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TransitObjectAddMessageResponse"
          description: Successful response
      security:
        - Oauth2:
            - https://www.googleapis.com/auth/wallet_object.issuer
          Oauth2c:
            - https://www.googleapis.com/auth/wallet_object.issuer
      tags:
        - transitobject
components:
  parameters:
    _.xgafv:
      description: V1 error format.
      in: query
      name: $.xgafv
      schema:
        enum:
          - "1"
          - "2"
        type: string
    access_token:
      description: OAuth access token.
      in: query
      name: access_token
      schema:
        type: string
    alt:
      description: Data format for response.
      in: query
      name: alt
      schema:
        enum:
          - json
          - media
          - proto
        type: string
    callback:
      description: JSONP
      in: query
      name: callback
      schema:
        type: string
    fields:
      description: Selector specifying which fields to include in a partial response.
      in: query
      name: fields
      schema:
        type: string
    key:
      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
    oauth_token:
      description: OAuth 2.0 token for the current user.
      in: query
      name: oauth_token
      schema:
        type: string
    prettyPrint:
      description: Returns response with indentations and line breaks.
      in: query
      name: prettyPrint
      schema:
        type: boolean
    quotaUser:
      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
    uploadType:
      description: Legacy upload protocol for media (e.g. "media", "multipart").
      in: query
      name: uploadType
      schema:
        type: string
    upload_protocol:
      description: Upload protocol for media (e.g. "raw", "multipart").
      in: query
      name: upload_protocol
      schema:
        type: string
  schemas:
    ActivationOptions:
      description: ActivationOptions for the class
      properties:
        activationUrl:
          description: HTTPS URL that supports REST semantics. Would be used for requesting activation from partners for given valuable, triggered by the users.
          type: string
        allowReactivation:
          description: Flag to allow users to make activation call from different device. This allows client to render the activation button enabled even if the activationStatus is ACTIVATED but the requested device is different than the current device.
          type: boolean
      type: object
    ActivationStatus:
      description: The activation status of the object. This field includes activation status if valuable supports activation.
      properties:
        state:
          enum:
            - UNKNOWN_STATE
            - NOT_ACTIVATED
            - not_activated
            - ACTIVATED
            - activated
          type: string
      type: object
    AddMessageRequest:
      description: Resource used when the AddMessage endpoints are called.
      properties:
        message:
          $ref: "#/components/schemas/Message"
      type: object
    AirportInfo:
      properties:
        airportIataCode:
          description: 'Three character IATA airport code. This is a required field for `origin` and `destination`. Eg: "SFO"'
          type: string
        airportNameOverride:
          $ref: "#/components/schemas/LocalizedString"
          description: 'Optional field that overrides the airport city name defined by IATA. By default, Google takes the `airportIataCode` provided and maps it to the official airport city name defined by IATA. Official IATA airport city names can be found at IATA airport city names website. For example, for the airport IATA code "LTN", IATA website tells us that the corresponding airport city is "London". If this field is not populated, Google would display "London". However, populating this field with a custom name (eg: "London Luton") would override it.'
        gate:
          description: 'A name of the gate. Eg: "B59" or "59"'
          type: string
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#airportInfo"`.'
          type: string
        terminal:
          description: 'Terminal name. Eg: "INTL" or "I"'
          type: string
      type: object
    AppLinkData:
      properties:
        androidAppLinkInfo:
          $ref: "#/components/schemas/AppLinkDataAppLinkInfo"
          description: Optional information about the partner app link. If included, the app link link module will be rendered on the valuable details on the android client.
        iosAppLinkInfo:
          $ref: "#/components/schemas/AppLinkDataAppLinkInfo"
          description: Optional information about the partner app link. If included, the app link link module will be rendered on the valuable details on the ios client.
        webAppLinkInfo:
          $ref: "#/components/schemas/AppLinkDataAppLinkInfo"
          description: Optional information about the partner app link. If included, the app link link module will be rendered on the valuable details on the web client.
      type: object
    AppLinkDataAppLinkInfo:
      properties:
        appLogoImage:
          $ref: "#/components/schemas/Image"
          description: Optional image to be displayed in the App Link Module
        appTarget:
          $ref: "#/components/schemas/AppLinkDataAppLinkInfoAppTarget"
          description: Url to follow when opening the App Link Module on clients. It will be used by partners to open their webpage or deeplink into their app.
        description:
          $ref: "#/components/schemas/LocalizedString"
          description: String to be displayed in the description of the App Link Module Required
        title:
          $ref: "#/components/schemas/LocalizedString"
          description: String to be displayed in the title of the App Link Module Required
      type: object
    AppLinkDataAppLinkInfoAppTarget:
      properties:
        targetUri:
          $ref: "#/components/schemas/Uri"
      type: object
    AuthenticationKey:
      properties:
        id:
          description: Available only to Smart Tap enabled partners. Contact support for additional guidance.
          format: int32
          type: integer
        publicKeyPem:
          description: Available only to Smart Tap enabled partners. Contact support for additional guidance.
          type: string
      type: object
    Barcode:
      properties:
        alternateText:
          description: An optional text that will override the default text that shows under the barcode. This field is intended for a human readable equivalent of the barcode value, used when the barcode cannot be scanned.
          type: string
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#barcode"`.'
          type: string
        renderEncoding:
          description: The render encoding for the barcode. When specified, barcode is rendered in the given encoding. Otherwise best known encoding is chosen by Google.
          enum:
            - RENDER_ENCODING_UNSPECIFIED
            - UTF_8
          type: string
        showCodeText:
          $ref: "#/components/schemas/LocalizedString"
          description: Optional text that will be shown when the barcode is hidden behind a click action. This happens in cases where a pass has Smart Tap enabled. If not specified, a default is chosen by Google.
        type:
          description: The type of barcode.
          enum:
            - BARCODE_TYPE_UNSPECIFIED
            - AZTEC
            - aztec
            - CODE_39
            - code39
            - CODE_128
            - code128
            - CODABAR
            - codabar
            - DATA_MATRIX
            - dataMatrix
            - EAN_8
            - ean8
            - EAN_13
            - ean13
            - EAN13
            - ITF_14
            - itf14
            - PDF_417
            - pdf417
            - PDF417
            - QR_CODE
            - qrCode
            - qrcode
            - UPC_A
            - upcA
            - TEXT_ONLY
            - textOnly
          type: string
        value:
          description: The value encoded in the barcode.
          type: string
      type: object
    BarcodeSectionDetail:
      properties:
        fieldSelector:
          $ref: "#/components/schemas/FieldSelector"
          description: A reference to an existing text-based or image field to display.
      type: object
    Blobstore2Info:
      description: Information to read/write to blobstore2.
      properties:
        blobGeneration:
          description: The blob generation id.
          format: int64
          type: string
        blobId:
          description: The blob id, e.g., /blobstore/prod/playground/scotty
          type: string
        downloadReadHandle:
          description: Read handle passed from Bigstore -> Scotty for a GCS download. This is a signed, serialized blobstore2.ReadHandle proto which must never be set outside of Bigstore, and is not applicable to non-GCS media downloads.
          format: byte
          type: string
        readToken:
          description: The blob read token. Needed to read blobs that have not been replicated. Might not be available until the final call.
          type: string
        uploadMetadataContainer:
          description: Metadata passed from Blobstore -> Scotty for a new GCS upload. This is a signed, serialized blobstore2.BlobMetadataContainer proto which must never be consumed outside of Bigstore, and is not applicable to non-GCS media uploads.
          format: byte
          type: string
      type: object
    BoardingAndSeatingInfo:
      properties:
        boardingDoor:
          description: Set this field only if this flight boards through more than one door or bridge and you want to explicitly print the door location on the boarding pass. Most airlines route their passengers to the right door or bridge by refering to doors/bridges by the `seatClass`. In those cases `boardingDoor` should not be set.
          enum:
            - BOARDING_DOOR_UNSPECIFIED
            - FRONT
            - front
            - BACK
            - back
          type: string
        boardingGroup:
          description: 'The value of boarding group (or zone) this passenger shall board with. eg: "B" The label for this value will be determined by the `boardingPolicy` field in the `flightClass` referenced by this object.'
          type: string
        boardingPosition:
          description: 'The value of boarding position. eg: "76"'
          type: string
        boardingPrivilegeImage:
          $ref: "#/components/schemas/Image"
          description: A small image shown above the boarding barcode. Airlines can use it to communicate any special boarding privileges. In the event the security program logo is also set, this image might be rendered alongside the logo for that security program.
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#boardingAndSeatingInfo"`.'
          type: string
        seatAssignment:
          $ref: "#/components/schemas/LocalizedString"
          description: "The passenger's seat assignment. To be used when there is no specific identifier to use in `seatNumber`. eg: \"assigned at gate\""
        seatClass:
          description: 'The value of the seat class. eg: "Economy" or "Economy Plus"'
          type: string
        seatNumber:
          description: 'The value of passenger seat. If there is no specific identifier, use `seatAssignment` instead. eg: "25A"'
          type: string
        sequenceNumber:
          description: 'The sequence number on the boarding pass. This usually matches the sequence in which the passengers checked in. Airline might use the number for manual boarding and bag tags. eg: "49"'
          type: string
      type: object
    BoardingAndSeatingPolicy:
      properties:
        boardingPolicy:
          description: Indicates the policy the airline uses for boarding. If unset, Google will default to `zoneBased`.
          enum:
            - BOARDING_POLICY_UNSPECIFIED
            - ZONE_BASED
            - zoneBased
            - GROUP_BASED
            - groupBased
            - BOARDING_POLICY_OTHER
            - boardingPolicyOther
          type: string
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#boardingAndSeatingPolicy"`.'
          type: string
        seatClassPolicy:
          description: Seating policy which dictates how we display the seat class. If unset, Google will default to `cabinBased`.
          enum:
            - SEAT_CLASS_POLICY_UNSPECIFIED
            - CABIN_BASED
            - cabinBased
            - CLASS_BASED
            - classBased
            - TIER_BASED
            - tierBased
            - SEAT_CLASS_POLICY_OTHER
            - seatClassPolicyOther
          type: string
      type: object
    CallbackOptions:
      properties:
        updateRequestUrl:
          description: URL for the merchant endpoint that would be called to request updates. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Google-Valuables. Deprecated.
          type: string
        url:
          description: The HTTPS url configured by the merchant. The URL should be hosted on HTTPS and robots.txt should allow the URL path to be accessible by UserAgent:Google-Valuables.
          type: string
      type: object
    CardBarcodeSectionDetails:
      properties:
        firstBottomDetail:
          $ref: "#/components/schemas/BarcodeSectionDetail"
          description: Optional information to display below the barcode.
        firstTopDetail:
          $ref: "#/components/schemas/BarcodeSectionDetail"
          description: Optional information to display above the barcode. If `secondTopDetail` is defined, this will be displayed to the start side of this detail section.
        secondTopDetail:
          $ref: "#/components/schemas/BarcodeSectionDetail"
          description: Optional second piece of information to display above the barcode. If `firstTopDetail` is defined, this will be displayed to the end side of this detail section.
      type: object
    CardRowOneItem:
      properties:
        item:
          $ref: "#/components/schemas/TemplateItem"
          description: The item to be displayed in the row. This item will be automatically centered.
      type: object
    CardRowTemplateInfo:
      properties:
        oneItem:
          $ref: "#/components/schemas/CardRowOneItem"
          description: Template for a row containing one item. Exactly one of "one_item", "two_items", "three_items" must be set.
        threeItems:
          $ref: "#/components/schemas/CardRowThreeItems"
          description: Template for a row containing three items. Exactly one of "one_item", "two_items", "three_items" must be set.
        twoItems:
          $ref: "#/components/schemas/CardRowTwoItems"
          description: Template for a row containing two items. Exactly one of "one_item", "two_items", "three_items" must be set.
      type: object
    CardRowThreeItems:
      properties:
        endItem:
          $ref: "#/components/schemas/TemplateItem"
          description: The item to be displayed at the end of the row. This item will be aligned to the right.
        middleItem:
          $ref: "#/components/schemas/TemplateItem"
          description: The item to be displayed in the middle of the row. This item will be centered between the start and end items.
        startItem:
          $ref: "#/components/schemas/TemplateItem"
          description: The item to be displayed at the start of the row. This item will be aligned to the left.
      type: object
    CardRowTwoItems:
      properties:
        endItem:
          $ref: "#/components/schemas/TemplateItem"
          description: The item to be displayed at the end of the row. This item will be aligned to the right.
        startItem:
          $ref: "#/components/schemas/TemplateItem"
          description: The item to be displayed at the start of the row. This item will be aligned to the left.
      type: object
    CardTemplateOverride:
      properties:
        cardRowTemplateInfos:
          description: Template information for rows in the card view. At most three rows are allowed to be specified.
          items:
            $ref: "#/components/schemas/CardRowTemplateInfo"
          type: array
      type: object
    ClassTemplateInfo:
      properties:
        cardBarcodeSectionDetails:
          $ref: "#/components/schemas/CardBarcodeSectionDetails"
          description: Specifies extra information to be displayed above and below the barcode.
        cardTemplateOverride:
          $ref: "#/components/schemas/CardTemplateOverride"
          description: Override for the card view.
        detailsTemplateOverride:
          $ref: "#/components/schemas/DetailsTemplateOverride"
          description: Override for the details view (beneath the card view).
        listTemplateOverride:
          $ref: "#/components/schemas/ListTemplateOverride"
          description: Override for the passes list view.
      type: object
    CompositeMedia:
      description: A sequence of media data references representing composite data. Introduced to support Bigstore composite objects. For details, visit http://go/bigstore-composites.
      properties:
        blobRef:
          description: Blobstore v1 reference, set if reference_type is BLOBSTORE_REF This should be the byte representation of a blobstore.BlobRef. Since Blobstore is deprecating v1, use blobstore2_info instead. For now, any v2 blob will also be represented in this field as v1 BlobRef.
          format: byte
          type: string
        blobstore2Info:
          $ref: "#/components/schemas/Blobstore2Info"
          description: Blobstore v2 info, set if reference_type is BLOBSTORE_REF and it refers to a v2 blob.
        cosmoBinaryReference:
          description: A binary data reference for a media download. Serves as a technology-agnostic binary reference in some Google infrastructure. This value is a serialized storage_cosmo.BinaryReference proto. Storing it as bytes is a hack to get around the fact that the cosmo proto (as well as others it includes) doesn't support JavaScript. This prevents us from including the actual type of this field.
          format: byte
          type: string
        crc32cHash:
          description: crc32.c hash for the payload.
          format: uint32
          type: integer
        inline:
          description: Media data, set if reference_type is INLINE
          format: byte
          type: string
        length:
          description: Size of the data, in bytes
          format: int64
          type: string
        md5Hash:
          description: MD5 hash for the payload.
          format: byte
          type: string
        objectId:
          $ref: "#/components/schemas/ObjectId"
          description: Reference to a TI Blob, set if reference_type is BIGSTORE_REF.
        path:
          description: Path to the data, set if reference_type is PATH
          type: string
        referenceType:
          description: Describes what the field reference contains.
          enum:
            - PATH
            - BLOB_REF
            - INLINE
            - BIGSTORE_REF
            - COSMO_BINARY_REFERENCE
          type: string
        sha1Hash:
          description: SHA-1 hash for the payload.
          format: byte
          type: string
      type: object
    ContentTypeInfo:
      description: Detailed Content-Type information from Scotty. The Content-Type of the media will typically be filled in by the header or Scotty's best_guess, but this extended information provides the backend with more information so that it can make a better decision if needed. This is only used on media upload requests from Scotty.
      properties:
        bestGuess:
          description: Scotty's best guess of what the content type of the file is.
          type: string
        fromBytes:
          description: The content type of the file derived by looking at specific bytes (i.e. "magic bytes") of the actual file.
          type: string
        fromFileName:
          description: The content type of the file derived from the file extension of the original file name used by the client.
          type: string
        fromHeader:
          description: The content type of the file as specified in the request headers, multipart headers, or RUPIO start request.
          type: string
        fromUrlPath:
          description: The content type of the file derived from the file extension of the URL path. The URL path is assumed to represent a file name (which is typically only true for agents that are providing a REST API).
          type: string
      type: object
    DateTime:
      properties:
        date:
          description: "An ISO 8601 extended format date/time. Offset may or may not be required (refer to the parent field's documentation). Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the date/time is intended for a physical location in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Providing an offset makes this an absolute instant in time around the world. The date/time will be adjusted based on the user's time zone. For example, a time of `2018-06-19T18:30:00-04:00` will be 18:30:00 for a user in New York and 15:30:00 for a user in Los Angeles. Omitting the offset makes this a local date/time, representing several instants in time around the world. The date/time will always be in the user's current time zone. For example, a time of `2018-06-19T18:30:00` will be 18:30:00 for a user in New York and also 18:30:00 for a user in Los Angeles. This is useful when the same local date/time should apply to many physical locations across several time zones."
          type: string
      type: object
    DetailsItemInfo:
      properties:
        item:
          $ref: "#/components/schemas/TemplateItem"
          description: The item to be displayed in the details list.
      type: object
    DetailsTemplateOverride:
      properties:
        detailsItemInfos:
          description: Information for the "nth" item displayed in the details list.
          items:
            $ref: "#/components/schemas/DetailsItemInfo"
          type: array
      type: object
    DeviceContext:
      description: Device context associated with the object.
      properties:
        deviceToken:
          description: If set, redemption information will only be returned to the given device upon activation of the object. This should not be used as a stable identifier to trace a user's device. It can change across different passes for the same device or even across different activations for the same device. When setting this, callers must also set has_linked_device on the object being activated.
          type: string
      type: object
    DiffChecksumsResponse:
      description: Backend response for a Diff get checksums response. For details on the Scotty Diff protocol, visit http://go/scotty-diff-protocol.
      properties:
        checksumsLocation:
          $ref: "#/components/schemas/CompositeMedia"
          description: Exactly one of these fields must be populated. If checksums_location is filled, the server will return the corresponding contents to the user. If object_location is filled, the server will calculate the checksums based on the content there and return that to the user. For details on the format of the checksums, see http://go/scotty-diff-protocol.
        chunkSizeBytes:
          description: The chunk size of checksums. Must be a multiple of 256KB.
          format: int64
          type: string
        objectLocation:
          $ref: "#/components/schemas/CompositeMedia"
          description: If set, calculate the checksums based on the contents and return them to the caller.
        objectSizeBytes:
          description: The total size of the server object.
          format: int64
          type: string
        objectVersion:
          description: The object version of the object the checksums are being returned for.
          type: string
      type: object
    DiffDownloadResponse:
      description: Backend response for a Diff download response. For details on the Scotty Diff protocol, visit http://go/scotty-diff-protocol.
      properties:
        objectLocation:
          $ref: "#/components/schemas/CompositeMedia"
          description: The original object location.
      type: object
    DiffUploadRequest:
      description: A Diff upload request. For details on the Scotty Diff protocol, visit http://go/scotty-diff-protocol.
      properties:
        checksumsInfo:
          $ref: "#/components/schemas/CompositeMedia"
          description: The location of the checksums for the new object. Agents must clone the object located here, as the upload server will delete the contents once a response is received. For details on the format of the checksums, see http://go/scotty-diff-protocol.
        objectInfo:
          $ref: "#/components/schemas/CompositeMedia"
          description: The location of the new object. Agents must clone the object located here, as the upload server will delete the contents once a response is received.
        objectVersion:
          description: The object version of the object that is the base version the incoming diff script will be applied to. This field will always be filled in.
          type: string
      type: object
    DiffUploadResponse:
      description: Backend response for a Diff upload request. For details on the Scotty Diff protocol, visit http://go/scotty-diff-protocol.
      properties:
        objectVersion:
          description: The object version of the object at the server. Must be included in the end notification response. The version in the end notification response must correspond to the new version of the object that is now stored at the server, after the upload.
          type: string
        originalObject:
          $ref: "#/components/schemas/CompositeMedia"
          description: The location of the original file for a diff upload request. Must be filled in if responding to an upload start notification.
      type: object
    DiffVersionResponse:
      description: Backend response for a Diff get version response. For details on the Scotty Diff protocol, visit http://go/scotty-diff-protocol.
      properties:
        objectSizeBytes:
          description: The total size of the server object.
          format: int64
          type: string
        objectVersion:
          description: The version of the object stored at the server.
          type: string
      type: object
    DiscoverableProgram:
      description: Information about how a class may be discovered and instantiated from within the Android Pay app. This is done by searching for a loyalty or gift card program and scanning or manually entering.
      properties:
        merchantSigninInfo:
          $ref: "#/components/schemas/DiscoverableProgramMerchantSigninInfo"
          description: Information about the ability to signin and add a valuable for this program through a merchant site. Used when MERCHANT_HOSTED_SIGNIN is enabled.
        merchantSignupInfo:
          $ref: "#/components/schemas/DiscoverableProgramMerchantSignupInfo"
          description: Information about the ability to signup and add a valuable for this program through a merchant site. Used when MERCHANT_HOSTED_SIGNUP is enabled.
        state:
          description: Visibility state of the discoverable program.
          enum:
            - STATE_UNSPECIFIED
            - TRUSTED_TESTERS
            - trustedTesters
            - LIVE
            - live
            - DISABLED
            - disabled
          type: string
      type: object
    DiscoverableProgramMerchantSigninInfo:
      description: Information about the merchant hosted signin flow for a program.
      properties:
        signinWebsite:
          $ref: "#/components/schemas/Uri"
          description: The URL to direct the user to for the merchant's signin site.
      type: object
    DiscoverableProgramMerchantSignupInfo:
      description: Information about the merchant hosted signup flow for a program.
      properties:
        signupSharedDatas:
          description: " User data that is sent in a POST request to the signup website URL. This information is encoded and then shared so that the merchant's website can prefill fields used to enroll the user for the discoverable program."
          items:
            enum:
              - SHARED_DATA_TYPE_UNSPECIFIED
              - FIRST_NAME
              - LAST_NAME
              - STREET_ADDRESS
              - ADDRESS_LINE_1
              - ADDRESS_LINE_2
              - ADDRESS_LINE_3
              - CITY
              - STATE
              - ZIPCODE
              - COUNTRY
              - EMAIL
              - PHONE
            type: string
          type: array
        signupWebsite:
          $ref: "#/components/schemas/Uri"
          description: The URL to direct the user to for the merchant's signup site.
      type: object
    DownloadParameters:
      description: Parameters specific to media downloads.
      properties:
        allowGzipCompression:
          description: A boolean to be returned in the response to Scotty. Allows/disallows gzip encoding of the payload content when the server thinks it's advantageous (hence, does not guarantee compression) which allows Scotty to GZip the response to the client.
          type: boolean
        ignoreRange:
          description: Determining whether or not Apiary should skip the inclusion of any Content-Range header on its response to Scotty.
          type: boolean
      type: object
    EventDateTime:
      properties:
        customDoorsOpenLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the doors open value (`doorsOpen`) on the card detail view. This should only be used if the default "Doors Open" label or one of the `doorsOpenLabel` options is not sufficient. Both `doorsOpenLabel` and `customDoorsOpenLabel` may not be set. If neither is set, the label will default to "Doors Open", localized. If the doors open field is unset, this label will not be used.
        doorsOpen:
          description: 'The date/time when the doors open at the venue. This is an ISO 8601 extended format date/time, with or without an offset. Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the event were in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. The portion of the date/time without the offset is considered the "local date/time". This should be the local date/time at the venue. For example, if the event occurs at the 20th hour of June 5th, 2018 at the venue, the local date/time portion should be `2018-06-05T20:00:00`. If the local date/time at the venue is 4 hours before UTC, an offset of `-04:00` may be appended. Without offset information, some rich features may not be available.'
          type: string
        doorsOpenLabel:
          description: The label to use for the doors open value (`doorsOpen`) on the card detail view. Each available option maps to a set of localized strings, so that translations are shown to the user based on their locale. Both `doorsOpenLabel` and `customDoorsOpenLabel` may not be set. If neither is set, the label will default to "Doors Open", localized. If the doors open field is unset, this label will not be used.
          enum:
            - DOORS_OPEN_LABEL_UNSPECIFIED
            - DOORS_OPEN
            - doorsOpen
            - GATES_OPEN
            - gatesOpen
          type: string
        end:
          description: 'The date/time when the event ends. If the event spans multiple days, it should be the end date/time on the last day. This is an ISO 8601 extended format date/time, with or without an offset. Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the event were in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. The portion of the date/time without the offset is considered the "local date/time". This should be the local date/time at the venue. For example, if the event occurs at the 20th hour of June 5th, 2018 at the venue, the local date/time portion should be `2018-06-05T20:00:00`. If the local date/time at the venue is 4 hours before UTC, an offset of `-04:00` may be appended. Without offset information, some rich features may not be available.'
          type: string
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#eventDateTime"`.'
          type: string
        start:
          description: 'The date/time when the event starts. If the event spans multiple days, it should be the start date/time on the first day. This is an ISO 8601 extended format date/time, with or without an offset. Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the event were in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. The portion of the date/time without the offset is considered the "local date/time". This should be the local date/time at the venue. For example, if the event occurs at the 20th hour of June 5th, 2018 at the venue, the local date/time portion should be `2018-06-05T20:00:00`. If the local date/time at the venue is 4 hours before UTC, an offset of `-04:00` may be appended. Without offset information, some rich features may not be available.'
          type: string
      type: object
    EventReservationInfo:
      properties:
        confirmationCode:
          description: The confirmation code of the event reservation. This may also take the form of an "order number", "confirmation number", "reservation number", or other equivalent.
          type: string
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#eventReservationInfo"`.'
          type: string
      type: object
    EventSeat:
      properties:
        gate:
          $ref: "#/components/schemas/LocalizedString"
          description: The gate the ticket holder should enter to get to their seat, such as "A" or "West". This field is localizable so you may translate words or use different alphabets for the characters in an identifier.
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#eventSeat"`.'
          type: string
        row:
          $ref: "#/components/schemas/LocalizedString"
          description: The row of the seat, such as "1", E", "BB", or "A5". This field is localizable so you may translate words or use different alphabets for the characters in an identifier.
        seat:
          $ref: "#/components/schemas/LocalizedString"
          description: The seat number, such as "1", "2", "3", or any other seat identifier. This field is localizable so you may translate words or use different alphabets for the characters in an identifier.
        section:
          $ref: "#/components/schemas/LocalizedString"
          description: The section of the seat, such as "121". This field is localizable so you may translate words or use different alphabets for the characters in an identifier.
      type: object
    EventTicketClass:
      properties:
        allowMultipleUsersPerObject:
          description: Deprecated. Use `multipleDevicesAndHoldersAllowedStatus` instead.
          type: boolean
        callbackOptions:
          $ref: "#/components/schemas/CallbackOptions"
          description: Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
        classTemplateInfo:
          $ref: "#/components/schemas/ClassTemplateInfo"
          description: Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
        confirmationCodeLabel:
          description: The label to use for the confirmation code value (`eventTicketObject.reservationInfo.confirmationCode`) on the card detail view. Each available option maps to a set of localized strings, so that translations are shown to the user based on their locale. Both `confirmationCodeLabel` and `customConfirmationCodeLabel` may not be set. If neither is set, the label will default to "Confirmation Code", localized. If the confirmation code field is unset, this label will not be used.
          enum:
            - CONFIRMATION_CODE_LABEL_UNSPECIFIED
            - CONFIRMATION_CODE
            - confirmationCode
            - CONFIRMATION_NUMBER
            - confirmationNumber
            - ORDER_NUMBER
            - orderNumber
            - RESERVATION_NUMBER
            - reservationNumber
          type: string
        countryCode:
          description: Country code used to display the card's country (when the user is not in that country), as well as to display localized content when content is not available in the user's locale.
          type: string
        customConfirmationCodeLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the confirmation code value (`eventTicketObject.reservationInfo.confirmationCode`) on the card detail view. This should only be used if the default "Confirmation Code" label or one of the `confirmationCodeLabel` options is not sufficient. Both `confirmationCodeLabel` and `customConfirmationCodeLabel` may not be set. If neither is set, the label will default to "Confirmation Code", localized. If the confirmation code field is unset, this label will not be used.
        customGateLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the gate value (`eventTicketObject.seatInfo.gate`) on the card detail view. This should only be used if the default "Gate" label or one of the `gateLabel` options is not sufficient. Both `gateLabel` and `customGateLabel` may not be set. If neither is set, the label will default to "Gate", localized. If the gate field is unset, this label will not be used.
        customRowLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the row value (`eventTicketObject.seatInfo.row`) on the card detail view. This should only be used if the default "Row" label or one of the `rowLabel` options is not sufficient. Both `rowLabel` and `customRowLabel` may not be set. If neither is set, the label will default to "Row", localized. If the row field is unset, this label will not be used.
        customSeatLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the seat value (`eventTicketObject.seatInfo.seat`) on the card detail view. This should only be used if the default "Seat" label or one of the `seatLabel` options is not sufficient. Both `seatLabel` and `customSeatLabel` may not be set. If neither is set, the label will default to "Seat", localized. If the seat field is unset, this label will not be used.
        customSectionLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the section value (`eventTicketObject.seatInfo.section`) on the card detail view. This should only be used if the default "Section" label or one of the `sectionLabel` options is not sufficient. Both `sectionLabel` and `customSectionLabel` may not be set. If neither is set, the label will default to "Section", localized. If the section field is unset, this label will not be used.
        dateTime:
          $ref: "#/components/schemas/EventDateTime"
          description: The date & time information of the event.
        enableSmartTap:
          description: Identifies whether this class supports Smart Tap. The `redemptionIssuers` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
          type: boolean
        eventId:
          description: The ID of the event. This ID should be unique for every event in an account. It is used to group tickets together if the user has saved multiple tickets for the same event. It can be at most 64 characters. If provided, the grouping will be stable. Be wary of unintentional collision to avoid grouping tickets that should not be grouped. If you use only one class per event, you can simply set this to the `classId` (with or without the issuer ID portion). If not provided, the platform will attempt to use other data to group tickets (potentially unstable).
          type: string
        eventName:
          $ref: "#/components/schemas/LocalizedString"
          description: Required. The name of the event, such as "LA Dodgers at SF Giants".
        finePrint:
          $ref: "#/components/schemas/LocalizedString"
          description: The fine print, terms, or conditions of the ticket.
        gateLabel:
          description: The label to use for the gate value (`eventTicketObject.seatInfo.gate`) on the card detail view. Each available option maps to a set of localized strings, so that translations are shown to the user based on their locale. Both `gateLabel` and `customGateLabel` may not be set. If neither is set, the label will default to "Gate", localized. If the gate field is unset, this label will not be used.
          enum:
            - GATE_LABEL_UNSPECIFIED
            - GATE
            - gate
            - DOOR
            - door
            - ENTRANCE
            - entrance
          type: string
        heroImage:
          $ref: "#/components/schemas/Image"
          description: Optional banner image displayed on the front of the card. If none is present, nothing will be displayed. The image will display at 100% width.
        hexBackgroundColor:
          description: "The background color for the card. If not set the dominant color of the hero image is used, and if no hero image is set, the dominant color of the logo is used. The format is #rrggbb where rrggbb is a hex RGB triplet, such as `#ffcc00`. You can also use the shorthand version of the RGB triplet which is #rgb, such as `#fc0`."
          type: string
        homepageUri:
          $ref: "#/components/schemas/Uri"
          description: The URI of your application's home page. Populating the URI in this field results in the exact same behavior as populating an URI in linksModuleData (when an object is rendered, a link to the homepage is shown in what would usually be thought of as the linksModuleData section of the object).
        id:
          description: Required. The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          type: string
        imageModulesData:
          description: Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level.
          items:
            $ref: "#/components/schemas/ImageModuleData"
          type: array
        infoModuleData:
          $ref: "#/components/schemas/InfoModuleData"
          description: Deprecated. Use textModulesData instead.
        issuerName:
          description: Required. The issuer name. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.
          type: string
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#eventTicketClass"`.'
          type: string
        linksModuleData:
          $ref: "#/components/schemas/LinksModuleData"
          description: Links module data. If links module data is also defined on the object, both will be displayed.
        localizedIssuerName:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the issuer_name. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.
        locations:
          description: "Note: This field is currently not supported to trigger geo notifications."
          items:
            $ref: "#/components/schemas/LatLongPoint"
          type: array
        logo:
          $ref: "#/components/schemas/Image"
          description: The logo image of the ticket. This image is displayed in the card detail view of the app.
        messages:
          description: An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
          items:
            $ref: "#/components/schemas/Message"
          type: array
        multipleDevicesAndHoldersAllowedStatus:
          description: Identifies whether multiple users and devices will save the same object referencing this class.
          enum:
            - STATUS_UNSPECIFIED
            - MULTIPLE_HOLDERS
            - multipleHolders
            - ONE_USER_ALL_DEVICES
            - oneUserAllDevices
            - ONE_USER_ONE_DEVICE
            - oneUserOneDevice
          type: string
        redemptionIssuers:
          description: Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
          items:
            format: int64
            type: string
          type: array
        review:
          $ref: "#/components/schemas/Review"
          description: The review comments set by the platform when a class is marked `approved` or `rejected`.
        reviewStatus:
          description: Required. The status of the class. This field can be set to `draft` or `underReview` using the insert, patch, or update API calls. Once the review state is changed from `draft` it may not be changed back to `draft`. You should keep this field to `draft` when the class is under development. A `draft` class cannot be used to create any object. You should set this field to `underReview` when you believe the class is ready for use. The platform will automatically set this field to `approved` and it can be immediately used to create or migrate objects. When updating an already `approved` class you should keep setting this field to `underReview`.
          enum:
            - REVIEW_STATUS_UNSPECIFIED
            - UNDER_REVIEW
            - underReview
            - APPROVED
            - approved
            - REJECTED
            - rejected
            - DRAFT
            - draft
          type: string
        rowLabel:
          description: The label to use for the row value (`eventTicketObject.seatInfo.row`) on the card detail view. Each available option maps to a set of localized strings, so that translations are shown to the user based on their locale. Both `rowLabel` and `customRowLabel` may not be set. If neither is set, the label will default to "Row", localized. If the row field is unset, this label will not be used.
          enum:
            - ROW_LABEL_UNSPECIFIED
            - ROW
            - row
          type: string
        seatLabel:
          description: The label to use for the seat value (`eventTicketObject.seatInfo.seat`) on the card detail view. Each available option maps to a set of localized strings, so that translations are shown to the user based on their locale. Both `seatLabel` and `customSeatLabel` may not be set. If neither is set, the label will default to "Seat", localized. If the seat field is unset, this label will not be used.
          enum:
            - SEAT_LABEL_UNSPECIFIED
            - SEAT
            - seat
          type: string
        sectionLabel:
          description: The label to use for the section value (`eventTicketObject.seatInfo.section`) on the card detail view. Each available option maps to a set of localized strings, so that translations are shown to the user based on their locale. Both `sectionLabel` and `customSectionLabel` may not be set. If neither is set, the label will default to "Section", localized. If the section field is unset, this label will not be used.
          enum:
            - SECTION_LABEL_UNSPECIFIED
            - SECTION
            - section
            - THEATER
            - theater
          type: string
        securityAnimation:
          $ref: "#/components/schemas/SecurityAnimation"
          description: Optional information about the security animation. If this is set a security animation will be rendered on pass details.
        textModulesData:
          description: Text module data. If text module data is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from the object and 10 from the class.
          items:
            $ref: "#/components/schemas/TextModuleData"
          type: array
        venue:
          $ref: "#/components/schemas/EventVenue"
          description: Event venue details.
        version:
          description: Deprecated
          format: int64
          type: string
        viewUnlockRequirement:
          description: View Unlock Requirement options for the event ticket.
          enum:
            - VIEW_UNLOCK_REQUIREMENT_UNSPECIFIED
            - UNLOCK_NOT_REQUIRED
            - UNLOCK_REQUIRED_TO_VIEW
          type: string
        wordMark:
          $ref: "#/components/schemas/Image"
          description: Deprecated.
      type: object
    EventTicketClassAddMessageResponse:
      properties:
        resource:
          $ref: "#/components/schemas/EventTicketClass"
          description: The updated EventTicketClass resource.
      type: object
    EventTicketClassListResponse:
      properties:
        pagination:
          $ref: "#/components/schemas/Pagination"
          description: Pagination of the response.
        resources:
          description: Resources corresponding to the list request.
          items:
            $ref: "#/components/schemas/EventTicketClass"
          type: array
      type: object
    EventTicketObject:
      properties:
        appLinkData:
          $ref: "#/components/schemas/AppLinkData"
          description: Optional information about the partner app link.
        barcode:
          $ref: "#/components/schemas/Barcode"
          description: The barcode type and value.
        classId:
          description: Required. The class associated with this object. The class must be of the same type as this object, must already exist, and must be approved. Class IDs should follow the format issuer ID.identifier where the former is issued by Google and latter is chosen by you.
          type: string
        classReference:
          $ref: "#/components/schemas/EventTicketClass"
          description: A copy of the inherited fields of the parent class. These fields are retrieved during a GET.
        disableExpirationNotification:
          description: Indicates if notifications should explicitly be suppressed. If this field is set to true, regardless of the `messages` field, expiration notifications to the user will be suppressed. By default, this field is set to false. Currently, this can only be set for offers.
          type: boolean
        faceValue:
          $ref: "#/components/schemas/Money"
          description: The face value of the ticket, matching what would be printed on a physical version of the ticket.
        groupingInfo:
          $ref: "#/components/schemas/GroupingInfo"
          description: Information that controls how passes are grouped together.
        hasLinkedDevice:
          description: Whether this object is currently linked to a single device. This field is set by the platform when a user saves the object, linking it to their device. Intended for use by select partners. Contact support for additional information.
          type: boolean
        hasUsers:
          description: Indicates if the object has users. This field is set by the platform.
          type: boolean
        heroImage:
          $ref: "#/components/schemas/Image"
          description: Optional banner image displayed on the front of the card. If none is present, hero image of the class, if present, will be displayed. If hero image of the class is also not present, nothing will be displayed.
        hexBackgroundColor:
          description: "The background color for the card. If not set the dominant color of the hero image is used, and if no hero image is set, the dominant color of the logo is used. The format is #rrggbb where rrggbb is a hex RGB triplet, such as `#ffcc00`. You can also use the shorthand version of the RGB triplet which is #rgb, such as `#fc0`."
          type: string
        id:
          description: Required. The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID.identifier where the former is issued by Google and latter is chosen by you. The unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          type: string
        imageModulesData:
          description: Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level.
          items:
            $ref: "#/components/schemas/ImageModuleData"
          type: array
        infoModuleData:
          $ref: "#/components/schemas/InfoModuleData"
          description: Deprecated. Use textModulesData instead.
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#eventTicketObject"`.'
          type: string
        linkedOfferIds:
          description: A list of offer objects linked to this event ticket. The offer objects must already exist. Offer object IDs should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you.
          items:
            type: string
          type: array
        linksModuleData:
          $ref: "#/components/schemas/LinksModuleData"
          description: Links module data. If links module data is also defined on the class, both will be displayed.
        locations:
          description: "Note: This field is currently not supported to trigger geo notifications."
          items:
            $ref: "#/components/schemas/LatLongPoint"
          type: array
        messages:
          description: An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
          items:
            $ref: "#/components/schemas/Message"
          type: array
        passConstraints:
          $ref: "#/components/schemas/PassConstraints"
          description: Pass constraints for the object. Includes limiting NFC and screenshot behaviors.
        reservationInfo:
          $ref: "#/components/schemas/EventReservationInfo"
          description: Reservation details for this ticket. This is expected to be shared amongst all tickets that were purchased in the same order.
        rotatingBarcode:
          $ref: "#/components/schemas/RotatingBarcode"
          description: The rotating barcode type and value.
        seatInfo:
          $ref: "#/components/schemas/EventSeat"
          description: Seating details for this ticket.
        smartTapRedemptionValue:
          description: The value that will be transmitted to a Smart Tap certified terminal over NFC for this object. The class level fields `enableSmartTap` and `redemptionIssuers` must also be set up correctly in order for the pass to support Smart Tap. Only ASCII characters are supported.
          type: string
        state:
          description: Required. The state of the object. This field is used to determine how an object is displayed in the app. For example, an `inactive` object is moved to the "Expired passes" section.
          enum:
            - STATE_UNSPECIFIED
            - ACTIVE
            - active
            - COMPLETED
            - completed
            - EXPIRED
            - expired
            - INACTIVE
            - inactive
          type: string
        textModulesData:
          description: Text module data. If text module data is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from the object and 10 from the class.
          items:
            $ref: "#/components/schemas/TextModuleData"
          type: array
        ticketHolderName:
          description: Name of the ticket holder, if the ticket is assigned to a person. E.g. "John Doe" or "Jane Doe".
          type: string
        ticketNumber:
          description: The number of the ticket. This can be a unique identifier across all tickets in an issuer's system, all tickets for the event (e.g. XYZ1234512345), or all tickets in the order (1, 2, 3, etc.).
          type: string
        ticketType:
          $ref: "#/components/schemas/LocalizedString"
          description: The type of the ticket, such as "Adult" or "Child", or "VIP" or "Standard".
        validTimeInterval:
          $ref: "#/components/schemas/TimeInterval"
          description: The time period this object will be `active` and object can be used. An object's state will be changed to `expired` when this time period has passed.
        version:
          description: Deprecated
          format: int64
          type: string
      type: object
    EventTicketObjectAddMessageResponse:
      properties:
        resource:
          $ref: "#/components/schemas/EventTicketObject"
          description: The updated EventTicketObject resource.
      type: object
    EventTicketObjectListResponse:
      properties:
        pagination:
          $ref: "#/components/schemas/Pagination"
          description: Pagination of the response.
        resources:
          description: Resources corresponding to the list request.
          items:
            $ref: "#/components/schemas/EventTicketObject"
          type: array
      type: object
    EventVenue:
      properties:
        address:
          $ref: "#/components/schemas/LocalizedString"
          description: The address of the venue, such as "24 Willie Mays Plaza\nSan Francisco, CA 94107". Address lines are separated by line feed (`\n`) characters. This is required.
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#eventVenue"`.'
          type: string
        name:
          $ref: "#/components/schemas/LocalizedString"
          description: The name of the venue, such as "AT&T Park". This is required.
      type: object
    ExpiryNotification:
      description: Indicates that the issuer would like Google Wallet to send expiry notifications 2 days prior to the card expiration.
      properties:
        enableNotification:
          description: Indicates if the object needs to have expiry notification enabled.
          type: boolean
      type: object
    FieldReference:
      description: Reference definition to use with field overrides.
      properties:
        dateFormat:
          description: Only valid if the `fieldPath` references a date field. Chooses how the date field will be formatted and displayed in the UI.
          enum:
            - DATE_FORMAT_UNSPECIFIED
            - DATE_TIME
            - dateTime
            - DATE_ONLY
            - dateOnly
            - TIME_ONLY
            - timeOnly
            - DATE_TIME_YEAR
            - dateTimeYear
            - DATE_YEAR
            - dateYear
            - YEAR_MONTH
            - YEAR_MONTH_DAY
          type: string
        fieldPath:
          description: Path to the field being referenced, prefixed with "object" or "class" and separated with dots. For example, it may be the string "object.purchaseDetails.purchasePrice".
          type: string
      type: object
    FieldSelector:
      description: Custom field selector to use with field overrides.
      properties:
        fields:
          description: If more than one reference is supplied, then the first one that references a non-empty field will be displayed.
          items:
            $ref: "#/components/schemas/FieldReference"
          type: array
      type: object
    FirstRowOption:
      properties:
        fieldOption:
          $ref: "#/components/schemas/FieldSelector"
          description: A reference to the field to be displayed in the first row.
        transitOption:
          enum:
            - TRANSIT_OPTION_UNSPECIFIED
            - ORIGIN_AND_DESTINATION_NAMES
            - originAndDestinationNames
            - ORIGIN_AND_DESTINATION_CODES
            - originAndDestinationCodes
            - ORIGIN_NAME
            - originName
          type: string
      type: object
    FlightCarrier:
      properties:
        airlineAllianceLogo:
          $ref: "#/components/schemas/Image"
          description: A logo for the airline alliance, displayed above the QR code that the passenger scans to board.
        airlineLogo:
          $ref: "#/components/schemas/Image"
          description: A logo for the airline described by carrierIataCode and localizedAirlineName. This logo will be rendered at the top of the detailed card view.
        airlineName:
          $ref: "#/components/schemas/LocalizedString"
          description: 'A localized name of the airline specified by carrierIataCode. If unset, `issuer_name` or `localized_issuer_name` from `FlightClass` will be used for display purposes. eg: "Swiss Air" for "LX"'
        carrierIataCode:
          description: 'Two character IATA airline code of the marketing carrier (as opposed to operating carrier). Exactly one of this or `carrierIcaoCode` needs to be provided for `carrier` and `operatingCarrier`. eg: "LX" for Swiss Air'
          type: string
        carrierIcaoCode:
          description: 'Three character ICAO airline code of the marketing carrier (as opposed to operating carrier). Exactly one of this or `carrierIataCode` needs to be provided for `carrier` and `operatingCarrier`. eg: "EZY" for Easy Jet'
          type: string
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#flightCarrier"`.'
          type: string
      type: object
    FlightClass:
      properties:
        allowMultipleUsersPerObject:
          description: Deprecated. Use `multipleDevicesAndHoldersAllowedStatus` instead.
          type: boolean
        boardingAndSeatingPolicy:
          $ref: "#/components/schemas/BoardingAndSeatingPolicy"
          description: Policies for boarding and seating. These will inform which labels will be shown to users.
        callbackOptions:
          $ref: "#/components/schemas/CallbackOptions"
          description: Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
        classTemplateInfo:
          $ref: "#/components/schemas/ClassTemplateInfo"
          description: Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
        countryCode:
          description: Country code used to display the card's country (when the user is not in that country), as well as to display localized content when content is not available in the user's locale.
          type: string
        destination:
          $ref: "#/components/schemas/AirportInfo"
          description: Required. Destination airport.
        enableSmartTap:
          description: Identifies whether this class supports Smart Tap. The `redemptionIssuers` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
          type: boolean
        flightHeader:
          $ref: "#/components/schemas/FlightHeader"
          description: Required. Information about the flight carrier and number.
        flightStatus:
          description: "Status of this flight. If unset, Google will compute status based on data from other sources, such as FlightStats, etc. Note: Google-computed status will not be returned in API responses."
          enum:
            - FLIGHT_STATUS_UNSPECIFIED
            - SCHEDULED
            - scheduled
            - ACTIVE
            - active
            - LANDED
            - landed
            - CANCELLED
            - cancelled
            - REDIRECTED
            - redirected
            - DIVERTED
            - diverted
          type: string
        heroImage:
          $ref: "#/components/schemas/Image"
          description: Optional banner image displayed on the front of the card. If none is present, nothing will be displayed. The image will display at 100% width.
        hexBackgroundColor:
          description: "The background color for the card. If not set the dominant color of the hero image is used, and if no hero image is set, the dominant color of the logo is used. The format is #rrggbb where rrggbb is a hex RGB triplet, such as `#ffcc00`. You can also use the shorthand version of the RGB triplet which is #rgb, such as `#fc0`."
          type: string
        homepageUri:
          $ref: "#/components/schemas/Uri"
          description: The URI of your application's home page. Populating the URI in this field results in the exact same behavior as populating an URI in linksModuleData (when an object is rendered, a link to the homepage is shown in what would usually be thought of as the linksModuleData section of the object).
        id:
          description: Required. The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          type: string
        imageModulesData:
          description: Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level.
          items:
            $ref: "#/components/schemas/ImageModuleData"
          type: array
        infoModuleData:
          $ref: "#/components/schemas/InfoModuleData"
          description: Deprecated. Use textModulesData instead.
        issuerName:
          description: Required. The issuer name. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.
          type: string
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#flightClass"`.'
          type: string
        languageOverride:
          description: If this field is present, boarding passes served to a user's device will always be in this language. Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          type: string
        linksModuleData:
          $ref: "#/components/schemas/LinksModuleData"
          description: Links module data. If links module data is also defined on the object, both will be displayed.
        localBoardingDateTime:
          description: "The boarding time as it would be printed on the boarding pass. This is an ISO 8601 extended format date/time without an offset. Time may be specified up to millisecond precision. eg: `2027-03-05T06:30:00` This should be the local date/time at the airport (not a UTC time). Google will reject the request if UTC offset is provided. Time zones will be calculated by Google based on departure airport. If this is not set, Google will set it based on data from other sources."
          type: string
        localEstimatedOrActualArrivalDateTime:
          description: "The estimated time the aircraft plans to reach the destination gate (not the runway) or the actual time it reached the gate. This field should be set if at least one of the below is true: - It differs from the scheduled time. Google will use it to calculate the delay. - The aircraft already arrived at the gate. Google will use it to inform the user that the flight has arrived at the gate. This is an ISO 8601 extended format date/time without an offset. Time may be specified up to millisecond precision. eg: `2027-03-05T06:30:00` This should be the local date/time at the airport (not a UTC time). Google will reject the request if UTC offset is provided. Time zones will be calculated by Google based on arrival airport. If this is not set, Google will set it based on data from other sources."
          type: string
        localEstimatedOrActualDepartureDateTime:
          description: "The estimated time the aircraft plans to pull from the gate or the actual time the aircraft already pulled from the gate. Note: This is not the runway time. This field should be set if at least one of the below is true: - It differs from the scheduled time. Google will use it to calculate the delay. - The aircraft already pulled from the gate. Google will use it to inform the user when the flight actually departed. This is an ISO 8601 extended format date/time without an offset. Time may be specified up to millisecond precision. eg: `2027-03-05T06:30:00` This should be the local date/time at the airport (not a UTC time). Google will reject the request if UTC offset is provided. Time zones will be calculated by Google based on departure airport. If this is not set, Google will set it based on data from other sources."
          type: string
        localGateClosingDateTime:
          description: "The gate closing time as it would be printed on the boarding pass. Do not set this field if you do not want to print it in the boarding pass. This is an ISO 8601 extended format date/time without an offset. Time may be specified up to millisecond precision. eg: `2027-03-05T06:30:00` This should be the local date/time at the airport (not a UTC time). Google will reject the request if UTC offset is provided. Time zones will be calculated by Google based on departure airport."
          type: string
        localScheduledArrivalDateTime:
          description: "The scheduled time the aircraft plans to reach the destination gate (not the runway). Note: This field should not change too close to the flight time. For updates to departure times (delays, etc), please set `localEstimatedOrActualArrivalDateTime`. This is an ISO 8601 extended format date/time without an offset. Time may be specified up to millisecond precision. eg: `2027-03-05T06:30:00` This should be the local date/time at the airport (not a UTC time). Google will reject the request if UTC offset is provided. Time zones will be calculated by Google based on arrival airport. If this is not set, Google will set it based on data from other sources."
          type: string
        localScheduledDepartureDateTime:
          description: "Required. The scheduled date and time when the aircraft is expected to depart the gate (not the runway) Note: This field should not change too close to the departure time. For updates to departure times (delays, etc), please set `localEstimatedOrActualDepartureDateTime`. This is an ISO 8601 extended format date/time without an offset. Time may be specified up to millisecond precision. eg: `2027-03-05T06:30:00` This should be the local date/time at the airport (not a UTC time). Google will reject the request if UTC offset is provided. Time zones will be calculated by Google based on departure airport."
          type: string
        localizedIssuerName:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the issuer_name. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.
        locations:
          description: "Note: This field is currently not supported to trigger geo notifications."
          items:
            $ref: "#/components/schemas/LatLongPoint"
          type: array
        messages:
          description: An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
          items:
            $ref: "#/components/schemas/Message"
          type: array
        multipleDevicesAndHoldersAllowedStatus:
          description: Identifies whether multiple users and devices will save the same object referencing this class.
          enum:
            - STATUS_UNSPECIFIED
            - MULTIPLE_HOLDERS
            - multipleHolders
            - ONE_USER_ALL_DEVICES
            - oneUserAllDevices
            - ONE_USER_ONE_DEVICE
            - oneUserOneDevice
          type: string
        origin:
          $ref: "#/components/schemas/AirportInfo"
          description: Required. Origin airport.
        redemptionIssuers:
          description: Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
          items:
            format: int64
            type: string
          type: array
        review:
          $ref: "#/components/schemas/Review"
          description: The review comments set by the platform when a class is marked `approved` or `rejected`.
        reviewStatus:
          description: Required. The status of the class. This field can be set to `draft` or `underReview` using the insert, patch, or update API calls. Once the review state is changed from `draft` it may not be changed back to `draft`. You should keep this field to `draft` when the class is under development. A `draft` class cannot be used to create any object. You should set this field to `underReview` when you believe the class is ready for use. The platform will automatically set this field to `approved` and it can be immediately used to create or migrate objects. When updating an already `approved` class you should keep setting this field to `underReview`.
          enum:
            - REVIEW_STATUS_UNSPECIFIED
            - UNDER_REVIEW
            - underReview
            - APPROVED
            - approved
            - REJECTED
            - rejected
            - DRAFT
            - draft
          type: string
        securityAnimation:
          $ref: "#/components/schemas/SecurityAnimation"
          description: Optional information about the security animation. If this is set a security animation will be rendered on pass details.
        textModulesData:
          description: Text module data. If text module data is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from the object and 10 from the class.
          items:
            $ref: "#/components/schemas/TextModuleData"
          type: array
        version:
          description: Deprecated
          format: int64
          type: string
        viewUnlockRequirement:
          description: View Unlock Requirement options for the boarding pass.
          enum:
            - VIEW_UNLOCK_REQUIREMENT_UNSPECIFIED
            - UNLOCK_NOT_REQUIRED
            - UNLOCK_REQUIRED_TO_VIEW
          type: string
        wordMark:
          $ref: "#/components/schemas/Image"
          description: Deprecated.
      type: object
    FlightClassAddMessageResponse:
      properties:
        resource:
          $ref: "#/components/schemas/FlightClass"
          description: The updated FlightClass resource.
      type: object
    FlightClassListResponse:
      properties:
        pagination:
          $ref: "#/components/schemas/Pagination"
          description: Pagination of the response.
        resources:
          description: Resources corresponding to the list request.
          items:
            $ref: "#/components/schemas/FlightClass"
          type: array
      type: object
    FlightHeader:
      properties:
        carrier:
          $ref: "#/components/schemas/FlightCarrier"
          description: Information about airline carrier. This is a required property of `flightHeader`.
        flightNumber:
          description: 'The flight number without IATA carrier code. This field should contain only digits. This is a required property of `flightHeader`. eg: "123"'
          type: string
        flightNumberDisplayOverride:
          description: 'Override value to use for flight number. The default value used for display purposes is carrier + flight_number. If a different value needs to be shown to passengers, use this field to override the default behavior. eg: "XX1234 / YY576"'
          type: string
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#flightHeader"`.'
          type: string
        operatingCarrier:
          $ref: "#/components/schemas/FlightCarrier"
          description: Information about operating airline carrier.
        operatingFlightNumber:
          description: 'The flight number used by the operating carrier without IATA carrier code. This field should contain only digits. eg: "234"'
          type: string
      type: object
    FlightObject:
      properties:
        appLinkData:
          $ref: "#/components/schemas/AppLinkData"
          description: Optional information about the partner app link.
        barcode:
          $ref: "#/components/schemas/Barcode"
          description: The barcode type and value.
        boardingAndSeatingInfo:
          $ref: "#/components/schemas/BoardingAndSeatingInfo"
          description: Passenger specific information about boarding and seating.
        classId:
          description: Required. The class associated with this object. The class must be of the same type as this object, must already exist, and must be approved. Class IDs should follow the format issuer ID.identifier where the former is issued by Google and latter is chosen by you.
          type: string
        classReference:
          $ref: "#/components/schemas/FlightClass"
          description: A copy of the inherited fields of the parent class. These fields are retrieved during a GET.
        disableExpirationNotification:
          description: Indicates if notifications should explicitly be suppressed. If this field is set to true, regardless of the `messages` field, expiration notifications to the user will be suppressed. By default, this field is set to false. Currently, this can only be set for Flights.
          type: boolean
        groupingInfo:
          $ref: "#/components/schemas/GroupingInfo"
          description: Information that controls how passes are grouped together.
        hasLinkedDevice:
          description: Whether this object is currently linked to a single device. This field is set by the platform when a user saves the object, linking it to their device. Intended for use by select partners. Contact support for additional information.
          type: boolean
        hasUsers:
          description: Indicates if the object has users. This field is set by the platform.
          type: boolean
        heroImage:
          $ref: "#/components/schemas/Image"
          description: Optional banner image displayed on the front of the card. If none is present, hero image of the class, if present, will be displayed. If hero image of the class is also not present, nothing will be displayed.
        hexBackgroundColor:
          description: "The background color for the card. If not set the dominant color of the hero image is used, and if no hero image is set, the dominant color of the logo is used. The format is #rrggbb where rrggbb is a hex RGB triplet, such as `#ffcc00`. You can also use the shorthand version of the RGB triplet which is #rgb, such as `#fc0`."
          type: string
        id:
          description: Required. The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID.identifier where the former is issued by Google and latter is chosen by you. The unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          type: string
        imageModulesData:
          description: Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level.
          items:
            $ref: "#/components/schemas/ImageModuleData"
          type: array
        infoModuleData:
          $ref: "#/components/schemas/InfoModuleData"
          description: Deprecated. Use textModulesData instead.
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#flightObject"`.'
          type: string
        linksModuleData:
          $ref: "#/components/schemas/LinksModuleData"
          description: Links module data. If links module data is also defined on the class, both will be displayed.
        locations:
          description: "Note: This field is currently not supported to trigger geo notifications."
          items:
            $ref: "#/components/schemas/LatLongPoint"
          type: array
        messages:
          description: An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
          items:
            $ref: "#/components/schemas/Message"
          type: array
        passConstraints:
          $ref: "#/components/schemas/PassConstraints"
          description: Pass constraints for the object. Includes limiting NFC and screenshot behaviors.
        passengerName:
          description: 'Required. Passenger name as it would appear on the boarding pass. eg: "Dave M Gahan" or "Gahan/Dave" or "GAHAN/DAVEM"'
          type: string
        reservationInfo:
          $ref: "#/components/schemas/ReservationInfo"
          description: Required. Information about flight reservation.
        rotatingBarcode:
          $ref: "#/components/schemas/RotatingBarcode"
          description: The rotating barcode type and value.
        securityProgramLogo:
          $ref: "#/components/schemas/Image"
          description: An image for the security program that applies to the passenger.
        smartTapRedemptionValue:
          description: The value that will be transmitted to a Smart Tap certified terminal over NFC for this object. The class level fields `enableSmartTap` and `redemptionIssuers` must also be set up correctly in order for the pass to support Smart Tap. Only ASCII characters are supported.
          type: string
        state:
          description: Required. The state of the object. This field is used to determine how an object is displayed in the app. For example, an `inactive` object is moved to the "Expired passes" section.
          enum:
            - STATE_UNSPECIFIED
            - ACTIVE
            - active
            - COMPLETED
            - completed
            - EXPIRED
            - expired
            - INACTIVE
            - inactive
          type: string
        textModulesData:
          description: Text module data. If text module data is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from the object and 10 from the class.
          items:
            $ref: "#/components/schemas/TextModuleData"
          type: array
        validTimeInterval:
          $ref: "#/components/schemas/TimeInterval"
          description: The time period this object will be `active` and object can be used. An object's state will be changed to `expired` when this time period has passed.
        version:
          description: Deprecated
          format: int64
          type: string
      type: object
    FlightObjectAddMessageResponse:
      properties:
        resource:
          $ref: "#/components/schemas/FlightObject"
          description: The updated FlightObject resource.
      type: object
    FlightObjectListResponse:
      properties:
        pagination:
          $ref: "#/components/schemas/Pagination"
          description: Pagination of the response.
        resources:
          description: Resources corresponding to the list request.
          items:
            $ref: "#/components/schemas/FlightObject"
          type: array
      type: object
    FrequentFlyerInfo:
      properties:
        frequentFlyerNumber:
          description: Frequent flyer number. Required for each nested object of kind `walletobjects#frequentFlyerInfo`.
          type: string
        frequentFlyerProgramName:
          $ref: "#/components/schemas/LocalizedString"
          description: 'Frequent flyer program name. eg: "Lufthansa Miles & More"'
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#frequentFlyerInfo"`.'
          type: string
      type: object
    GenericClass:
      description: Generic Class
      properties:
        callbackOptions:
          $ref: "#/components/schemas/CallbackOptions"
          description: Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
        classTemplateInfo:
          $ref: "#/components/schemas/ClassTemplateInfo"
          description: Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
        enableSmartTap:
          description: Available only to Smart Tap enabled partners. Contact support for additional guidance.
          type: boolean
        id:
          description: Required. The unique identifier for the class. This ID must be unique across all from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
          type: string
        imageModulesData:
          description: Image module data. If `imageModulesData` is also defined on the object, both will be displayed. Only one of the image from class and one from object level will be rendered when both set.
          items:
            $ref: "#/components/schemas/ImageModuleData"
          type: array
        linksModuleData:
          $ref: "#/components/schemas/LinksModuleData"
          description: Links module data. If `linksModuleData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
        multipleDevicesAndHoldersAllowedStatus:
          description: Identifies whether multiple users and devices will save the same object referencing this class.
          enum:
            - STATUS_UNSPECIFIED
            - MULTIPLE_HOLDERS
            - multipleHolders
            - ONE_USER_ALL_DEVICES
            - oneUserAllDevices
            - ONE_USER_ONE_DEVICE
            - oneUserOneDevice
          type: string
        redemptionIssuers:
          description: Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
          items:
            format: int64
            type: string
          type: array
        securityAnimation:
          $ref: "#/components/schemas/SecurityAnimation"
          description: Optional information about the security animation. If this is set a security animation will be rendered on pass details.
        textModulesData:
          description: Text module data. If `textModulesData` is also defined on the object, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
          items:
            $ref: "#/components/schemas/TextModuleData"
          type: array
        viewUnlockRequirement:
          description: View Unlock Requirement options for the generic pass.
          enum:
            - VIEW_UNLOCK_REQUIREMENT_UNSPECIFIED
            - UNLOCK_NOT_REQUIRED
            - UNLOCK_REQUIRED_TO_VIEW
          type: string
      type: object
    GenericClassListResponse:
      description: List response which contains the list of all generic classes for a given issuer ID.
      properties:
        pagination:
          $ref: "#/components/schemas/Pagination"
          description: Pagination of the response.
        resources:
          description: Resources corresponding to the list request.
          items:
            $ref: "#/components/schemas/GenericClass"
          type: array
      type: object
    GenericObject:
      description: "Generic Object Next ID: 121"
      properties:
        appLinkData:
          $ref: "#/components/schemas/AppLinkData"
          description: Information about the partner app link. The maximum number of these fields displayed is 10.
        barcode:
          $ref: "#/components/schemas/Barcode"
          description: The barcode type and value. If pass does not have a barcode, we can allow the issuer to set Barcode.alternate_text and display just that.
        cardTitle:
          $ref: "#/components/schemas/LocalizedString"
          description: Required. The header of the pass. This is usually the Business name such as "XXX Gym", "AAA Insurance". This field is required and appears in the header row at the very top of the pass.
        classId:
          description: Required. The class associated with this object. The class must be of the same type as this object, must already exist, and must be approved. Class IDs should follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you.
          type: string
        genericType:
          description: Specify which `GenericType` the card belongs to.
          enum:
            - GENERIC_TYPE_UNSPECIFIED
            - GENERIC_SEASON_PASS
            - GENERIC_UTILITY_BILLS
            - GENERIC_PARKING_PASS
            - GENERIC_VOUCHER
            - GENERIC_GYM_MEMBERSHIP
            - GENERIC_LIBRARY_MEMBERSHIP
            - GENERIC_RESERVATIONS
            - GENERIC_AUTO_INSURANCE
            - GENERIC_HOME_INSURANCE
            - GENERIC_ENTRY_TICKET
            - GENERIC_RECEIPT
            - GENERIC_OTHER
          type: string
        groupingInfo:
          $ref: "#/components/schemas/GroupingInfo"
          description: Information that controls how passes are grouped together.
        hasUsers:
          description: Indicates if the object has users. This field is set by the platform.
          type: boolean
        header:
          $ref: "#/components/schemas/LocalizedString"
          description: Required. The title of the pass, such as "50% off coupon" or "Library card" or "Voucher". This field is required and appears in the title row of the pass detail view.
        heroImage:
          $ref: "#/components/schemas/Image"
          description: Banner image displayed on the front of the card if present. The image will be displayed at 100% width.
        hexBackgroundColor:
          description: The background color for the card. If not set, the dominant color of the hero image is used, and if no hero image is set, the dominant color of the logo is used and if logo is not set, a color would be chosen by Google.
          type: string
        id:
          description: Required. The unique identifier for an object. This ID must be unique across all objects from an issuer. This value needs to follow the format `issuerID.identifier` where `issuerID` is issued by Google and `identifier` is chosen by you. The unique identifier can only include alphanumeric characters, `.`, `_`, or `-`.
          type: string
        imageModulesData:
          description: Image module data. Only one of the image from class and one from object level will be rendered when both set.
          items:
            $ref: "#/components/schemas/ImageModuleData"
          type: array
        linksModuleData:
          $ref: "#/components/schemas/LinksModuleData"
          description: Links module data. If `linksModuleData` is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
        logo:
          $ref: "#/components/schemas/Image"
          description: The logo image of the pass. This image is displayed in the card detail view in upper left, and also on the list/thumbnail view. If the logo is not present, the first letter of `cardTitle` would be shown as logo.
        notifications:
          $ref: "#/components/schemas/Notifications"
          description: The notification settings that are enabled for this object.
        passConstraints:
          $ref: "#/components/schemas/PassConstraints"
          description: Pass constraints for the object. Includes limiting NFC and screenshot behaviors.
        rotatingBarcode:
          $ref: "#/components/schemas/RotatingBarcode"
          description: The rotating barcode settings/details.
        smartTapRedemptionValue:
          description: The value that will be transmitted to a Smart Tap certified terminal over NFC for this object. The class level fields `enableSmartTap` and `redemptionIssuers` must also be set up correctly in order for the pass to support Smart Tap. Only ASCII characters are supported.
          type: string
        state:
          description: The state of the object. This field is used to determine how an object is displayed in the app. For example, an `inactive` object is moved to the "Expired passes" section. If this is not provided, the object would be considered `ACTIVE`.
          enum:
            - STATE_UNSPECIFIED
            - ACTIVE
            - active
            - COMPLETED
            - completed
            - EXPIRED
            - expired
            - INACTIVE
            - inactive
          type: string
        subheader:
          $ref: "#/components/schemas/LocalizedString"
          description: The title label of the pass, such as location where this pass can be used. Appears right above the title in the title row in the pass detail view.
        textModulesData:
          description: Text module data. If `textModulesData` is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from class and 10 from object.
          items:
            $ref: "#/components/schemas/TextModuleData"
          type: array
        validTimeInterval:
          $ref: "#/components/schemas/TimeInterval"
          description: The time period this object will be considered valid or usable. When the time period is passed, the object will be considered expired, which will affect the rendering on user's devices.
      type: object
    GenericObjectListResponse:
      description: List response which contains the list of all generic objects for a given issuer ID.
      properties:
        pagination:
          $ref: "#/components/schemas/Pagination"
          description: Pagination of the response.
        resources:
          description: Resources corresponding to the list request.
          items:
            $ref: "#/components/schemas/GenericObject"
          type: array
      type: object
    GiftCardClass:
      properties:
        allowBarcodeRedemption:
          description: Determines whether the merchant supports gift card redemption using barcode. If true, app displays a barcode for the gift card on the Gift card details screen. If false, a barcode is not displayed.
          type: boolean
        allowMultipleUsersPerObject:
          description: Deprecated. Use `multipleDevicesAndHoldersAllowedStatus` instead.
          type: boolean
        callbackOptions:
          $ref: "#/components/schemas/CallbackOptions"
          description: Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
        cardNumberLabel:
          description: The label to display for the card number, such as "Card Number".
          type: string
        classTemplateInfo:
          $ref: "#/components/schemas/ClassTemplateInfo"
          description: Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
        countryCode:
          description: Country code used to display the card's country (when the user is not in that country), as well as to display localized content when content is not available in the user's locale.
          type: string
        enableSmartTap:
          description: Identifies whether this class supports Smart Tap. The `redemptionIssuers` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
          type: boolean
        eventNumberLabel:
          description: 'The label to display for event number, such as "Target Event #".'
          type: string
        heroImage:
          $ref: "#/components/schemas/Image"
          description: Optional banner image displayed on the front of the card. If none is present, nothing will be displayed. The image will display at 100% width.
        hexBackgroundColor:
          description: "The background color for the card. If not set the dominant color of the hero image is used, and if no hero image is set, the dominant color of the logo is used. The format is #rrggbb where rrggbb is a hex RGB triplet, such as `#ffcc00`. You can also use the shorthand version of the RGB triplet which is #rgb, such as `#fc0`."
          type: string
        homepageUri:
          $ref: "#/components/schemas/Uri"
          description: The URI of your application's home page. Populating the URI in this field results in the exact same behavior as populating an URI in linksModuleData (when an object is rendered, a link to the homepage is shown in what would usually be thought of as the linksModuleData section of the object).
        id:
          description: Required. The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          type: string
        imageModulesData:
          description: Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level.
          items:
            $ref: "#/components/schemas/ImageModuleData"
          type: array
        infoModuleData:
          $ref: "#/components/schemas/InfoModuleData"
          description: Deprecated. Use textModulesData instead.
        issuerName:
          description: Required. The issuer name. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.
          type: string
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#giftCardClass"`.'
          type: string
        linksModuleData:
          $ref: "#/components/schemas/LinksModuleData"
          description: Links module data. If links module data is also defined on the object, both will be displayed.
        localizedCardNumberLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the card_number_label.
        localizedEventNumberLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the event_number_label.
        localizedIssuerName:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the issuer_name. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.
        localizedMerchantName:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the merchant_name. The app may display an ellipsis after the first 20 characters to ensure full string is displayed on smaller screens.
        localizedPinLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the pin_label.
        locations:
          description: "Note: This field is currently not supported to trigger geo notifications."
          items:
            $ref: "#/components/schemas/LatLongPoint"
          type: array
        merchantName:
          description: Merchant name, such as "Adam's Apparel". The app may display an ellipsis after the first 20 characters to ensure full string is displayed on smaller screens.
          type: string
        messages:
          description: An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
          items:
            $ref: "#/components/schemas/Message"
          type: array
        multipleDevicesAndHoldersAllowedStatus:
          description: Identifies whether multiple users and devices will save the same object referencing this class.
          enum:
            - STATUS_UNSPECIFIED
            - MULTIPLE_HOLDERS
            - multipleHolders
            - ONE_USER_ALL_DEVICES
            - oneUserAllDevices
            - ONE_USER_ONE_DEVICE
            - oneUserOneDevice
          type: string
        pinLabel:
          description: The label to display for the PIN, such as "4-digit PIN".
          type: string
        programLogo:
          $ref: "#/components/schemas/Image"
          description: The logo of the gift card program or company. This logo is displayed in both the details and list views of the app.
        redemptionIssuers:
          description: Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
          items:
            format: int64
            type: string
          type: array
        review:
          $ref: "#/components/schemas/Review"
          description: The review comments set by the platform when a class is marked `approved` or `rejected`.
        reviewStatus:
          description: Required. The status of the class. This field can be set to `draft` or `underReview` using the insert, patch, or update API calls. Once the review state is changed from `draft` it may not be changed back to `draft`. You should keep this field to `draft` when the class is under development. A `draft` class cannot be used to create any object. You should set this field to `underReview` when you believe the class is ready for use. The platform will automatically set this field to `approved` and it can be immediately used to create or migrate objects. When updating an already `approved` class you should keep setting this field to `underReview`.
          enum:
            - REVIEW_STATUS_UNSPECIFIED
            - UNDER_REVIEW
            - underReview
            - APPROVED
            - approved
            - REJECTED
            - rejected
            - DRAFT
            - draft
          type: string
        securityAnimation:
          $ref: "#/components/schemas/SecurityAnimation"
          description: Optional information about the security animation. If this is set a security animation will be rendered on pass details.
        textModulesData:
          description: Text module data. If text module data is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from the object and 10 from the class.
          items:
            $ref: "#/components/schemas/TextModuleData"
          type: array
        version:
          description: Deprecated
          format: int64
          type: string
        viewUnlockRequirement:
          description: View Unlock Requirement options for the gift card.
          enum:
            - VIEW_UNLOCK_REQUIREMENT_UNSPECIFIED
            - UNLOCK_NOT_REQUIRED
            - UNLOCK_REQUIRED_TO_VIEW
          type: string
        wordMark:
          $ref: "#/components/schemas/Image"
          description: Deprecated.
      type: object
    GiftCardClassAddMessageResponse:
      properties:
        resource:
          $ref: "#/components/schemas/GiftCardClass"
          description: The updated GiftCardClass resource.
      type: object
    GiftCardClassListResponse:
      properties:
        pagination:
          $ref: "#/components/schemas/Pagination"
          description: Pagination of the response.
        resources:
          description: Resources corresponding to the list request.
          items:
            $ref: "#/components/schemas/GiftCardClass"
          type: array
      type: object
    GiftCardObject:
      properties:
        appLinkData:
          $ref: "#/components/schemas/AppLinkData"
          description: Optional information about the partner app link.
        balance:
          $ref: "#/components/schemas/Money"
          description: The card's monetary balance.
        balanceUpdateTime:
          $ref: "#/components/schemas/DateTime"
          description: The date and time when the balance was last updated. Offset is required. If balance is updated and this property is not provided, system will default to the current time.
        barcode:
          $ref: "#/components/schemas/Barcode"
          description: The barcode type and value.
        cardNumber:
          description: Required. The card's number.
          type: string
        classId:
          description: Required. The class associated with this object. The class must be of the same type as this object, must already exist, and must be approved. Class IDs should follow the format issuer ID.identifier where the former is issued by Google and latter is chosen by you.
          type: string
        classReference:
          $ref: "#/components/schemas/GiftCardClass"
          description: A copy of the inherited fields of the parent class. These fields are retrieved during a GET.
        disableExpirationNotification:
          description: Indicates if notifications should explicitly be suppressed. If this field is set to true, regardless of the `messages` field, expiration notifications to the user will be suppressed. By default, this field is set to false. Currently, this can only be set for offers.
          type: boolean
        eventNumber:
          description: The card's event number, an optional field used by some gift cards.
          type: string
        groupingInfo:
          $ref: "#/components/schemas/GroupingInfo"
          description: Information that controls how passes are grouped together.
        hasLinkedDevice:
          description: Whether this object is currently linked to a single device. This field is set by the platform when a user saves the object, linking it to their device. Intended for use by select partners. Contact support for additional information.
          type: boolean
        hasUsers:
          description: Indicates if the object has users. This field is set by the platform.
          type: boolean
        heroImage:
          $ref: "#/components/schemas/Image"
          description: Optional banner image displayed on the front of the card. If none is present, hero image of the class, if present, will be displayed. If hero image of the class is also not present, nothing will be displayed.
        id:
          description: Required. The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID.identifier where the former is issued by Google and latter is chosen by you. The unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          type: string
        imageModulesData:
          description: Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level.
          items:
            $ref: "#/components/schemas/ImageModuleData"
          type: array
        infoModuleData:
          $ref: "#/components/schemas/InfoModuleData"
          description: Deprecated. Use textModulesData instead.
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#giftCardObject"`.'
          type: string
        linksModuleData:
          $ref: "#/components/schemas/LinksModuleData"
          description: Links module data. If links module data is also defined on the class, both will be displayed.
        locations:
          description: "Note: This field is currently not supported to trigger geo notifications."
          items:
            $ref: "#/components/schemas/LatLongPoint"
          type: array
        messages:
          description: An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
          items:
            $ref: "#/components/schemas/Message"
          type: array
        passConstraints:
          $ref: "#/components/schemas/PassConstraints"
          description: Pass constraints for the object. Includes limiting NFC and screenshot behaviors.
        pin:
          description: The card's PIN.
          type: string
        rotatingBarcode:
          $ref: "#/components/schemas/RotatingBarcode"
          description: The rotating barcode type and value.
        smartTapRedemptionValue:
          description: The value that will be transmitted to a Smart Tap certified terminal over NFC for this object. The class level fields `enableSmartTap` and `redemptionIssuers` must also be set up correctly in order for the pass to support Smart Tap. Only ASCII characters are supported.
          type: string
        state:
          description: Required. The state of the object. This field is used to determine how an object is displayed in the app. For example, an `inactive` object is moved to the "Expired passes" section.
          enum:
            - STATE_UNSPECIFIED
            - ACTIVE
            - active
            - COMPLETED
            - completed
            - EXPIRED
            - expired
            - INACTIVE
            - inactive
          type: string
        textModulesData:
          description: Text module data. If text module data is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from the object and 10 from the class.
          items:
            $ref: "#/components/schemas/TextModuleData"
          type: array
        validTimeInterval:
          $ref: "#/components/schemas/TimeInterval"
          description: The time period this object will be `active` and object can be used. An object's state will be changed to `expired` when this time period has passed.
        version:
          description: Deprecated
          format: int64
          type: string
      type: object
    GiftCardObjectAddMessageResponse:
      properties:
        resource:
          $ref: "#/components/schemas/GiftCardObject"
          description: The updated GiftCardObject resource.
      type: object
    GiftCardObjectListResponse:
      properties:
        pagination:
          $ref: "#/components/schemas/Pagination"
          description: Pagination of the response.
        resources:
          description: Resources corresponding to the list request.
          items:
            $ref: "#/components/schemas/GiftCardObject"
          type: array
      type: object
    GroupingInfo:
      properties:
        groupingId:
          description: Optional grouping ID for grouping the passes with the same ID visually together. Grouping with different types of passes is allowed.
          type: string
        sortIndex:
          description: Optional index for sorting the passes when they are grouped with other passes. Passes with lower sort index are shown before passes with higher sort index. If unspecified, the value is assumed to be INT_MAX. For two passes with the same sort index, the sorting behavior is undefined.
          format: int32
          type: integer
      type: object
    Image:
      description: "Wrapping type for Google hosted images. Next ID: 7"
      properties:
        contentDescription:
          $ref: "#/components/schemas/LocalizedString"
          description: Description of the image used for accessibility.
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#image"`.'
          type: string
        sourceUri:
          $ref: "#/components/schemas/ImageUri"
          description: The URI for the image.
      type: object
    ImageModuleData:
      properties:
        id:
          description: The ID associated with an image module. This field is here to enable ease of management of image modules.
          type: string
        mainImage:
          $ref: "#/components/schemas/Image"
          description: A 100% width image.
      type: object
    ImageUri:
      properties:
        description:
          description: Additional information about the image, which is unused and retained only for backward compatibility.
          type: string
        localizedDescription:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the description, which are unused and retained only for backward compatibility.
        uri:
          description: The location of the image. URIs must have a scheme.
          type: string
      type: object
    InfoModuleData:
      properties:
        labelValueRows:
          description: A list of collections of labels and values. These will be displayed one after the other in a singular column.
          items:
            $ref: "#/components/schemas/LabelValueRow"
          type: array
        showLastUpdateTime:
          type: boolean
      type: object
    Issuer:
      properties:
        contactInfo:
          $ref: "#/components/schemas/IssuerContactInfo"
          description: Issuer contact information.
        homepageUrl:
          description: URL for the issuer's home page.
          type: string
        issuerId:
          description: The unique identifier for an issuer account. This is automatically generated when the issuer is inserted.
          format: int64
          type: string
        name:
          description: The account name of the issuer.
          type: string
        smartTapMerchantData:
          $ref: "#/components/schemas/SmartTapMerchantData"
          description: Available only to Smart Tap enabled partners. Contact support for additional guidance.
      type: object
    IssuerContactInfo:
      properties:
        alertsEmails:
          description: Email addresses which will receive alerts.
          items:
            type: string
          type: array
        email:
          description: The primary contact email address.
          type: string
        name:
          description: The primary contact name.
          type: string
        phone:
          description: The primary contact phone number.
          type: string
      type: object
    IssuerListResponse:
      properties:
        resources:
          description: Resources corresponding to the list request.
          items:
            $ref: "#/components/schemas/Issuer"
          type: array
      type: object
    IssuerToUserInfo:
      properties:
        action:
          enum:
            - ACTION_UNSPECIFIED
            - S2AP
            - s2ap
            - SIGN_UP
            - signUp
          type: string
        signUpInfo:
          $ref: "#/components/schemas/SignUpInfo"
        url:
          description: Currently not used, consider deprecating.
          type: string
        value:
          description: JSON web token for action S2AP.
          type: string
      type: object
    JwtInsertResponse:
      properties:
        resources:
          $ref: "#/components/schemas/Resources"
          description: Data that corresponds to the ids of the provided classes and objects in the JWT. resources will only include the non-empty arrays (i.e. if the JWT only includes eventTicketObjects, then that is the only field that will be present in resources).
        saveUri:
          description: A URI that, when opened, will allow the end user to save the object(s) identified in the JWT to their Google account.
          type: string
      type: object
    JwtResource:
      properties:
        jwt:
          description: A string representing a JWT of the format described at https://developers.google.com/pay/passes/reference/s2w-reference#google-pay-api-for-passes-jwt
          type: string
      type: object
    LabelValue:
      description: A pair of text strings to be displayed in the details view. Note we no longer display LabelValue/LabelValueRow as a table, instead a list of items.
      properties:
        label:
          description: The label for a specific row and column. Recommended maximum is 15 characters for a two-column layout and 30 characters for a one-column layout.
          type: string
        localizedLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the label. Recommended maximum is 15 characters for a two-column layout and 30 characters for a one-column layout.
        localizedValue:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the value. Recommended maximum is 15 characters for a two-column layout and 30 characters for a one-column layout.
        value:
          description: The value for a specific row and column. Recommended maximum is 15 characters for a two-column layout and 30 characters for a one-column layout.
          type: string
      type: object
    LabelValueRow:
      properties:
        columns:
          description: A list of labels and values. These will be displayed in a singular column, one after the other, not in multiple columns, despite the field name.
          items:
            $ref: "#/components/schemas/LabelValue"
          type: array
      type: object
    LatLongPoint:
      properties:
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#latLongPoint"`.'
          type: string
        latitude:
          description: The latitude specified as any value in the range of -90.0 through +90.0, both inclusive. Values outside these bounds will be rejected.
          format: double
          type: number
        longitude:
          description: The longitude specified in the range -180.0 through +180.0, both inclusive. Values outside these bounds will be rejected.
          format: double
          type: number
      type: object
    LinksModuleData:
      properties:
        uris:
          description: The list of URIs.
          items:
            $ref: "#/components/schemas/Uri"
          type: array
      type: object
    ListTemplateOverride:
      properties:
        firstRowOption:
          $ref: "#/components/schemas/FirstRowOption"
          description: Specifies from a predefined set of options or from a reference to the field what will be displayed in the first row.
        secondRowOption:
          $ref: "#/components/schemas/FieldSelector"
          description: A reference to the field to be displayed in the second row. This option is only displayed if there are not multiple user objects in a group. If there is a group, the second row will always display a field shared by all objects.
        thirdRowOption:
          $ref: "#/components/schemas/FieldSelector"
          description: 'A reference to the field to be displayed in the third row. This option is only displayed if there are not multiple user objects in a group. If there is a group, the third row will always display the number of objects in the group. Eg: "3 passes"'
      type: object
    LocalizedString:
      properties:
        defaultValue:
          $ref: "#/components/schemas/TranslatedString"
          description: Contains the string to be displayed if no appropriate translation is available.
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#localizedString"`.'
          type: string
        translatedValues:
          description: Contains the translations for the string.
          items:
            $ref: "#/components/schemas/TranslatedString"
          type: array
      type: object
    LoyaltyClass:
      properties:
        accountIdLabel:
          description: The account ID label, such as "Member ID." Recommended maximum length is 15 characters to ensure full string is displayed on smaller screens.
          type: string
        accountNameLabel:
          description: The account name label, such as "Member Name." Recommended maximum length is 15 characters to ensure full string is displayed on smaller screens.
          type: string
        allowMultipleUsersPerObject:
          description: Deprecated. Use `multipleDevicesAndHoldersAllowedStatus` instead.
          type: boolean
        callbackOptions:
          $ref: "#/components/schemas/CallbackOptions"
          description: Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
        classTemplateInfo:
          $ref: "#/components/schemas/ClassTemplateInfo"
          description: Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
        countryCode:
          description: Country code used to display the card's country (when the user is not in that country), as well as to display localized content when content is not available in the user's locale.
          type: string
        discoverableProgram:
          $ref: "#/components/schemas/DiscoverableProgram"
          description: Information about how the class may be discovered and instantiated from within the Google Pay app.
        enableSmartTap:
          description: Identifies whether this class supports Smart Tap. The `redemptionIssuers` and one of object level `smartTapRedemptionLevel`, barcode.value`, or `accountId` fields must also be set up correctly in order for a pass to support Smart Tap.
          type: boolean
        heroImage:
          $ref: "#/components/schemas/Image"
          description: Optional banner image displayed on the front of the card. If none is present, nothing will be displayed. The image will display at 100% width.
        hexBackgroundColor:
          description: "The background color for the card. If not set the dominant color of the hero image is used, and if no hero image is set, the dominant color of the logo is used. The format is #rrggbb where rrggbb is a hex RGB triplet, such as `#ffcc00`. You can also use the shorthand version of the RGB triplet which is #rgb, such as `#fc0`."
          type: string
        homepageUri:
          $ref: "#/components/schemas/Uri"
          description: The URI of your application's home page. Populating the URI in this field results in the exact same behavior as populating an URI in linksModuleData (when an object is rendered, a link to the homepage is shown in what would usually be thought of as the linksModuleData section of the object).
        id:
          description: Required. The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          type: string
        imageModulesData:
          description: Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level.
          items:
            $ref: "#/components/schemas/ImageModuleData"
          type: array
        infoModuleData:
          $ref: "#/components/schemas/InfoModuleData"
          description: Deprecated. Use textModulesData instead.
        issuerName:
          description: Required. The issuer name. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.
          type: string
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#loyaltyClass"`.'
          type: string
        linksModuleData:
          $ref: "#/components/schemas/LinksModuleData"
          description: Links module data. If links module data is also defined on the object, both will be displayed.
        localizedAccountIdLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the account_id_label. Recommended maximum length is 15 characters to ensure full string is displayed on smaller screens.
        localizedAccountNameLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the account_name_label. Recommended maximum length is 15 characters to ensure full string is displayed on smaller screens.
        localizedIssuerName:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the issuer_name. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.
        localizedProgramName:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the program_name. The app may display an ellipsis after the first 20 characters to ensure full string is displayed on smaller screens.
        localizedRewardsTier:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the rewards_tier. Recommended maximum length is 7 characters to ensure full string is displayed on smaller screens.
        localizedRewardsTierLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the rewards_tier_label. Recommended maximum length is 9 characters to ensure full string is displayed on smaller screens.
        localizedSecondaryRewardsTier:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the secondary_rewards_tier.
        localizedSecondaryRewardsTierLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the secondary_rewards_tier_label.
        locations:
          description: "Note: This field is currently not supported to trigger geo notifications."
          items:
            $ref: "#/components/schemas/LatLongPoint"
          type: array
        messages:
          description: An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
          items:
            $ref: "#/components/schemas/Message"
          type: array
        multipleDevicesAndHoldersAllowedStatus:
          description: Identifies whether multiple users and devices will save the same object referencing this class.
          enum:
            - STATUS_UNSPECIFIED
            - MULTIPLE_HOLDERS
            - multipleHolders
            - ONE_USER_ALL_DEVICES
            - oneUserAllDevices
            - ONE_USER_ONE_DEVICE
            - oneUserOneDevice
          type: string
        programLogo:
          $ref: "#/components/schemas/Image"
          description: Required. The logo of the loyalty program or company. This logo is displayed in both the details and list views of the app.
        programName:
          description: Required. The program name, such as "Adam's Apparel". The app may display an ellipsis after the first 20 characters to ensure full string is displayed on smaller screens.
          type: string
        redemptionIssuers:
          description: Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and one of object level `smartTapRedemptionValue`, barcode.value`, or `accountId` fields must also be set up correctly in order for a pass to support Smart Tap.
          items:
            format: int64
            type: string
          type: array
        review:
          $ref: "#/components/schemas/Review"
          description: The review comments set by the platform when a class is marked `approved` or `rejected`.
        reviewStatus:
          description: Required. The status of the class. This field can be set to `draft` or `underReview` using the insert, patch, or update API calls. Once the review state is changed from `draft` it may not be changed back to `draft`. You should keep this field to `draft` when the class is under development. A `draft` class cannot be used to create any object. You should set this field to `underReview` when you believe the class is ready for use. The platform will automatically set this field to `approved` and it can be immediately used to create or migrate objects. When updating an already `approved` class you should keep setting this field to `underReview`.
          enum:
            - REVIEW_STATUS_UNSPECIFIED
            - UNDER_REVIEW
            - underReview
            - APPROVED
            - approved
            - REJECTED
            - rejected
            - DRAFT
            - draft
          type: string
        rewardsTier:
          description: The rewards tier, such as "Gold" or "Platinum." Recommended maximum length is 7 characters to ensure full string is displayed on smaller screens.
          type: string
        rewardsTierLabel:
          description: The rewards tier label, such as "Rewards Tier." Recommended maximum length is 9 characters to ensure full string is displayed on smaller screens.
          type: string
        secondaryRewardsTier:
          description: The secondary rewards tier, such as "Gold" or "Platinum."
          type: string
        secondaryRewardsTierLabel:
          description: The secondary rewards tier label, such as "Rewards Tier."
          type: string
        securityAnimation:
          $ref: "#/components/schemas/SecurityAnimation"
          description: Optional information about the security animation. If this is set a security animation will be rendered on pass details.
        textModulesData:
          description: Text module data. If text module data is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from the object and 10 from the class.
          items:
            $ref: "#/components/schemas/TextModuleData"
          type: array
        version:
          description: Deprecated
          format: int64
          type: string
        viewUnlockRequirement:
          description: View Unlock Requirement options for the loyalty card.
          enum:
            - VIEW_UNLOCK_REQUIREMENT_UNSPECIFIED
            - UNLOCK_NOT_REQUIRED
            - UNLOCK_REQUIRED_TO_VIEW
          type: string
        wordMark:
          $ref: "#/components/schemas/Image"
          description: Deprecated.
      type: object
    LoyaltyClassAddMessageResponse:
      properties:
        resource:
          $ref: "#/components/schemas/LoyaltyClass"
          description: The updated LoyaltyClass resource.
      type: object
    LoyaltyClassListResponse:
      properties:
        pagination:
          $ref: "#/components/schemas/Pagination"
          description: Pagination of the response.
        resources:
          description: Resources corresponding to the list request.
          items:
            $ref: "#/components/schemas/LoyaltyClass"
          type: array
      type: object
    LoyaltyObject:
      properties:
        accountId:
          description: The loyalty account identifier. Recommended maximum length is 20 characters.
          type: string
        accountName:
          description: The loyalty account holder name, such as "John Smith." Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.
          type: string
        appLinkData:
          $ref: "#/components/schemas/AppLinkData"
          description: Optional information about the partner app link.
        barcode:
          $ref: "#/components/schemas/Barcode"
          description: The barcode type and value.
        classId:
          description: Required. The class associated with this object. The class must be of the same type as this object, must already exist, and must be approved. Class IDs should follow the format issuer ID.identifier where the former is issued by Google and latter is chosen by you.
          type: string
        classReference:
          $ref: "#/components/schemas/LoyaltyClass"
          description: A copy of the inherited fields of the parent class. These fields are retrieved during a GET.
        disableExpirationNotification:
          description: Indicates if notifications should explicitly be suppressed. If this field is set to true, regardless of the `messages` field, expiration notifications to the user will be suppressed. By default, this field is set to false. Currently, this can only be set for offers.
          type: boolean
        groupingInfo:
          $ref: "#/components/schemas/GroupingInfo"
          description: Information that controls how passes are grouped together.
        hasLinkedDevice:
          description: Whether this object is currently linked to a single device. This field is set by the platform when a user saves the object, linking it to their device. Intended for use by select partners. Contact support for additional information.
          type: boolean
        hasUsers:
          description: Indicates if the object has users. This field is set by the platform.
          type: boolean
        heroImage:
          $ref: "#/components/schemas/Image"
          description: Optional banner image displayed on the front of the card. If none is present, hero image of the class, if present, will be displayed. If hero image of the class is also not present, nothing will be displayed.
        id:
          description: Required. The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID.identifier where the former is issued by Google and latter is chosen by you. The unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          type: string
        imageModulesData:
          description: Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level.
          items:
            $ref: "#/components/schemas/ImageModuleData"
          type: array
        infoModuleData:
          $ref: "#/components/schemas/InfoModuleData"
          description: Deprecated. Use textModulesData instead.
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#loyaltyObject"`.'
          type: string
        linkedOfferIds:
          description: A list of offer objects linked to this loyalty card. The offer objects must already exist. Offer object IDs should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you.
          items:
            type: string
          type: array
        linksModuleData:
          $ref: "#/components/schemas/LinksModuleData"
          description: Links module data. If links module data is also defined on the class, both will be displayed.
        locations:
          description: "Note: This field is currently not supported to trigger geo notifications."
          items:
            $ref: "#/components/schemas/LatLongPoint"
          type: array
        loyaltyPoints:
          $ref: "#/components/schemas/LoyaltyPoints"
          description: The loyalty reward points label, balance, and type.
        messages:
          description: An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
          items:
            $ref: "#/components/schemas/Message"
          type: array
        passConstraints:
          $ref: "#/components/schemas/PassConstraints"
          description: Pass constraints for the object. Includes limiting NFC and screenshot behaviors.
        rotatingBarcode:
          $ref: "#/components/schemas/RotatingBarcode"
          description: The rotating barcode type and value.
        secondaryLoyaltyPoints:
          $ref: "#/components/schemas/LoyaltyPoints"
          description: The secondary loyalty reward points label, balance, and type. Shown in addition to the primary loyalty points.
        smartTapRedemptionValue:
          description: The value that will be transmitted to a Smart Tap certified terminal over NFC for this object. The class level fields `enableSmartTap` and `redemptionIssuers` must also be set up correctly in order for the pass to support Smart Tap. Only ASCII characters are supported. If this value is not set but the class level fields `enableSmartTap` and `redemptionIssuers` are set up correctly, the `barcode.value` or the `accountId` fields are used as fallback if present.
          type: string
        state:
          description: Required. The state of the object. This field is used to determine how an object is displayed in the app. For example, an `inactive` object is moved to the "Expired passes" section.
          enum:
            - STATE_UNSPECIFIED
            - ACTIVE
            - active
            - COMPLETED
            - completed
            - EXPIRED
            - expired
            - INACTIVE
            - inactive
          type: string
        textModulesData:
          description: Text module data. If text module data is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from the object and 10 from the class.
          items:
            $ref: "#/components/schemas/TextModuleData"
          type: array
        validTimeInterval:
          $ref: "#/components/schemas/TimeInterval"
          description: The time period this object will be `active` and object can be used. An object's state will be changed to `expired` when this time period has passed.
        version:
          description: Deprecated
          format: int64
          type: string
      type: object
    LoyaltyObjectAddMessageResponse:
      properties:
        resource:
          $ref: "#/components/schemas/LoyaltyObject"
          description: The updated LoyaltyObject resource.
      type: object
    LoyaltyObjectListResponse:
      properties:
        pagination:
          $ref: "#/components/schemas/Pagination"
          description: Pagination of the response.
        resources:
          description: Resources corresponding to the list request.
          items:
            $ref: "#/components/schemas/LoyaltyObject"
          type: array
      type: object
    LoyaltyPoints:
      properties:
        balance:
          $ref: "#/components/schemas/LoyaltyPointsBalance"
          description: The account holder's loyalty point balance, such as "500" or "$10.00". Recommended maximum length is 7 characters. This is a required field of `loyaltyPoints` and `secondaryLoyaltyPoints`.
        label:
          description: The loyalty points label, such as "Points". Recommended maximum length is 9 characters.
          type: string
        localizedLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the label. Recommended maximum length is 9 characters.
      type: object
    LoyaltyPointsBalance:
      properties:
        double:
          description: The double form of a balance. Only one of these subtypes (string, int, double, money) should be populated.
          format: double
          type: number
        int:
          description: The integer form of a balance. Only one of these subtypes (string, int, double, money) should be populated.
          format: int32
          type: integer
        money:
          $ref: "#/components/schemas/Money"
          description: The money form of a balance. Only one of these subtypes (string, int, double, money) should be populated.
        string:
          description: The string form of a balance. Only one of these subtypes (string, int, double, money) should be populated.
          type: string
      type: object
    Media:
      description: A reference to data stored on the filesystem, on GFS or in blobstore.
      properties:
        algorithm:
          description: Deprecated, use one of explicit hash type fields instead. Algorithm used for calculating the hash. As of 2011/01/21, "MD5" is the only possible value for this field. New values may be added at any time.
          type: string
        bigstoreObjectRef:
          description: Use object_id instead.
          format: byte
          type: string
        blobRef:
          description: Blobstore v1 reference, set if reference_type is BLOBSTORE_REF This should be the byte representation of a blobstore.BlobRef. Since Blobstore is deprecating v1, use blobstore2_info instead. For now, any v2 blob will also be represented in this field as v1 BlobRef.
          format: byte
          type: string
        blobstore2Info:
          $ref: "#/components/schemas/Blobstore2Info"
          description: Blobstore v2 info, set if reference_type is BLOBSTORE_REF and it refers to a v2 blob.
        compositeMedia:
          description: "A composite media composed of one or more media objects, set if reference_type is COMPOSITE_MEDIA. The media length field must be set to the sum of the lengths of all composite media objects. Note: All composite media must have length specified."
          items:
            $ref: "#/components/schemas/CompositeMedia"
          type: array
        contentType:
          description: MIME type of the data
          type: string
        contentTypeInfo:
          $ref: "#/components/schemas/ContentTypeInfo"
          description: Extended content type information provided for Scotty uploads.
        cosmoBinaryReference:
          description: A binary data reference for a media download. Serves as a technology-agnostic binary reference in some Google infrastructure. This value is a serialized storage_cosmo.BinaryReference proto. Storing it as bytes is a hack to get around the fact that the cosmo proto (as well as others it includes) doesn't support JavaScript. This prevents us from including the actual type of this field.
          format: byte
          type: string
        crc32cHash:
          description: "For Scotty Uploads: Scotty-provided hashes for uploads For Scotty Downloads: (WARNING: DO NOT USE WITHOUT PERMISSION FROM THE SCOTTY TEAM.) A Hash provided by the agent to be used to verify the data being downloaded. Currently only supported for inline payloads. Further, only crc32c_hash is currently supported."
          format: uint32
          type: integer
        diffChecksumsResponse:
          $ref: "#/components/schemas/DiffChecksumsResponse"
          description: Set if reference_type is DIFF_CHECKSUMS_RESPONSE.
        diffDownloadResponse:
          $ref: "#/components/schemas/DiffDownloadResponse"
          description: Set if reference_type is DIFF_DOWNLOAD_RESPONSE.
        diffUploadRequest:
          $ref: "#/components/schemas/DiffUploadRequest"
          description: Set if reference_type is DIFF_UPLOAD_REQUEST.
        diffUploadResponse:
          $ref: "#/components/schemas/DiffUploadResponse"
          description: Set if reference_type is DIFF_UPLOAD_RESPONSE.
        diffVersionResponse:
          $ref: "#/components/schemas/DiffVersionResponse"
          description: Set if reference_type is DIFF_VERSION_RESPONSE.
        downloadParameters:
          $ref: "#/components/schemas/DownloadParameters"
          description: Parameters for a media download.
        filename:
          description: Original file name
          type: string
        hash:
          description: "Deprecated, use one of explicit hash type fields instead. These two hash related fields will only be populated on Scotty based media uploads and will contain the content of the hash group in the NotificationRequest: http://cs/#google3/uploader/service/proto/upload_listener.proto&q=class:Hash Hex encoded hash value of the uploaded media."
          type: string
        hashVerified:
          description: For Scotty uploads only. If a user sends a hash code and the backend has requested that Scotty verify the upload against the client hash, Scotty will perform the check on behalf of the backend and will reject it if the hashes don't match. This is set to true if Scotty performed this verification.
          type: boolean
        inline:
          description: Media data, set if reference_type is INLINE
          format: byte
          type: string
        isPotentialRetry:
          description: "|is_potential_retry| is set false only when Scotty is certain that it has not sent the request before. When a client resumes an upload, this field must be set true in agent calls, because Scotty cannot be certain that it has never sent the request before due to potential failure in the session state persistence."
          type: boolean
        length:
          description: Size of the data, in bytes
          format: int64
          type: string
        md5Hash:
          description: Scotty-provided MD5 hash for an upload.
          format: byte
          type: string
        mediaId:
          description: Media id to forward to the operation GetMedia. Can be set if reference_type is GET_MEDIA.
          format: byte
          type: string
        objectId:
          $ref: "#/components/schemas/ObjectId"
          description: Reference to a TI Blob, set if reference_type is BIGSTORE_REF.
        path:
          description: Path to the data, set if reference_type is PATH
          type: string
        referenceType:
          description: Describes what the field reference contains.
          enum:
            - PATH
            - BLOB_REF
            - INLINE
            - GET_MEDIA
            - COMPOSITE_MEDIA
            - BIGSTORE_REF
            - DIFF_VERSION_RESPONSE
            - DIFF_CHECKSUMS_RESPONSE
            - DIFF_DOWNLOAD_RESPONSE
            - DIFF_UPLOAD_REQUEST
            - DIFF_UPLOAD_RESPONSE
            - COSMO_BINARY_REFERENCE
            - ARBITRARY_BYTES
          type: string
        sha1Hash:
          description: Scotty-provided SHA1 hash for an upload.
          format: byte
          type: string
        sha256Hash:
          description: Scotty-provided SHA256 hash for an upload.
          format: byte
          type: string
        timestamp:
          description: Time at which the media data was last updated, in milliseconds since UNIX epoch
          format: uint64
          type: string
        token:
          description: A unique fingerprint/version id for the media data
          type: string
      type: object
    MediaRequestInfo:
      description: Extra information added to operations that support Scotty media requests.
      properties:
        currentBytes:
          description: The number of current bytes uploaded or downloaded.
          format: int64
          type: string
        customData:
          description: Data to be copied to backend requests. Custom data is returned to Scotty in the agent_state field, which Scotty will then provide in subsequent upload notifications.
          type: string
        diffObjectVersion:
          description: Set if the http request info is diff encoded. The value of this field is the version number of the base revision. This is corresponding to Apiary's mediaDiffObjectVersion (//depot/google3/java/com/google/api/server/media/variable/DiffObjectVersionVariable.java). See go/esf-scotty-diff-upload for more information.
          type: string
        finalStatus:
          description: The existence of the final_status field indicates that this is the last call to the agent for this request_id. http://google3/uploader/agent/scotty_agent.proto?l=737&rcl=347601929
          format: int32
          type: integer
        notificationType:
          description: The type of notification received from Scotty.
          enum:
            - START
            - PROGRESS
            - END
            - RESPONSE_SENT
            - ERROR
          type: string
        requestId:
          description: The Scotty request ID.
          type: string
        totalBytes:
          description: The total size of the file.
          format: int64
          type: string
        totalBytesIsEstimated:
          description: Whether the total bytes field contains an estimated data.
          type: boolean
      type: object
    Message:
      description: A message that will be displayed with a Valuable
      properties:
        body:
          description: The message body.
          type: string
        displayInterval:
          $ref: "#/components/schemas/TimeInterval"
          description: The period of time that the message will be displayed to users. You can define both a `startTime` and `endTime` for each message. A message is displayed immediately after a Wallet Object is inserted unless a `startTime` is set. The message will appear in a list of messages indefinitely if `endTime` is not provided.
        header:
          description: The message header.
          type: string
        id:
          description: The ID associated with a message. This field is here to enable ease of management of messages. Notice ID values could possibly duplicate across multiple messages in the same class/instance, and care must be taken to select a reasonable ID for each message.
          type: string
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#walletObjectMessage"`.'
          type: string
        localizedBody:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the message body.
        localizedHeader:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the message header.
        messageType:
          description: The type of the message. Currently, this can only be set for offers.
          enum:
            - MESSAGE_TYPE_UNSPECIFIED
            - TEXT
            - text
            - EXPIRATION_NOTIFICATION
            - expirationNotification
          type: string
      type: object
    ModifyLinkedOfferObjects:
      properties:
        addLinkedOfferObjectIds:
          description: The linked offer object ids to add to the object.
          items:
            type: string
          type: array
        removeLinkedOfferObjectIds:
          description: The linked offer object ids to remove from the object.
          items:
            type: string
          type: array
      type: object
    ModifyLinkedOfferObjectsRequest:
      properties:
        linkedOfferObjectIds:
          $ref: "#/components/schemas/ModifyLinkedOfferObjects"
          description: The linked offer object ids to add or remove from the object.
      type: object
    Money:
      properties:
        currencyCode:
          description: The currency code, such as "USD" or "EUR."
          type: string
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#money"`.'
          type: string
        micros:
          description: The unit of money amount in micros. For example, $1 USD would be represented as 1000000 micros.
          format: int64
          type: string
      type: object
    Notifications:
      description: Indicates if the object needs to have notification enabled. We support only one of ExpiryNotification/UpcomingNotification. `expiryNotification` takes precedence over `upcomingNotification`. In other words if `expiryNotification` is set, we ignore the `upcomingNotification` field.
      properties:
        expiryNotification:
          $ref: "#/components/schemas/ExpiryNotification"
          description: A notification would be triggered at a specific time before the card expires.
        upcomingNotification:
          $ref: "#/components/schemas/UpcomingNotification"
          description: A notification would be triggered at a specific time before the card becomes usable.
      type: object
    ObjectId:
      description: This is a copy of the tech.blob.ObjectId proto, which could not be used directly here due to transitive closure issues with JavaScript support; see http://b/8801763.
      properties:
        bucketName:
          description: The name of the bucket to which this object belongs.
          type: string
        generation:
          description: Generation of the object. Generations are monotonically increasing across writes, allowing them to be be compared to determine which generation is newer. If this is omitted in a request, then you are requesting the live object. See http://go/bigstore-versions
          format: int64
          type: string
        objectName:
          description: The name of the object.
          type: string
      type: object
    OfferClass:
      properties:
        allowMultipleUsersPerObject:
          description: Deprecated. Use `multipleDevicesAndHoldersAllowedStatus` instead.
          type: boolean
        callbackOptions:
          $ref: "#/components/schemas/CallbackOptions"
          description: Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
        classTemplateInfo:
          $ref: "#/components/schemas/ClassTemplateInfo"
          description: Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
        countryCode:
          description: Country code used to display the card's country (when the user is not in that country), as well as to display localized content when content is not available in the user's locale.
          type: string
        details:
          description: The details of the offer.
          type: string
        enableSmartTap:
          description: Identifies whether this class supports Smart Tap. The `redemptionIssuers` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
          type: boolean
        finePrint:
          description: The fine print or terms of the offer, such as "20% off any t-shirt at Adam's Apparel."
          type: string
        helpUri:
          $ref: "#/components/schemas/Uri"
          description: The help link for the offer, such as `http://myownpersonaldomain.com/help`
        heroImage:
          $ref: "#/components/schemas/Image"
          description: Optional banner image displayed on the front of the card. If none is present, nothing will be displayed. The image will display at 100% width.
        hexBackgroundColor:
          description: "The background color for the card. If not set the dominant color of the hero image is used, and if no hero image is set, the dominant color of the logo is used. The format is #rrggbb where rrggbb is a hex RGB triplet, such as `#ffcc00`. You can also use the shorthand version of the RGB triplet which is #rgb, such as `#fc0`."
          type: string
        homepageUri:
          $ref: "#/components/schemas/Uri"
          description: The URI of your application's home page. Populating the URI in this field results in the exact same behavior as populating an URI in linksModuleData (when an object is rendered, a link to the homepage is shown in what would usually be thought of as the linksModuleData section of the object).
        id:
          description: Required. The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          type: string
        imageModulesData:
          description: Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level.
          items:
            $ref: "#/components/schemas/ImageModuleData"
          type: array
        infoModuleData:
          $ref: "#/components/schemas/InfoModuleData"
          description: Deprecated. Use textModulesData instead.
        issuerName:
          description: Required. The issuer name. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.
          type: string
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#offerClass"`.'
          type: string
        linksModuleData:
          $ref: "#/components/schemas/LinksModuleData"
          description: Links module data. If links module data is also defined on the object, both will be displayed.
        localizedDetails:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the details.
        localizedFinePrint:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the fine_print.
        localizedIssuerName:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the issuer_name. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.
        localizedProvider:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the provider. Recommended maximum length is 12 characters to ensure full string is displayed on smaller screens.
        localizedShortTitle:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the short title. Recommended maximum length is 20 characters.
        localizedTitle:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the title. Recommended maximum length is 60 characters to ensure full string is displayed on smaller screens.
        locations:
          description: "Note: This field is currently not supported to trigger geo notifications."
          items:
            $ref: "#/components/schemas/LatLongPoint"
          type: array
        messages:
          description: An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
          items:
            $ref: "#/components/schemas/Message"
          type: array
        multipleDevicesAndHoldersAllowedStatus:
          description: Identifies whether multiple users and devices will save the same object referencing this class.
          enum:
            - STATUS_UNSPECIFIED
            - MULTIPLE_HOLDERS
            - multipleHolders
            - ONE_USER_ALL_DEVICES
            - oneUserAllDevices
            - ONE_USER_ONE_DEVICE
            - oneUserOneDevice
          type: string
        provider:
          description: Required. The offer provider (either the aggregator name or merchant name). Recommended maximum length is 12 characters to ensure full string is displayed on smaller screens.
          type: string
        redemptionChannel:
          description: Required. The redemption channels applicable to this offer.
          enum:
            - REDEMPTION_CHANNEL_UNSPECIFIED
            - INSTORE
            - instore
            - ONLINE
            - online
            - BOTH
            - both
            - TEMPORARY_PRICE_REDUCTION
            - temporaryPriceReduction
          type: string
        redemptionIssuers:
          description: Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
          items:
            format: int64
            type: string
          type: array
        review:
          $ref: "#/components/schemas/Review"
          description: The review comments set by the platform when a class is marked `approved` or `rejected`.
        reviewStatus:
          description: Required. The status of the class. This field can be set to `draft` or The status of the class. This field can be set to `draft` or `underReview` using the insert, patch, or update API calls. Once the review state is changed from `draft` it may not be changed back to `draft`. You should keep this field to `draft` when the class is under development. A `draft` class cannot be used to create any object. You should set this field to `underReview` when you believe the class is ready for use. The platform will automatically set this field to `approved` and it can be immediately used to create or migrate objects. When updating an already `approved` class you should keep setting this field to `underReview`.
          enum:
            - REVIEW_STATUS_UNSPECIFIED
            - UNDER_REVIEW
            - underReview
            - APPROVED
            - approved
            - REJECTED
            - rejected
            - DRAFT
            - draft
          type: string
        securityAnimation:
          $ref: "#/components/schemas/SecurityAnimation"
          description: Optional information about the security animation. If this is set a security animation will be rendered on pass details.
        shortTitle:
          description: A shortened version of the title of the offer, such as "20% off," shown to users as a quick reference to the offer contents. Recommended maximum length is 20 characters.
          type: string
        textModulesData:
          description: Text module data. If text module data is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from the object and 10 from the class.
          items:
            $ref: "#/components/schemas/TextModuleData"
          type: array
        title:
          description: Required. The title of the offer, such as "20% off any t-shirt." Recommended maximum length is 60 characters to ensure full string is displayed on smaller screens.
          type: string
        titleImage:
          $ref: "#/components/schemas/Image"
          description: The title image of the offer. This image is displayed in both the details and list views of the app.
        version:
          description: Deprecated
          format: int64
          type: string
        viewUnlockRequirement:
          description: View Unlock Requirement options for the offer.
          enum:
            - VIEW_UNLOCK_REQUIREMENT_UNSPECIFIED
            - UNLOCK_NOT_REQUIRED
            - UNLOCK_REQUIRED_TO_VIEW
          type: string
        wordMark:
          $ref: "#/components/schemas/Image"
          description: Deprecated.
      type: object
    OfferClassAddMessageResponse:
      properties:
        resource:
          $ref: "#/components/schemas/OfferClass"
          description: The updated OfferClass resource.
      type: object
    OfferClassListResponse:
      properties:
        pagination:
          $ref: "#/components/schemas/Pagination"
          description: Pagination of the response.
        resources:
          description: Resources corresponding to the list request.
          items:
            $ref: "#/components/schemas/OfferClass"
          type: array
      type: object
    OfferObject:
      properties:
        appLinkData:
          $ref: "#/components/schemas/AppLinkData"
          description: Optional information about the partner app link.
        barcode:
          $ref: "#/components/schemas/Barcode"
          description: The barcode type and value.
        classId:
          description: Required. The class associated with this object. The class must be of the same type as this object, must already exist, and must be approved. Class IDs should follow the format issuer ID.identifier where the former is issued by Google and latter is chosen by you.
          type: string
        classReference:
          $ref: "#/components/schemas/OfferClass"
          description: A copy of the inherited fields of the parent class. These fields are retrieved during a GET.
        disableExpirationNotification:
          description: Indicates if notifications should explicitly be suppressed. If this field is set to true, regardless of the `messages` field, expiration notifications to the user will be suppressed. By default, this field is set to false. Currently, this can only be set for offers.
          type: boolean
        groupingInfo:
          $ref: "#/components/schemas/GroupingInfo"
          description: Information that controls how passes are grouped together.
        hasLinkedDevice:
          description: Whether this object is currently linked to a single device. This field is set by the platform when a user saves the object, linking it to their device. Intended for use by select partners. Contact support for additional information.
          type: boolean
        hasUsers:
          description: Indicates if the object has users. This field is set by the platform.
          type: boolean
        heroImage:
          $ref: "#/components/schemas/Image"
          description: Optional banner image displayed on the front of the card. If none is present, hero image of the class, if present, will be displayed. If hero image of the class is also not present, nothing will be displayed.
        id:
          description: Required. The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID.identifier where the former is issued by Google and latter is chosen by you. The unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          type: string
        imageModulesData:
          description: Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level.
          items:
            $ref: "#/components/schemas/ImageModuleData"
          type: array
        infoModuleData:
          $ref: "#/components/schemas/InfoModuleData"
          description: Deprecated. Use textModulesData instead.
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#offerObject"`.'
          type: string
        linksModuleData:
          $ref: "#/components/schemas/LinksModuleData"
          description: Links module data. If links module data is also defined on the class, both will be displayed.
        locations:
          description: "Note: This field is currently not supported to trigger geo notifications."
          items:
            $ref: "#/components/schemas/LatLongPoint"
          type: array
        messages:
          description: An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
          items:
            $ref: "#/components/schemas/Message"
          type: array
        passConstraints:
          $ref: "#/components/schemas/PassConstraints"
          description: Pass constraints for the object. Includes limiting NFC and screenshot behaviors.
        rotatingBarcode:
          $ref: "#/components/schemas/RotatingBarcode"
          description: The rotating barcode type and value.
        smartTapRedemptionValue:
          description: The value that will be transmitted to a Smart Tap certified terminal over NFC for this object. The class level fields `enableSmartTap` and `redemptionIssuers` must also be set up correctly in order for the pass to support Smart Tap. Only ASCII characters are supported.
          type: string
        state:
          description: Required. The state of the object. This field is used to determine how an object is displayed in the app. For example, an `inactive` object is moved to the "Expired passes" section.
          enum:
            - STATE_UNSPECIFIED
            - ACTIVE
            - active
            - COMPLETED
            - completed
            - EXPIRED
            - expired
            - INACTIVE
            - inactive
          type: string
        textModulesData:
          description: Text module data. If text module data is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from the object and 10 from the class.
          items:
            $ref: "#/components/schemas/TextModuleData"
          type: array
        validTimeInterval:
          $ref: "#/components/schemas/TimeInterval"
          description: The time period this object will be `active` and object can be used. An object's state will be changed to `expired` when this time period has passed.
        version:
          description: Deprecated
          format: int64
          type: string
      type: object
    OfferObjectAddMessageResponse:
      properties:
        resource:
          $ref: "#/components/schemas/OfferObject"
          description: The updated OfferObject resource.
      type: object
    OfferObjectListResponse:
      properties:
        pagination:
          $ref: "#/components/schemas/Pagination"
          description: Pagination of the response.
        resources:
          description: Resources corresponding to the list request.
          items:
            $ref: "#/components/schemas/OfferObject"
          type: array
      type: object
    Pagination:
      properties:
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#pagination"`.'
          type: string
        nextPageToken:
          description: Page token to send to fetch the next page.
          type: string
        resultsPerPage:
          description: Number of results returned in this page.
          format: int32
          type: integer
      type: object
    PassConstraints:
      description: Container for any constraints that may be placed on passes.
      properties:
        nfcConstraint:
          description: The NFC constraints for the pass.
          items:
            enum:
              - NFC_CONSTRAINT_UNSPECIFIED
              - BLOCK_PAYMENT
              - BLOCK_CLOSED_LOOP_TRANSIT
            type: string
          type: array
        screenshotEligibility:
          description: The screenshot eligibility for the pass.
          enum:
            - SCREENSHOT_ELIGIBILITY_UNSPECIFIED
            - ELIGIBLE
            - INELIGIBLE
          type: string
      type: object
    Permission:
      properties:
        emailAddress:
          description: The email address of the user, group, or service account to which this permission refers to.
          type: string
        role:
          description: The role granted by this permission.
          enum:
            - ROLE_UNSPECIFIED
            - OWNER
            - owner
            - READER
            - reader
            - WRITER
            - writer
          type: string
      type: object
    Permissions:
      properties:
        issuerId:
          description: ID of the issuer the list of permissions refer to.
          format: int64
          type: string
        permissions:
          description: The complete list of permissions for the issuer account.
          items:
            $ref: "#/components/schemas/Permission"
          type: array
      type: object
    PrivateText:
      description: Private data for TextModule. This data will be rendered as a TextModule for a pass.
      properties:
        body:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the body.
        header:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the header.
      type: object
    PrivateUri:
      description: Private data for LinkModule. This data will be rendered as the LinkModule for a pass.
      properties:
        description:
          $ref: "#/components/schemas/LocalizedString"
          description: The URI's title appearing in the app as text and its translated strings. Recommended maximum is 20 characters to ensure the full string is displayed on smaller screens.
        uri:
          description: The location of a web page, image, or other resource. URIs in the `LinksModuleData` can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address).
          type: string
      type: object
    PurchaseDetails:
      properties:
        accountId:
          description: ID of the account used to purchase the ticket.
          type: string
        confirmationCode:
          description: The confirmation code for the purchase. This may be the same for multiple different tickets and is used to group tickets together.
          type: string
        purchaseDateTime:
          description: "The purchase date/time of the ticket. This is an ISO 8601 extended format date/time, with or without an offset. Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the event were in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. Without offset information, some rich features may not be available."
          type: string
        purchaseReceiptNumber:
          description: Receipt number/identifier for tracking the ticket purchase via the body that sold the ticket.
          type: string
        ticketCost:
          $ref: "#/components/schemas/TicketCost"
          description: The cost of the ticket.
      type: object
    ReservationInfo:
      properties:
        confirmationCode:
          description: Confirmation code needed to check into this flight. This is the number that the passenger would enter into a kiosk at the airport to look up the flight and print a boarding pass.
          type: string
        eticketNumber:
          description: E-ticket number.
          type: string
        frequentFlyerInfo:
          $ref: "#/components/schemas/FrequentFlyerInfo"
          description: Frequent flyer membership information.
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#reservationInfo"`.'
          type: string
      type: object
    Resources:
      properties:
        eventTicketClasses:
          items:
            $ref: "#/components/schemas/EventTicketClass"
          type: array
        eventTicketObjects:
          items:
            $ref: "#/components/schemas/EventTicketObject"
          type: array
        flightClasses:
          items:
            $ref: "#/components/schemas/FlightClass"
          type: array
        flightObjects:
          items:
            $ref: "#/components/schemas/FlightObject"
          type: array
        giftCardClasses:
          items:
            $ref: "#/components/schemas/GiftCardClass"
          type: array
        giftCardObjects:
          items:
            $ref: "#/components/schemas/GiftCardObject"
          type: array
        loyaltyClasses:
          items:
            $ref: "#/components/schemas/LoyaltyClass"
          type: array
        loyaltyObjects:
          items:
            $ref: "#/components/schemas/LoyaltyObject"
          type: array
        offerClasses:
          items:
            $ref: "#/components/schemas/OfferClass"
          type: array
        offerObjects:
          items:
            $ref: "#/components/schemas/OfferObject"
          type: array
        transitClasses:
          items:
            $ref: "#/components/schemas/TransitClass"
          type: array
        transitObjects:
          items:
            $ref: "#/components/schemas/TransitObject"
          type: array
      type: object
    Review:
      properties:
        comments:
          type: string
      type: object
    RotatingBarcode:
      properties:
        alternateText:
          description: An optional text that will override the default text that shows under the barcode. This field is intended for a human readable equivalent of the barcode value, used when the barcode cannot be scanned.
          type: string
        renderEncoding:
          description: The render encoding for the barcode. When specified, barcode is rendered in the given encoding. Otherwise best known encoding is chosen by Google.
          enum:
            - RENDER_ENCODING_UNSPECIFIED
            - UTF_8
          type: string
        showCodeText:
          $ref: "#/components/schemas/LocalizedString"
          description: Optional text that will be shown when the barcode is hidden behind a click action. This happens in cases where a pass has Smart Tap enabled. If not specified, a default is chosen by Google.
        totpDetails:
          $ref: "#/components/schemas/RotatingBarcodeTotpDetails"
          description: Details used to evaluate the {totp_value_n} substitutions.
        type:
          description: The type of this barcode.
          enum:
            - BARCODE_TYPE_UNSPECIFIED
            - AZTEC
            - aztec
            - CODE_39
            - code39
            - CODE_128
            - code128
            - CODABAR
            - codabar
            - DATA_MATRIX
            - dataMatrix
            - EAN_8
            - ean8
            - EAN_13
            - ean13
            - EAN13
            - ITF_14
            - itf14
            - PDF_417
            - pdf417
            - PDF417
            - QR_CODE
            - qrCode
            - qrcode
            - UPC_A
            - upcA
            - TEXT_ONLY
            - textOnly
          type: string
        valuePattern:
          description: "String encoded barcode value. This string supports the following substitutions: * {totp_value_n}: Replaced with the TOTP value (see TotpDetails.parameters). * {totp_timestamp_millis}: Replaced with the timestamp (millis since epoch) at which the barcode was generated. * {totp_timestamp_seconds}: Replaced with the timestamp (seconds since epoch) at which the barcode was generated."
          type: string
      type: object
    RotatingBarcodeTotpDetails:
      description: Configuration for the time-based OTP substitutions. See https://tools.ietf.org/html/rfc6238
      properties:
        algorithm:
          description: The TOTP algorithm used to generate the OTP.
          enum:
            - TOTP_ALGORITHM_UNSPECIFIED
            - TOTP_SHA1
          type: string
        parameters:
          description: The TOTP parameters for each of the {totp_value_*} substitutions. The TotpParameters at index n is used for the {totp_value_n} substitution.
          items:
            $ref: "#/components/schemas/RotatingBarcodeTotpDetailsTotpParameters"
          type: array
        periodMillis:
          description: The time interval used for the TOTP value generation, in milliseconds.
          format: int64
          type: string
      type: object
    RotatingBarcodeTotpDetailsTotpParameters:
      description: Configuration for the key and value length. See https://www.rfc-editor.org/rfc/rfc4226#section-5.3
      properties:
        key:
          description: The secret key used for the TOTP value generation, encoded as a Base16 string.
          type: string
        valueLength:
          description: The length of the TOTP value in decimal digits.
          format: int32
          type: integer
      type: object
    SecurityAnimation:
      properties:
        animationType:
          description: Type of animation.
          enum:
            - ANIMATION_UNSPECIFIED
            - FOIL_SHIMMER
            - foilShimmer
          type: string
      type: object
    SignUpInfo:
      properties:
        classId:
          description: ID of the class the user can sign up for.
          type: string
      type: object
    SmartTap:
      properties:
        id:
          description: The unique identifier for a smart tap. This value should follow the format issuer ID.identifier where the former is issued by Google and latter is the Smart Tap id. The Smart Tap id is a Base64 encoded string which represents the id which was generated by the Google Pay app.
          type: string
        infos:
          description: Communication from merchant to user.
          items:
            $ref: "#/components/schemas/IssuerToUserInfo"
          type: array
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#smartTap"`.'
          type: string
        merchantId:
          description: Smart Tap merchant ID of who engaged in the Smart Tap interaction.
          format: int64
          type: string
      type: object
    SmartTapMerchantData:
      properties:
        authenticationKeys:
          description: Available only to Smart Tap enabled partners. Contact support for additional guidance.
          items:
            $ref: "#/components/schemas/AuthenticationKey"
          type: array
        smartTapMerchantId:
          description: Available only to Smart Tap enabled partners. Contact support for additional guidance.
          format: int64
          type: string
      type: object
    TemplateItem:
      properties:
        firstValue:
          $ref: "#/components/schemas/FieldSelector"
          description: A reference to a field to display. If both `firstValue` and `secondValue` are populated, they will both appear as one item with a slash between them. For example, values A and B would be shown as "A / B".
        predefinedItem:
          description: A predefined item to display. Only one of `firstValue` or `predefinedItem` may be set.
          enum:
            - PREDEFINED_ITEM_UNSPECIFIED
            - FREQUENT_FLYER_PROGRAM_NAME_AND_NUMBER
            - frequentFlyerProgramNameAndNumber
            - FLIGHT_NUMBER_AND_OPERATING_FLIGHT_NUMBER
            - flightNumberAndOperatingFlightNumber
          type: string
        secondValue:
          $ref: "#/components/schemas/FieldSelector"
          description: A reference to a field to display. This may only be populated if the `firstValue` field is populated.
      type: object
    TextModuleData:
      description: Data for Text module. All fields are optional. Header will be displayed if available, different types of bodies will be concatenated if they are defined.
      properties:
        body:
          description: The body of the Text Module, which is defined as an uninterrupted string. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
          type: string
        header:
          description: The header of the Text Module. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
          type: string
        id:
          description: The ID associated with a text module. This field is here to enable ease of management of text modules.
          type: string
        localizedBody:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the body. Recommended maximum length is 500 characters to ensure full string is displayed on smaller screens.
        localizedHeader:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the header. Recommended maximum length is 35 characters to ensure full string is displayed on smaller screens.
      type: object
    TicketCost:
      properties:
        discountMessage:
          $ref: "#/components/schemas/LocalizedString"
          description: A message describing any kind of discount that was applied.
        faceValue:
          $ref: "#/components/schemas/Money"
          description: The face value of the ticket.
        purchasePrice:
          $ref: "#/components/schemas/Money"
          description: The actual purchase price of the ticket, after tax and/or discounts.
      type: object
    TicketLeg:
      properties:
        arrivalDateTime:
          description: 'The date/time of arrival. This is an ISO 8601 extended format date/time, with or without an offset. Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the event were in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. The portion of the date/time without the offset is considered the "local date/time". This should be the local date/time at the destination station. For example, if the event occurs at the 20th hour of June 5th, 2018 at the destination station, the local date/time portion should be `2018-06-05T20:00:00`. If the local date/time at the destination station is 4 hours before UTC, an offset of `-04:00` may be appended. Without offset information, some rich features may not be available.'
          type: string
        carriage:
          description: The train or ship name/number that the passsenger needs to board.
          type: string
        departureDateTime:
          description: 'The date/time of departure. This is required if there is no validity time interval set on the transit object. This is an ISO 8601 extended format date/time, with or without an offset. Time may be specified up to nanosecond precision. Offsets may be specified with seconds precision (even though offset seconds is not part of ISO 8601). For example: `1985-04-12T23:20:50.52Z` would be 20 minutes and 50.52 seconds after the 23rd hour of April 12th, 1985 in UTC. `1985-04-12T19:20:50.52-04:00` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985, 4 hours before UTC (same instant in time as the above example). If the event were in New York, this would be the equivalent of Eastern Daylight Time (EDT). Remember that offset varies in regions that observe Daylight Saving Time (or Summer Time), depending on the time of the year. `1985-04-12T19:20:50.52` would be 20 minutes and 50.52 seconds after the 19th hour of April 12th, 1985 with no offset information. The portion of the date/time without the offset is considered the "local date/time". This should be the local date/time at the origin station. For example, if the departure occurs at the 20th hour of June 5th, 2018 at the origin station, the local date/time portion should be `2018-06-05T20:00:00`. If the local date/time at the origin station is 4 hours before UTC, an offset of `-04:00` may be appended. Without offset information, some rich features may not be available.'
          type: string
        destinationName:
          $ref: "#/components/schemas/LocalizedString"
          description: The destination name.
        destinationStationCode:
          description: The destination station code.
          type: string
        fareName:
          $ref: "#/components/schemas/LocalizedString"
          description: Short description/name of the fare for this leg of travel. Eg "Anytime Single Use".
        originName:
          $ref: "#/components/schemas/LocalizedString"
          description: The name of the origin station. This is required if `desinationName` is present or if `originStationCode` is not present.
        originStationCode:
          description: The origin station code. This is required if `destinationStationCode` is present or if `originName` is not present.
          type: string
        platform:
          description: The platform or gate where the passenger can board the carriage.
          type: string
        ticketSeat:
          $ref: "#/components/schemas/TicketSeat"
          description: The reserved seat for the passenger(s). If more than one seat is to be specified then use the `ticketSeats` field instead. Both `ticketSeat` and `ticketSeats` may not be set.
        ticketSeats:
          description: The reserved seat for the passenger(s). If only one seat is to be specified then use the `ticketSeat` field instead. Both `ticketSeat` and `ticketSeats` may not be set.
          items:
            $ref: "#/components/schemas/TicketSeat"
          type: array
        transitOperatorName:
          $ref: "#/components/schemas/LocalizedString"
          description: The name of the transit operator that is operating this leg of a trip.
        transitTerminusName:
          $ref: "#/components/schemas/LocalizedString"
          description: Terminus station or destination of the train/bus/etc.
        zone:
          description: The zone of boarding within the platform.
          type: string
      type: object
    TicketRestrictions:
      properties:
        otherRestrictions:
          $ref: "#/components/schemas/LocalizedString"
          description: Extra restrictions that don't fall under the "route" or "time" categories.
        routeRestrictions:
          $ref: "#/components/schemas/LocalizedString"
          description: Restrictions about routes that may be taken. For example, this may be the string "Reserved CrossCountry trains only".
        routeRestrictionsDetails:
          $ref: "#/components/schemas/LocalizedString"
          description: More details about the above `routeRestrictions`.
        timeRestrictions:
          $ref: "#/components/schemas/LocalizedString"
          description: Restrictions about times this ticket may be used.
      type: object
    TicketSeat:
      properties:
        coach:
          description: The identifier of the train car or coach in which the ticketed seat is located. Eg. "10"
          type: string
        customFareClass:
          $ref: "#/components/schemas/LocalizedString"
          description: A custome fare class to be used if no `fareClass` applies. Both `fareClass` and `customFareClass` may not be set.
        fareClass:
          description: The fare class of the ticketed seat.
          enum:
            - FARE_CLASS_UNSPECIFIED
            - ECONOMY
            - economy
            - FIRST
            - first
            - BUSINESS
            - business
          type: string
        seat:
          description: The identifier of where the ticketed seat is located. Eg. "42". If there is no specific identifier, use `seatAssigment` instead.
          type: string
        seatAssignment:
          $ref: "#/components/schemas/LocalizedString"
          description: The passenger's seat assignment. Eg. "no specific seat". To be used when there is no specific identifier to use in `seat`.
      type: object
    TimeInterval:
      properties:
        end:
          $ref: "#/components/schemas/DateTime"
          description: End time of the interval. Offset is not required. If an offset is provided and `start` time is set, `start` must also include an offset.
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#timeInterval"`.'
          type: string
        start:
          $ref: "#/components/schemas/DateTime"
          description: Start time of the interval. Offset is not required. If an offset is provided and `end` time is set, `end` must also include an offset.
      type: object
    TransitClass:
      properties:
        activationOptions:
          $ref: "#/components/schemas/ActivationOptions"
          description: Activation options for an activatable ticket.
        allowMultipleUsersPerObject:
          description: Deprecated. Use `multipleDevicesAndHoldersAllowedStatus` instead.
          type: boolean
        callbackOptions:
          $ref: "#/components/schemas/CallbackOptions"
          description: Callback options to be used to call the issuer back for every save/delete of an object for this class by the end-user. All objects of this class are eligible for the callback.
        classTemplateInfo:
          $ref: "#/components/schemas/ClassTemplateInfo"
          description: Template information about how the class should be displayed. If unset, Google will fallback to a default set of fields to display.
        countryCode:
          description: Country code used to display the card's country (when the user is not in that country), as well as to display localized content when content is not available in the user's locale.
          type: string
        customCarriageLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the carriage value (`transitObject.ticketLeg.carriage`).
        customCoachLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the coach value (`transitObject.ticketLeg.ticketSeat.coach`).
        customConcessionCategoryLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the transit concession category value (`transitObject.concessionCategory`).
        customConfirmationCodeLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the confirmation code value (`transitObject.purchaseDetails.confirmationCode`).
        customDiscountMessageLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the transit discount message value (`transitObject.purchaseDetails.ticketCost.discountMessage`).
        customFareClassLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the fare class value (`transitObject.ticketLeg.ticketSeat.fareClass`).
        customFareNameLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the transit fare name value (`transitObject.ticketLeg.fareName`).
        customOtherRestrictionsLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the other restrictions value (`transitObject.ticketRestrictions.otherRestrictions`).
        customPlatformLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the boarding platform value (`transitObject.ticketLeg.platform`).
        customPurchaseFaceValueLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the purchase face value (`transitObject.purchaseDetails.ticketCost.faceValue`).
        customPurchasePriceLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the purchase price value (`transitObject.purchaseDetails.ticketCost.purchasePrice`).
        customPurchaseReceiptNumberLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the purchase receipt number value (`transitObject.purchaseDetails.purchaseReceiptNumber`).
        customRouteRestrictionsDetailsLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the route restrictions details value (`transitObject.ticketRestrictions.routeRestrictionsDetails`).
        customRouteRestrictionsLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the route restrictions value (`transitObject.ticketRestrictions.routeRestrictions`).
        customSeatLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the seat location value (`transitObject.ticketLeg.ticketSeat.seat`).
        customTicketNumberLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the ticket number value (`transitObject.ticketNumber`).
        customTimeRestrictionsLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the time restrictions details value (`transitObject.ticketRestrictions.timeRestrictions`).
        customTransitTerminusNameLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the transit terminus name value (`transitObject.ticketLeg.transitTerminusName`).
        customZoneLabel:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom label to use for the boarding zone value (`transitObject.ticketLeg.zone`).
        enableSingleLegItinerary:
          description: Controls the display of the single-leg itinerary for this class. By default, an itinerary will only display for multi-leg trips.
          type: boolean
        enableSmartTap:
          description: Identifies whether this class supports Smart Tap. The `redemptionIssuers` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
          type: boolean
        heroImage:
          $ref: "#/components/schemas/Image"
          description: Optional banner image displayed on the front of the card. If none is present, nothing will be displayed. The image will display at 100% width.
        hexBackgroundColor:
          description: "The background color for the card. If not set the dominant color of the hero image is used, and if no hero image is set, the dominant color of the logo is used. The format is #rrggbb where rrggbb is a hex RGB triplet, such as `#ffcc00`. You can also use the shorthand version of the RGB triplet which is #rgb, such as `#fc0`."
          type: string
        homepageUri:
          $ref: "#/components/schemas/Uri"
          description: The URI of your application's home page. Populating the URI in this field results in the exact same behavior as populating an URI in linksModuleData (when an object is rendered, a link to the homepage is shown in what would usually be thought of as the linksModuleData section of the object).
        id:
          description: Required. The unique identifier for a class. This ID must be unique across all classes from an issuer. This value should follow the format issuer ID. identifier where the former is issued by Google and latter is chosen by you. Your unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          type: string
        imageModulesData:
          description: Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level.
          items:
            $ref: "#/components/schemas/ImageModuleData"
          type: array
        infoModuleData:
          $ref: "#/components/schemas/InfoModuleData"
          description: Deprecated. Use textModulesData instead.
        issuerName:
          description: Required. The issuer name. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.
          type: string
        languageOverride:
          description: If this field is present, transit tickets served to a user's device will always be in this language. Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          type: string
        linksModuleData:
          $ref: "#/components/schemas/LinksModuleData"
          description: Links module data. If links module data is also defined on the object, both will be displayed.
        localizedIssuerName:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the issuer_name. Recommended maximum length is 20 characters to ensure full string is displayed on smaller screens.
        locations:
          description: "Note: This field is currently not supported to trigger geo notifications."
          items:
            $ref: "#/components/schemas/LatLongPoint"
          type: array
        logo:
          $ref: "#/components/schemas/Image"
          description: Required. The logo image of the ticket. This image is displayed in the card detail view of the app.
        messages:
          description: An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
          items:
            $ref: "#/components/schemas/Message"
          type: array
        multipleDevicesAndHoldersAllowedStatus:
          description: Identifies whether multiple users and devices will save the same object referencing this class.
          enum:
            - STATUS_UNSPECIFIED
            - MULTIPLE_HOLDERS
            - multipleHolders
            - ONE_USER_ALL_DEVICES
            - oneUserAllDevices
            - ONE_USER_ONE_DEVICE
            - oneUserOneDevice
          type: string
        redemptionIssuers:
          description: Identifies which redemption issuers can redeem the pass over Smart Tap. Redemption issuers are identified by their issuer ID. Redemption issuers must have at least one Smart Tap key configured. The `enableSmartTap` and object level `smartTapRedemptionLevel` fields must also be set up correctly in order for a pass to support Smart Tap.
          items:
            format: int64
            type: string
          type: array
        review:
          $ref: "#/components/schemas/Review"
          description: The review comments set by the platform when a class is marked `approved` or `rejected`.
        reviewStatus:
          description: Required. The status of the class. This field can be set to `draft` or `underReview` using the insert, patch, or update API calls. Once the review state is changed from `draft` it may not be changed back to `draft`. You should keep this field to `draft` when the class is under development. A `draft` class cannot be used to create any object. You should set this field to `underReview` when you believe the class is ready for use. The platform will automatically set this field to `approved` and it can be immediately used to create or migrate objects. When updating an already `approved` class you should keep setting this field to `underReview`.
          enum:
            - REVIEW_STATUS_UNSPECIFIED
            - UNDER_REVIEW
            - underReview
            - APPROVED
            - approved
            - REJECTED
            - rejected
            - DRAFT
            - draft
          type: string
        securityAnimation:
          $ref: "#/components/schemas/SecurityAnimation"
          description: Optional information about the security animation. If this is set a security animation will be rendered on pass details.
        textModulesData:
          description: Text module data. If text module data is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from the object and 10 from the class.
          items:
            $ref: "#/components/schemas/TextModuleData"
          type: array
        transitOperatorName:
          $ref: "#/components/schemas/LocalizedString"
          description: The name of the transit operator.
        transitType:
          description: Required. The type of transit this class represents, such as "bus".
          enum:
            - TRANSIT_TYPE_UNSPECIFIED
            - BUS
            - bus
            - RAIL
            - rail
            - TRAM
            - tram
            - FERRY
            - ferry
            - OTHER
            - other
          type: string
        version:
          description: Deprecated
          format: int64
          type: string
        viewUnlockRequirement:
          description: View Unlock Requirement options for the transit ticket.
          enum:
            - VIEW_UNLOCK_REQUIREMENT_UNSPECIFIED
            - UNLOCK_NOT_REQUIRED
            - UNLOCK_REQUIRED_TO_VIEW
          type: string
        watermark:
          $ref: "#/components/schemas/Image"
          description: Watermark image to display on the user's device.
        wordMark:
          $ref: "#/components/schemas/Image"
          description: Deprecated.
      type: object
    TransitClassAddMessageResponse:
      properties:
        resource:
          $ref: "#/components/schemas/TransitClass"
          description: The updated TransitClass resource.
      type: object
    TransitClassListResponse:
      properties:
        pagination:
          $ref: "#/components/schemas/Pagination"
          description: Pagination of the response.
        resources:
          description: Resources corresponding to the list request.
          items:
            $ref: "#/components/schemas/TransitClass"
          type: array
      type: object
    TransitObject:
      properties:
        activationStatus:
          $ref: "#/components/schemas/ActivationStatus"
          description: The activation status for the object. Required if the class has `activationOptions` set.
        appLinkData:
          $ref: "#/components/schemas/AppLinkData"
          description: Optional information about the partner app link.
        barcode:
          $ref: "#/components/schemas/Barcode"
          description: The barcode type and value.
        classId:
          description: Required. The class associated with this object. The class must be of the same type as this object, must already exist, and must be approved. Class IDs should follow the format issuer ID.identifier where the former is issued by Google and latter is chosen by you.
          type: string
        classReference:
          $ref: "#/components/schemas/TransitClass"
          description: A copy of the inherited fields of the parent class. These fields are retrieved during a GET.
        concessionCategory:
          description: The concession category for the ticket.
          enum:
            - CONCESSION_CATEGORY_UNSPECIFIED
            - ADULT
            - adult
            - CHILD
            - child
            - SENIOR
            - senior
          type: string
        customConcessionCategory:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom concession category to use when `concessionCategory` does not provide the right option. Both `concessionCategory` and `customConcessionCategory` may not be set.
        customTicketStatus:
          $ref: "#/components/schemas/LocalizedString"
          description: A custom status to use for the ticket status value when `ticketStatus` does not provide the right option. Both `ticketStatus` and `customTicketStatus` may not be set.
        deviceContext:
          $ref: "#/components/schemas/DeviceContext"
          description: Device context associated with the object.
        disableExpirationNotification:
          description: Indicates if notifications should explicitly be suppressed. If this field is set to true, regardless of the `messages` field, expiration notifications to the user will be suppressed. By default, this field is set to false. Currently, this can only be set for offers.
          type: boolean
        groupingInfo:
          $ref: "#/components/schemas/GroupingInfo"
          description: Information that controls how passes are grouped together.
        hasLinkedDevice:
          description: Whether this object is currently linked to a single device. This field is set by the platform when a user saves the object, linking it to their device. Intended for use by select partners. Contact support for additional information.
          type: boolean
        hasUsers:
          description: Indicates if the object has users. This field is set by the platform.
          type: boolean
        heroImage:
          $ref: "#/components/schemas/Image"
          description: Optional banner image displayed on the front of the card. If none is present, hero image of the class, if present, will be displayed. If hero image of the class is also not present, nothing will be displayed.
        hexBackgroundColor:
          description: "The background color for the card. If not set the dominant color of the hero image is used, and if no hero image is set, the dominant color of the logo is used. The format is #rrggbb where rrggbb is a hex RGB triplet, such as `#ffcc00`. You can also use the shorthand version of the RGB triplet which is #rgb, such as `#fc0`."
          type: string
        id:
          description: Required. The unique identifier for an object. This ID must be unique across all objects from an issuer. This value should follow the format issuer ID.identifier where the former is issued by Google and latter is chosen by you. The unique identifier should only include alphanumeric characters, '.', '_', or '-'.
          type: string
        imageModulesData:
          description: Image module data. The maximum number of these fields displayed is 1 from object level and 1 for class object level.
          items:
            $ref: "#/components/schemas/ImageModuleData"
          type: array
        infoModuleData:
          $ref: "#/components/schemas/InfoModuleData"
          description: Deprecated. Use textModulesData instead.
        linksModuleData:
          $ref: "#/components/schemas/LinksModuleData"
          description: Links module data. If links module data is also defined on the class, both will be displayed.
        locations:
          description: "Note: This field is currently not supported to trigger geo notifications."
          items:
            $ref: "#/components/schemas/LatLongPoint"
          type: array
        messages:
          description: An array of messages displayed in the app. All users of this object will receive its associated messages. The maximum number of these fields is 10.
          items:
            $ref: "#/components/schemas/Message"
          type: array
        passConstraints:
          $ref: "#/components/schemas/PassConstraints"
          description: Pass constraints for the object. Includes limiting NFC and screenshot behaviors.
        passengerNames:
          description: The name(s) of the passengers the ticket is assigned to. The above `passengerType` field is meant to give Google context on this field.
          type: string
        passengerType:
          description: The number of passengers.
          enum:
            - PASSENGER_TYPE_UNSPECIFIED
            - SINGLE_PASSENGER
            - singlePassenger
            - MULTIPLE_PASSENGERS
            - multiplePassengers
          type: string
        purchaseDetails:
          $ref: "#/components/schemas/PurchaseDetails"
          description: Purchase details for this ticket.
        rotatingBarcode:
          $ref: "#/components/schemas/RotatingBarcode"
          description: The rotating barcode type and value.
        smartTapRedemptionValue:
          description: The value that will be transmitted to a Smart Tap certified terminal over NFC for this object. The class level fields `enableSmartTap` and `redemptionIssuers` must also be set up correctly in order for the pass to support Smart Tap. Only ASCII characters are supported.
          type: string
        state:
          description: Required. The state of the object. This field is used to determine how an object is displayed in the app. For example, an `inactive` object is moved to the "Expired passes" section.
          enum:
            - STATE_UNSPECIFIED
            - ACTIVE
            - active
            - COMPLETED
            - completed
            - EXPIRED
            - expired
            - INACTIVE
            - inactive
          type: string
        textModulesData:
          description: Text module data. If text module data is also defined on the class, both will be displayed. The maximum number of these fields displayed is 10 from the object and 10 from the class.
          items:
            $ref: "#/components/schemas/TextModuleData"
          type: array
        ticketLeg:
          $ref: "#/components/schemas/TicketLeg"
          description: A single ticket leg contains departure and arrival information along with boarding and seating information. If more than one leg is to be specified then use the `ticketLegs` field instead. Both `ticketLeg` and `ticketLegs` may not be set.
        ticketLegs:
          description: Each ticket may contain one or more legs. Each leg contains departure and arrival information along with boarding and seating information. If only one leg is to be specified then use the `ticketLeg` field instead. Both `ticketLeg` and `ticketLegs` may not be set.
          items:
            $ref: "#/components/schemas/TicketLeg"
          type: array
        ticketNumber:
          description: The number of the ticket. This is a unique identifier for the ticket in the transit operator's system.
          type: string
        ticketRestrictions:
          $ref: "#/components/schemas/TicketRestrictions"
          description: Information about what kind of restrictions there are on using this ticket. For example, which days of the week it must be used, or which routes are allowed to be taken.
        ticketStatus:
          description: The status of the ticket. For states which affect display, use the `state` field instead.
          enum:
            - TICKET_STATUS_UNSPECIFIED
            - USED
            - used
            - REFUNDED
            - refunded
            - EXCHANGED
            - exchanged
          type: string
        tripId:
          description: This id is used to group tickets together if the user has saved multiple tickets for the same trip.
          type: string
        tripType:
          description: Required. The type of trip this transit object represents. Used to determine the pass title and/or which symbol to use between the origin and destination.
          enum:
            - TRIP_TYPE_UNSPECIFIED
            - ROUND_TRIP
            - roundTrip
            - ONE_WAY
            - oneWay
          type: string
        validTimeInterval:
          $ref: "#/components/schemas/TimeInterval"
          description: The time period this object will be `active` and object can be used. An object's state will be changed to `expired` when this time period has passed.
        version:
          description: Deprecated
          format: int64
          type: string
      type: object
    TransitObjectAddMessageResponse:
      properties:
        resource:
          $ref: "#/components/schemas/TransitObject"
          description: The updated TransitObject resource.
      type: object
    TransitObjectListResponse:
      properties:
        pagination:
          $ref: "#/components/schemas/Pagination"
          description: Pagination of the response.
        resources:
          description: Resources corresponding to the list request.
          items:
            $ref: "#/components/schemas/TransitObject"
          type: array
      type: object
    TranslatedString:
      properties:
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#translatedString"`.'
          type: string
        language:
          description: Represents the BCP 47 language tag. Example values are "en-US", "en-GB", "de", or "de-AT".
          type: string
        value:
          description: The UTF-8 encoded translated string.
          type: string
      type: object
    UpcomingNotification:
      description: Indicates that the issuer would like Google Wallet to send an upcoming card validity notification 1 day before card becomes valid/usable.
      properties:
        enableNotification:
          description: Indicates if the object needs to have upcoming notification enabled.
          type: boolean
      type: object
    UploadPrivateDataRequest:
      description: Request for sending user private Text or URI by the Issuer.
      properties:
        issuerId:
          description: The ID of the issuer sending the data.
          format: int64
          type: string
        text:
          $ref: "#/components/schemas/PrivateText"
          description: Private text data of the user.
        uri:
          $ref: "#/components/schemas/PrivateUri"
          description: Private URIs of the user.
      type: object
    UploadPrivateDataResponse:
      description: Response for uploading user private data (text or URIs)
      properties:
        privateContentId:
          description: A 64-bit content id for the private data that was uploaded by the Issuer.
          format: int64
          type: string
      type: object
    UploadPrivateImageRequest:
      description: Request to upload user's private images by Issuers to be used in passes.
      properties:
        blob:
          $ref: "#/components/schemas/Media"
          description: A reference to the image payload that was uploaded by Scotty.
        mediaRequestInfo:
          $ref: "#/components/schemas/MediaRequestInfo"
          description: Extra information about the uploaded media.
      type: object
    UploadPrivateImageResponse:
      description: Response for uploading the private image
      properties:
        privateContentId:
          description: A 64-bit content id for the image that was uploaded by the Issuer.
          format: int64
          type: string
      type: object
    Uri:
      properties:
        description:
          description: The URI's title appearing in the app as text. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens. Note that in some contexts this text is not used, such as when `description` is part of an image.
          type: string
        id:
          description: The ID associated with a uri. This field is here to enable ease of management of uris.
          type: string
        kind:
          description: 'Identifies what kind of resource this is. Value: the fixed string `"walletobjects#uri"`.'
          type: string
        localizedDescription:
          $ref: "#/components/schemas/LocalizedString"
          description: Translated strings for the description. Recommended maximum is 20 characters to ensure full string is displayed on smaller screens.
        uri:
          description: The location of a web page, image, or other resource. URIs in the `LinksModuleData` module can have different prefixes indicating the type of URI (a link to a web page, a link to a map, a telephone number, or an email address). URIs must have a scheme.
          type: string
      type: object
  securitySchemes:
    Oauth2:
      description: Oauth 2.0 implicit authentication
      flows:
        implicit:
          authorizationUrl: https://accounts.google.com/o/oauth2/auth
          scopes:
            https://www.googleapis.com/auth/wallet_object.issuer: "Private Service: https://www.googleapis.com/auth/wallet_object.issuer"
      type: oauth2
    Oauth2c:
      description: Oauth 2.0 authorizationCode authentication
      flows:
        authorizationCode:
          authorizationUrl: https://accounts.google.com/o/oauth2/auth
          scopes:
            https://www.googleapis.com/auth/wallet_object.issuer: "Private Service: https://www.googleapis.com/auth/wallet_object.issuer"
          tokenUrl: https://accounts.google.com/o/oauth2/token
      type: oauth2
