Skip to main content
Use these resources for account authentication, instance lifecycle, and billing. For WhatsApp session flows, see Session. For chats, see Chats. For message sending, see Messages. Common fields on instance calls:
FieldTypeRequiredDescription
instanceIdstringYesInstance ID.
instanceTokenstringYesInstance token.

Auth

auth.getAccessToken()

Gets a JWT with clientToken and clientSecret. In most flows, resources do this automatically.
const token = await vzaps.auth.getAccessToken();
console.log(token.slice(0, 16));
Return: string JWT access token (accessToken from POST /token).

Instances and billing

instances.create(data)

const created = await vzaps.instances.create({
  name: 'Support',
  webhook: 'https://example.com/webhooks/vzaps',
  eventsSubscribe: ['Message', 'Connected', 'Disconnected'],
});
Return: InstancePublicCreateResponseid, name, token, url, webhook, eventsSubscribe, status, createdAt, updatedAt.

instances.list(data?)

const instances = await vzaps.instances.list({
  page: 1,
  pageSize: 20,
  search: 'support',
});
Return: page { page, size, total, totalPages, content[], summary }. Each content item uses the public instance summary shape.

instances.get(instanceId, options?)

Returns one instance in the same public summary format as each row from instances.list().
const instance = await vzaps.instances.get('VZ...');
Return: same summary shape as one instances.list() item (id, name, token, url, webhook, status, etc.).

instances.update(instanceId, data, options?)

await vzaps.instances.update('VZ...', {
  name: 'Commercial Support',
}, {
  instanceToken: 'instance-token',
});
Return: updated instance in the same summary shape as instances.get().

instances.restart(instanceId, options?)

await vzaps.instances.restart('VZ...', {
  instanceToken: 'instance-token',
});
Return: InstanceActionResponseinstanceId, status, details.

instances.delete(instanceId, options?)

await vzaps.instances.delete('VZ...', {
  instanceToken: 'instance-token',
});
Return: empty body on success (204) or the standard error envelope.

instances.subscribe(instanceId, data?, options?)

const checkout = await vzaps.instances.subscribe('VZ...', {}, {
  instanceToken: 'instance-token',
});
Return: BillingHostedSessionurl, sessionId, mode (direct or checkout), subscriptionId.

instances.resumeSubscription(instanceId, options?)

await vzaps.instances.resumeSubscription('VZ...', {
  instanceToken: 'instance-token',
});
Return: { status: "ok" }.

instances.cancel(instanceId, options?)

await vzaps.instances.cancel('VZ...', {
  instanceToken: 'instance-token',
});
Return: { message } confirming cancellation or scheduled cancel.

Advanced calls

Use vzaps.request() when you need an operation not yet wrapped by a resource:
await vzaps.request(method, path, options);
For the full HTTP contract, use the API tab.