You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

@basetime/a2w-api-ts

Package Overview
Dependencies
Maintainers
3
Versions
52
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@basetime/a2w-api-ts

Client library that communicates with the addtowallet API.

0.1.48
latest
npmnpm
Version published
Maintainers
3
Created
Source

AddToWallet Typescript Client

Client library that communicates with the addtowallet API.

Installing

npm i @basetime/a2w-api-ts
# or
yarn add @basetime/a2w-api-ts
# or
pnpm add @basetime/a2w-api-ts

Deveoping

Run the watch command while writing code.

pnpm watch

Building

Run the build command to build the code.

pnpm build

Examples

Creating a new client with keys

import { Client, KeysProvider } from '@basetime/a2w-api-ts';

const auth = new KeysProvider('api_key', 'api_secret');
const client = new Client(auth);

Creating a new client with oauth

import { Client, OAuthProvider } from '@basetime/a2w-api-ts';

const appId = 'a2w-inspector';
const oauth = new OAuthProvider('a2w-inspector');
const client = new Client(oauth);

Fetching a template by ID

const template = await client.templates.getById('id');
console.log(template);

Fetching templates by tag

const templates = await client.templates.getByTag('tag');
console.log(templates);

Fetching a pass

const campaignId = 'h8X2JxgrnEsu2U0dI8KN';
const passId = '7gXYr76u3Maaf9ugAdWk';
const pass = await client.campaigns.getPass(campaignId, passId);
console.log(pass);

Creating a pass bundle

const campaignId = 'h8X2JxgrnEsu2U0dI8KN';

// See the meta value docs for more info.
// @see https://avagate.atlassian.net/wiki/spaces/Addto/pages/102891521/Campaigns#Meta-values
const meta = {
  bundle: '9YpI7B8G0dnvRBC1R1a2,9YpI7B8G0dnvRBC1R1a2',
  banner: 'https://example.com/banner.png',
  backgroundColor: '#ae00ff',
};

// Form values to assign to the pass bundle. Typically, a primary key is set.
const form = {
  primaryKey: '1234567890',
};

const url = await client.campaigns.createBundle(campaignId, meta, form);
console.log(url);

Creating an enrollment

Creates an enrollment for a campaign, and returns the bundle ID and any errors.

// Meta values to assign to the pass bundle.
const meta = {
  banner: 'https://example.com/banner.png',
  backgroundColor: '#ae00ff',
};

// Form values to assign to the pass bundle. Typically, a primary key is set.
const form = {
  primaryKey: '1234567890',
  firstName: 'John',
  lastName: 'Doe',
};

// Returns the bundle ID and any errors.
const enrollment = await client.campaigns.createEnrollment(campaignId, meta, form);
console.log(enrollment.pass, enrollment.errors);

Fetching the authenticated organization

const organization = await client.organizations.getMine();
console.log(organization);

Fetching all campaigns

Fetches the campaigns for the authenticated organization.

const campaigns = await client.campaigns.getAll();
console.log(campaigns);

Fetching all templates

Fetches the templates for the authenticated organization.

const templates = await client.templates.getAll();
console.log(templates);

Updating a pass

Updates the data inside of a pass. This will also have a2w send the updated pass to the wallets that contain it. Only the following values can be updated:

  • templateId
  • templateVersion
  • data
  • passTypeIdentifier
const campaignId = 'h8X2JxgrnEsu2U0dI8KN';
const passId = '7gXYr76u3Maaf9ugAdWk';

// Each value is optional.
const updatedPass = await client.campaigns.updatePass(campaignId, passId, {
  templateId: '123123123',
  templateVersion: 2,
  data: {
    points: '42',
  },
});
console.log(updatedPass);

Redeem a pass

const campaignId = 'h8X2JxgrnEsu2U0dI8KN';
const passId = '7gXYr76u3Maaf9ugAdWk';
const redeemed = await client.campaigns.redeemPass(campaignId, passId);
console.log(redeemed);

Get the redeemed status of a pass

const campaignId = 'h8X2JxgrnEsu2U0dI8KN';
const passId = '7gXYr76u3Maaf9ugAdWk';
const redeemed = await client.campaigns.getRedeemedStatus(campaignId, passId);
console.log(redeemed);

Keywords

addtowallet

FAQs

Package last updated on 08 Jul 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts