# `verae-zapier-middleware/services/tenantService` **Package:** `verae-zapier-middleware` **Source:** `packages/verae-zapier-middleware/src/services/tenantService.js` **Lines:** 150 ## What this module is Implementation module in `verae-zapier-middleware`. The tables below are extracted from the source (signatures + JSDoc). ## Exports `selfServeSignup`, `provisionTenant`, `listProvisionedTenants` ## Types / interfaces / classes _None extracted._ ## Functions | Name | Parameters | Param types (JSDoc) | Returns | Calls (same file / helpers) | |------|------------|---------------------|---------|-----------------------------| | `slugify` | `value` | — | `unknown` | see Call graph | | `validateVeraeCredentials` | `username, password` | — | `unknown` | see Call graph | | `selfServeSignup` | `{ email, name, veraeUsername, veraePassword }` | — | `unknown` | see Call graph | | `provisionTenant` | `{ id, name, plan, veraeUsername, veraePassword, contract = null, metadata = {}, audience = 'admin', }` | — | `unknown` | see Call graph | | `listProvisionedTenants` | `(none)` | — | `Array` | see Call graph | ## What it imports / requires - `node:crypto` - `../store/tenants.js` - `../clients/veraeClient.js` - `../errors.js` - `../debug/logger.js` ## Call graph (identifiers invoked) `createDebugger`, `slugify`, `toLowerCase`, `replace`, `slice`, `validateVeraeCredentials`, `login`, `selfServeSignup`, `bindUser`, `randomUUID`, `createTenant`, `info`, `provision`, `provisionTenant`, `has`, `getTenant`, `listProvisionedTenants`, `listTenants`, `map` Each identifier is a call site in this file. Follow the import list to see the defining module; open that module’s MD for parameter and return types. ## Return values (how to read this) - HTTP route handlers return Express `res.json(...)` bodies (see route docs). - Zapier `perform` functions return a **single object** (creates) or an **array** (triggers/searches). - Pricing functions return integer **cents** on `Quote.totalCents`.