0.1.39 • Published 8 months ago

@basetime/a2w-api-ts v0.1.39

Weekly downloads
-
License
MIT
Repository
-
Last release
8 months ago

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);

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);
0.1.38

8 months ago

0.1.39

8 months ago

0.1.33

10 months ago

0.1.34

10 months ago

0.1.35

10 months ago

0.1.36

10 months ago

0.1.32

10 months ago

0.1.31

10 months ago

0.1.30

10 months ago

0.1.29

10 months ago

0.1.28

10 months ago

0.1.27

10 months ago

0.1.26

10 months ago

0.1.25

10 months ago

0.1.24

10 months ago

0.1.23

10 months ago

0.1.22

10 months ago

0.1.21

10 months ago

0.1.20

10 months ago

0.1.19

10 months ago

0.1.18

10 months ago

0.1.17

10 months ago

0.1.16

10 months ago

0.1.15

10 months ago

0.1.14

10 months ago

0.1.13

10 months ago

0.1.12

10 months ago

0.1.11

10 months ago

0.1.10

10 months ago

0.1.9

10 months ago

0.1.8

10 months ago

0.1.7

10 months ago

0.1.6

10 months ago

0.1.5

10 months ago

0.1.4

11 months ago

0.1.3

11 months ago

0.1.2

11 months ago

0.1.1

11 months ago

0.1.0

11 months ago

0.0.7

12 months ago

0.0.6

12 months ago

0.0.5

12 months ago

0.0.4

12 months ago