@mikeyzhang75/zai-payments
v1.0.0
Published
Zai API Typescript/Javascript Bindings
Maintainers
Readme
An (unofficial) Zai Typescript/Javascript client
types are swagger generated from - https://developer.hellozai.com/reference/overview
Usage
yarn
yarn add @mikeyzhang75/zai-paymentsnpm
npm install --save @mikeyzhang75/zai-paymentsbun
bun add @mikeyzhang75/zai-paymentsContributing
Install
bun installRun tests
bun specType checking
bun typecheckLinting & Formatting
bun check:fixAuthor
👤 MikeyZhang75 [email protected]
Generating updated types
Before generating types, you must define the current Swagger version:
- Download the desired Swagger spec version from Zai Developer Docs
- Save it as
swagger.yamlin the root directory - Run the type generation command:
npx swagger-typescript-api -p ./swagger.yaml -o ./src -n types.ts --no-clientNote: Always verify the Swagger spec version matches your target Zai API version to ensure type compatibility.
Example
import { createClient } from "@mikeyzhang75/zai-payments";
const baseURL = process.env.AP_SANDPIT
? "https://test.api.promisepay.com/"
: "https://secure.api.promisepay.com/";
const authBaseURL = process.env.AP_SANDPIT
? "https://au-0000.sandbox.auth.assemblypay.com/"
: "https://au-0000.auth.assemblypay.com/";
const dataURL = process.env.AP_SANDPIT
? "https://sandbox.au-0000.api.assemblypay.com/"
: "https://au-0000.api.assemblypay.com/";
export const client = createClient({
clientId: process.env.AP_CLIENT_ID,
clientSecret: process.env.AP_CLIENT_SECRET,
scope: process.env.AP_CLIENT_SCOPE,
baseURL,
authBaseURL,
dataURL,
});
const itemResponse = await client.items.showItem(
"6865E25F-3CFE-4C8C-8673-9231E0A19CF5"
);
console.log(itemResponse.items);