ads_mandate_template
Build an ads profile and its AAE mandate for one or more Amazon Ads accounts.
Pure: nothing is stored. Returns `profile` (pass it to ads_check) and `mandate`
(what /enforce/check evaluates).
Args:
account_ids: advertiserAccountId / profileId values the agent may act on
brands: brands the agent may touch
daily_budget_cap_usd: largest daily campaign budget; above it: forbid
hold_threshold_usd: above it a person named in `approvers` must approve
total_daily_budget_cap_usd: sum of daily budgets on the account after a change
period_budget_cap_usd: largest lifetime or monthly budget
max_bid_usd: largest bid
max_bid_change_percent: largest bid change per step, in percent
valid_from: RFC 3339 UTC second
valid_until: RFC 3339 UTC second; after it every call is forbidden
tools: allowed tool names (default: all documented in ads_onboard)
mandate_id: your identifier for this mandate
principal_did: the agency's DID
principal_public_key: the agency's Ed25519 public key, hex
approvers: [{"did", "public_key", "role"}] who may approve a hold
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tools | No | ||
| brands | Yes | ||
| approvers | No | ||
| mandate_id | No | ads-mandate-1 | |
| valid_from | No | 2026-10-01T00:00:00Z | |
| account_ids | Yes | ||
| max_bid_usd | No | ||
| valid_until | No | 2026-12-31T23:59:59Z | |
| principal_did | No | did:moltrust:<your agency DID> | |
| hold_threshold_usd | No | ||
| daily_budget_cap_usd | No | ||
| principal_public_key | No | <ed25519 public key, hex> | |
| period_budget_cap_usd | No | ||
| max_bid_change_percent | No | ||
| total_daily_budget_cap_usd | No |
Output Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |