> ## Documentation Index
> Fetch the complete documentation index at: https://developers.bm.cards/llms.txt
> Use this file to discover all available pages before exploring further.

# Schedule a wallet update (by filter)

> Schedules a pass change at a future time for passes in the program matching the request filters.



## OpenAPI

````yaml /openapi/brand-api.json patch /{brand_id}/programs/{program_id}/wallets/schedule
openapi: 3.0.0
info:
  title: Bambu Brand API
  description: >-
    Partner APIs for issuing and managing wallet cards, activations,
    transactions, SMS, and program configuration. Start with the Guides tab for
    authentication and your first issue-wallet call.
  version: 1.0.0
servers:
  - url: https://api.bambumeta.software/brands
    description: Production
  - url: https://api-sandbox.bambumeta.software/brands
    description: Sandbox
security: []
tags:
  - name: brand
    description: Brand setup and configuration
  - name: brand-activation
    description: Onboarding activations and issue-wallet for an activation
  - name: brands
    description: Custom brand attribute fields
  - name: link-activation
    description: Distribution link activation CRUD
  - name: onboarding
    description: >-
      Program onboarding metrics (internal tag, grouped under reporting in the
      portal)
  - name: program
    description: Program setup and transactions
  - name: reporting
    description: Pass and stage breakdown reports
  - name: sms
    description: Send outbound SMS messages
  - name: subscription
    description: SMS subscription enrollment and stage updates
  - name: template
    description: Wallet template management
  - name: transactions
    description: Transaction types, records, and program transactions
  - name: wallet
    description: Issue, retrieve, update, and delete wallet cards
  - name: wallet-bulk
    description: Bulk pass updates and scheduled changes
  - name: workflow
    description: Trigger workflows that issue or update passes
paths:
  /{brand_id}/programs/{program_id}/wallets/schedule:
    patch:
      tags:
        - wallet-bulk
      summary: Schedule a wallet update (by filter)
      description: >-
        Schedules a pass change at a future time for passes in the program
        matching the request filters.
      parameters:
        - name: brand_id
          in: path
          description: Brand Identifier
          required: false
          style: simple
          explode: false
          schema:
            type: number
          example: '353'
        - name: program_id
          in: path
          description: Program Identifier
          required: false
          style: simple
          explode: false
          schema:
            type: number
          example: '1396'
        - name: person_id
          in: query
          description: Person Identifier
          required: false
          schema:
            type: string
        - name: email
          in: query
          description: >-
            Email Address, for backwards compatibility, you should be using the
            unique_id.  Only works if the email address is the unique identifier
            for the brand.
          required: false
          schema:
            type: string
        - name: unique_id
          in: query
          description: >-
            External unique identifier for the wallet card (recommended). Must
            match the value stored in passdata.metaData at issue time, such as
            memberId.
          required: false
          schema:
            type: string
      requestBody:
        description: The pass record creation input
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ScheduleWalletPassUpdate'
            example:
              scheduledName: Tier upgrade
              scheduledTimestamp: 1785369600000
              filters:
                unique_id: '1001'
              changes:
                templateTierId: 2
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WalletPass'
              example:
                message: Schedule created
      security:
        - cognito-authorizer:
            - https://admin.bambumeta.software/ui
components:
  schemas:
    ScheduleWalletPassUpdate:
      type: object
      properties:
        scheduledName:
          type: string
          description: ScheduleName
        scheduledTimestamp:
          type: number
          description: If provided scheduledDateTime and scheduledTimezone must be ignored.
        scheduledDateTime:
          type: string
          description: Should be provided along with scheduledTimezone.
        scheduledTimezone:
          type: string
          description: Should be provided along with scheduledDateTime.
        changes:
          $ref: '#/components/schemas/WalletPass'
          type: object
    WalletPass:
      type: object
      required:
        - serialNumber
        - templateId
      properties:
        passId:
          type: number
        serialNumber:
          type: string
        templateId:
          type: number
        groupId:
          type: string
          description: >-
            If provided, this group identifier will be used to group the wallet
            passes together.
        personId:
          type: string
        templateTierId:
          type: number
          description: >-
            The optional wallet pass tier identifier for updating the tier on
            the wallet card.
        currentMessage:
          type: string
          description: The current message for the wallet pass
        passdata:
          $ref: '#/components/schemas/PassData'
        downloadUrl:
          type: string
          description: The download url for the pass
        downloadUrlApple:
          type: string
          description: The download url for the pass for Apple Wallet
        downloadUrlGoogle:
          type: string
          description: The download url for the pass for Google Wallet
        statusCode:
          type: string
          description: The status for the pass
        status:
          type: number
          description: The numeric representation of the status
    PassData:
      type: object
      properties:
        optOut:
          type: boolean
        points:
          type: number
        seat:
          type: string
        row:
          type: string
        section:
          type: string
        gate:
          type: string
        expiryDate:
          type: string
        status:
          type: string
        profileImage:
          type: string
        metaData:
          type: object
          additionalProperties: true
  securitySchemes:
    cognito-authorizer:
      type: apiKey
      name: Authorization
      in: header

````