> ## 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.

# Bulk update wallet passes

> Updates multiple wallet passes that match filter criteria in the request body. Intended for segment-wide field changes (for example a campaign message). Review filters carefully before submitting.



## OpenAPI

````yaml /openapi/brand-api.json patch /{brand_id}/programs/{program_id}/bulk-wallets
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}/bulk-wallets:
    patch:
      tags:
        - wallet-bulk
      summary: Bulk update wallet passes
      description: >-
        Updates multiple wallet passes that match filter criteria in the request
        body. Intended for segment-wide field changes (for example a campaign
        message). Review filters carefully before submitting.
      parameters:
        - name: brand_id
          in: path
          description: Brand Identifier
          required: true
          style: simple
          explode: false
          schema:
            type: string
          example: '353'
        - name: program_id
          in: path
          description: Program Identifier
          required: false
          style: simple
          explode: false
          schema:
            type: number
          example: '1396'
        - name: template_id
          in: query
          description: Template Identifier
          required: false
          schema:
            type: number
        - name: template_tier_id
          in: query
          description: Template Tier Identifier
          required: false
          schema:
            type: number
        - 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
        - name: serial_number
          in: query
          description: Pass Serial Number
          required: false
          schema:
            type: string
        - name: pass_ids
          in: query
          description: Pass Serial Number
          required: false
          schema:
            type: array
      requestBody:
        description: The pass record creation input
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BulkUpdate'
            example:
              filters:
                templateTierId: 2
              changes:
                currentMessage: Season kickoff this Saturday!
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkUpdateResponse'
              example:
                updateId: bulk-update-abc123
      security:
        - cognito-authorizer:
            - https://admin.bambumeta.software/ui
components:
  schemas:
    BulkUpdate:
      type: object
      properties:
        templateTierId:
          type: number
          description: Template Tier Identifier
        passdata:
          $ref: '#/components/schemas/PassData'
        geoLocation:
          $ref: '#/components/schemas/GeoLocation'
        ipAddress:
          type: string
          description: IP Address
    BulkUpdateResponse:
      type: object
      properties:
        updateId:
          type: string
          description: Bulk Update ID Response
    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
    GeoLocation:
      type: object
      properties:
        latitude:
          type: number
          description: Latitude
        longitude:
          type: number
          description: Longitude
  securitySchemes:
    cognito-authorizer:
      type: apiKey
      name: Authorization
      in: header

````