# `verae-zapier-middleware/services/entitlementService` **Package:** `verae-zapier-middleware` **Source:** `packages/verae-zapier-middleware/src/services/entitlementService.js` **Lines:** 161 ## What this module is Implementation module in `verae-zapier-middleware`. The tables below are extracted from the source (signatures + JSDoc). ## Exports `checkEntitlement`, `recordUsage` ## Types / interfaces / classes _None extracted._ ## Functions | Name | Parameters | Param types (JSDoc) | Returns | Calls (same file / helpers) | |------|------------|---------------------|---------|-----------------------------| | `isUnlimited` | `value` | — | `unknown` | see Call graph | | `quotaExceeded` | `{ limit, used, allowOverage }` | — | `unknown` | see Call graph | | `checkEntitlement` | `tenantId, action, { amount = 1 } = {}` | tenantId: `string`, action: `'timestamp'|'verify'|'batch_timestamp'` | `{ tenant: object, limits: object, usage: object ` — } | see Call graph | | `recordUsage` | `tenantId, action, { amount = 1 } = {}` | tenantId: `string`, action: `string` | `void` | see Call graph | ## What it imports / requires - `../config.js` - `../errors.js` - `../store/tenants.js` - `../store/usage.js` - `../debug/logger.js` ## Call graph (identifiers invoked) `createDebugger`, `isUnlimited`, `quotaExceeded`, `checkEntitlement`, `getTenant`, `resolveLimits`, `getUsage`, `debug`, `recordUsage`, `incrementUsage` 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`.