# Bambu Wallet API Docs ## Docs - [Create a brand activation](https://developers.bm.cards/api-reference/brand-activation/create-a-brand-activation.md): Creates a brand activation record for an onboarding or enrollment funnel. Returns an external identifier you can embed in landing pages or partner flows. - [Get a brand activation](https://developers.bm.cards/api-reference/brand-activation/get-a-brand-activation.md): Retrieves a brand activation by its external identifier. Use to validate state before issuing a wallet pass for that activation. - [Issue a wallet card for a brand activation](https://developers.bm.cards/api-reference/brand-activation/issue-a-wallet-card-for-a-brand-activation.md): Issues a wallet pass tied to an existing brand activation. Send cardholder and pass data in the request body after the activation is created. - [Create a brand](https://developers.bm.cards/api-reference/brand/create-a-brand.md): Creates a new brand in your tenant. Typically used during initial onboarding. Most partners receive a `brand_id` from Bambu instead of calling this directly. - [Delete a brand](https://developers.bm.cards/api-reference/brand/delete-a-brand.md): Deletes a brand. Destructive and rarely used in partner integrations. - [Get brand details](https://developers.bm.cards/api-reference/brand/get-brand-details.md): Returns configuration and metadata for a single brand. - [List brands](https://developers.bm.cards/api-reference/brand/list-brands.md): Returns brands accessible to your integration credentials. - [Update a brand](https://developers.bm.cards/api-reference/brand/update-a-brand.md): Updates brand-level settings. - [Create a brand attribute](https://developers.bm.cards/api-reference/brands/create-a-brand-attribute.md): Defines a new custom attribute field for the brand (for example encrypted, searchable, or standard columns). - [Delete a brand attribute](https://developers.bm.cards/api-reference/brands/delete-a-brand-attribute.md): Deletes a brand attribute definition. - [Get a brand attribute](https://developers.bm.cards/api-reference/brands/get-a-brand-attribute.md): Returns a single brand attribute definition by ID. - [List brand attributes](https://developers.bm.cards/api-reference/brands/list-brand-attributes.md): Returns custom attribute fields defined for the brand. These map to extended data you can store on cardholders or passes. - [Remaining attribute capacity](https://developers.bm.cards/api-reference/brands/remaining-attribute-capacity.md): Returns how many encrypted, standard, and searchable attribute slots remain for the brand. - [Update a brand attribute](https://developers.bm.cards/api-reference/brands/update-a-brand-attribute.md): Updates a brand attribute definition. - [Create a link activation](https://developers.bm.cards/api-reference/link-activation/create-a-link-activation.md): Creates a new link activation for pass distribution. Configure the link settings in the request body; use the returned URL in email or SMS campaigns. - [Delete a link activation](https://developers.bm.cards/api-reference/link-activation/delete-a-link-activation.md): Deletes a link activation. Existing short links may stop working after deletion. - [List link activations](https://developers.bm.cards/api-reference/link-activation/list-link-activations.md): Returns link activation records for a program. Link activations power distribution URLs that cardholders open to install a pass. - [Update a link activation](https://developers.bm.cards/api-reference/link-activation/update-a-link-activation.md): Updates an existing link activation (for example display name, expiration, or targeting rules). - [Create a program](https://developers.bm.cards/api-reference/program/create-a-program.md): Creates a wallet program under the brand. Most partners receive a `program_id` from Bambu for their production integration. - [Create a transaction record](https://developers.bm.cards/api-reference/program/create-a-transaction-record.md): Creates a transaction record at program scope. Prefer the transaction-type-scoped path when posting typed earn/burn events. - [Create a wallet template](https://developers.bm.cards/api-reference/program/create-a-wallet-template.md): Creates a default wallet template for the program. Templates define pass layout and fields for issued cards. - [Delete a program](https://developers.bm.cards/api-reference/program/delete-a-program.md): Deletes a program. Destructive. Confirm with your Bambu contact before using in production. - [Get program details](https://developers.bm.cards/api-reference/program/get-program-details.md): Returns configuration and metadata for a single program. - [Get temporary upload URLs](https://developers.bm.cards/api-reference/program/get-temporary-upload-urls.md): Returns pre-signed URLs for uploading assets (for example images) used in templates or pass artwork. - [List programs](https://developers.bm.cards/api-reference/program/list-programs.md): Returns programs for the brand. - [List wallet templates](https://developers.bm.cards/api-reference/program/list-wallet-templates.md): Returns wallet templates configured for the program. - [Update a program](https://developers.bm.cards/api-reference/program/update-a-program.md): Updates program-level settings. - [Update a wallet template](https://developers.bm.cards/api-reference/program/update-a-wallet-template.md): Updates template configuration for the program. - [Pass breakdown by type (brand)](https://developers.bm.cards/api-reference/reporting/pass-breakdown-by-type-brand.md): Returns counts of wallet passes grouped by pass type across the brand. Use for high-level inventory and adoption reporting. - [Pass breakdown by type (program)](https://developers.bm.cards/api-reference/reporting/pass-breakdown-by-type-program.md): Returns counts of wallet passes grouped by pass type for a single program. - [Stage breakdown and card counts](https://developers.bm.cards/api-reference/reporting/stage-breakdown-and-card-counts.md): Returns each program stage (template tier) and how many cards are in that stage. Useful for funnel and engagement reporting. - [Send an SMS message](https://developers.bm.cards/api-reference/sms/send-an-sms-message.md): Sends an outbound SMS to a subscribed recipient. Ensure the number is opted in and the message complies with your program's SMS settings. - [Subscribe a cardholder to SMS](https://developers.bm.cards/api-reference/subscription/subscribe-a-cardholder-to-sms.md): Enrolls a phone number in SMS for the program. Required before sending promotional or transactional texts where subscription is enforced. - [Update SMS subscription stage](https://developers.bm.cards/api-reference/subscription/update-sms-subscription-stage.md): Updates the subscription stage for an enrolled phone number (for example opt-in state or template tier). - [Create a program transaction](https://developers.bm.cards/api-reference/transactions/create-a-program-transaction.md): Creates a program transaction configuration record. - [Create a transaction](https://developers.bm.cards/api-reference/transactions/create-a-transaction.md): Posts a new transaction for a cardholder under the given transaction type. Identify the card with `unique_id` or serial number query parameters as documented for your program. - [Create a transaction action](https://developers.bm.cards/api-reference/transactions/create-a-transaction-action.md): Creates an action that runs in response to transactions of this type. - [Create a transaction type](https://developers.bm.cards/api-reference/transactions/create-a-transaction-type.md): Creates a new transaction type for the program. Define attributes and rules in the request body before posting transactions of this type. - [Create a transaction type attribute](https://developers.bm.cards/api-reference/transactions/create-a-transaction-type-attribute.md): Adds a custom attribute field to a transaction type schema. - [Delete a program transaction](https://developers.bm.cards/api-reference/transactions/delete-a-program-transaction.md): Deletes a program transaction configuration. - [Delete a transaction](https://developers.bm.cards/api-reference/transactions/delete-a-transaction.md): Deletes a transaction record. Use with care in production integrations. - [Delete a transaction action](https://developers.bm.cards/api-reference/transactions/delete-a-transaction-action.md): Deletes a transaction action. - [Delete a transaction type](https://developers.bm.cards/api-reference/transactions/delete-a-transaction-type.md): Deletes a transaction type. Existing transactions of this type may remain; new posts using this type will fail. - [Delete a transaction type attribute](https://developers.bm.cards/api-reference/transactions/delete-a-transaction-type-attribute.md): Removes an attribute from a transaction type schema. - [Get a program transaction](https://developers.bm.cards/api-reference/transactions/get-a-program-transaction.md): Returns a single program transaction configuration by ID. - [Get a transaction](https://developers.bm.cards/api-reference/transactions/get-a-transaction.md): Returns a single transaction by ID. - [Get a transaction action](https://developers.bm.cards/api-reference/transactions/get-a-transaction-action.md): Returns a single transaction action definition. - [Get a transaction type attribute](https://developers.bm.cards/api-reference/transactions/get-a-transaction-type-attribute.md): Returns a single attribute definition for a transaction type. - [List program transactions](https://developers.bm.cards/api-reference/transactions/list-program-transactions.md): Returns program-level transaction configuration records (distinct from individual cardholder transaction posts). - [List transaction actions](https://developers.bm.cards/api-reference/transactions/list-transaction-actions.md): Returns automated actions tied to a transaction type (for example rules that run after a post). - [List transaction type attributes](https://developers.bm.cards/api-reference/transactions/list-transaction-type-attributes.md): Returns custom attribute definitions for a transaction type. - [List transaction types](https://developers.bm.cards/api-reference/transactions/list-transaction-types.md): Returns transaction type definitions configured for the program. Transaction types define schemas for purchases, visits, or other earn/burn events. - [List transactions](https://developers.bm.cards/api-reference/transactions/list-transactions.md): Returns transactions for the program with optional filters. - [List transactions for a card](https://developers.bm.cards/api-reference/transactions/list-transactions-for-a-card.md): Returns transactions for a cardholder under the transaction type. Filter by serial number or card identifiers in query parameters. - [Update a program transaction](https://developers.bm.cards/api-reference/transactions/update-a-program-transaction.md): Updates a program transaction configuration. - [Update a transaction action](https://developers.bm.cards/api-reference/transactions/update-a-transaction-action.md): Updates a transaction action definition. - [Update a transaction type](https://developers.bm.cards/api-reference/transactions/update-a-transaction-type.md): Updates an existing transaction type configuration. - [Update a transaction type attribute](https://developers.bm.cards/api-reference/transactions/update-a-transaction-type-attribute.md): Updates an attribute definition on a transaction type. - [Bulk update wallet passes](https://developers.bm.cards/api-reference/wallet-bulk/bulk-update-wallet-passes.md): 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. - [List bulk update jobs](https://developers.bm.cards/api-reference/wallet-bulk/list-bulk-update-jobs.md): Returns bulk wallet update job records for the program. Use to check status of in-flight or completed bulk operations. - [Schedule a bulk wallet update](https://developers.bm.cards/api-reference/wallet-bulk/schedule-a-bulk-wallet-update.md): Schedules a bulk pass change to run at a future time for passes matching the provided filters. - [Schedule a wallet update (by filter)](https://developers.bm.cards/api-reference/wallet-bulk/schedule-a-wallet-update-by-filter.md): Schedules a pass change at a future time for passes in the program matching the request filters. - [Schedule a wallet update (by pass ID)](https://developers.bm.cards/api-reference/wallet-bulk/schedule-a-wallet-update-by-pass-id.md): Schedules a pass field change for a single wallet pass at a future time. - [Apply a reward to a wallet pass](https://developers.bm.cards/api-reference/wallet/apply-a-reward-to-a-wallet-pass.md): Applies a configured reward to an existing wallet pass. Requires a valid `reward_id` and pass identifiers in the request body. - [Delete a wallet card by pass ID](https://developers.bm.cards/api-reference/wallet/delete-a-wallet-card-by-pass-id.md): Deletes the wallet pass identified by `pass_id`. Destructive. Confirm the pass ID before calling. - [Delete a wallet card by unique identifier](https://developers.bm.cards/api-reference/wallet/delete-a-wallet-card-by-unique-identifier.md): Deletes the wallet pass for the cardholder matching `unique_id`. This is destructive. Confirm the identifier before calling. - [Get a wallet card by pass ID](https://developers.bm.cards/api-reference/wallet/get-a-wallet-card-by-pass-id.md): Returns a single wallet pass when you have the Bambu `passId` from an issue-wallet response. Use this when you stored `passId` but not your external `unique_id`. - [Get wallet card(s) by unique identifier](https://developers.bm.cards/api-reference/wallet/get-wallet-cards-by-unique-identifier.md): Returns wallet pass(es) for a program. Pass `unique_id` with the same value you stored in `passdata.metaData` at issue time (for example `memberId`). `email` works only when email is configured as the brand unique identifier. - [Issue a wallet card](https://developers.bm.cards/api-reference/wallet/issue-a-wallet-card.md): Creates a wallet pass for a cardholder in the specified program. Send contact fields in `person` and card data in `passdata`. If the cardholder does not exist yet, they are created automatically. You do not need a separate person-create call. Store your external member key in `passdata.metaData` and… - [Issue a wallet card (default program)](https://developers.bm.cards/api-reference/wallet/issue-a-wallet-card-default-program.md): Issues a wallet pass using the brand's default program. Prefer the program-scoped path when you have a `program_id`. Same `person` + `passdata` body as the program-scoped issue endpoint. - [Issue a wallet card via workflow](https://developers.bm.cards/api-reference/wallet/issue-a-wallet-card-via-workflow.md): Triggers a configured workflow that issues or updates wallet passes. Use when your program routes enrollment through a Bambu workflow instead of direct issue-wallet. - [Issue multiple wallet cards](https://developers.bm.cards/api-reference/wallet/issue-multiple-wallet-cards.md): Issues wallet passes for multiple cardholders in one request. Each item uses the same `person` + `passdata` shape as single issue-wallet. Use when batching enrollment from your registration system. - [List wallet passes](https://developers.bm.cards/api-reference/wallet/list-wallet-passes.md): Returns wallet passes for a program. Supports pagination and filtering query parameters. Use for operational exports or reconciliation. Prefer `GET .../wallets?unique_id=` for single-card lookup. - [Update a wallet card by pass ID](https://developers.bm.cards/api-reference/wallet/update-a-wallet-card-by-pass-id.md): Updates pass fields for the wallet pass identified by `pass_id`. Alternative to updating by `unique_id` when you saved `passId` from issue-wallet. - [Update a wallet card by unique identifier](https://developers.bm.cards/api-reference/wallet/update-a-wallet-card-by-unique-identifier.md): Updates pass fields for the cardholder matching `unique_id`. Use the same external key you stored in `passdata.metaData` when the card was issued. - [Authentication](https://developers.bm.cards/guides/authentication.md): OAuth2 client_credentials for the Brand API - [Bulk cards](https://developers.bm.cards/guides/bulk-cards.md): Issue and update multiple wallet cards in one integration flow - [Getting started](https://developers.bm.cards/guides/getting-started.md): Credentials, environments, and your first Brand API call - [Unique identifier](https://developers.bm.cards/guides/unique-identifier.md): passdata.metaData and the unique_id query parameter ## OpenAPI Specs - [brand-api](https://developers.bm.cards/openapi/brand-api.json)