Use cases

Automatic catalog entry after agent approval

As soon as an agent reaches active status, a catalog entry should be created - without anyone having to remember to trigger it.

  1. Subscribe to the agent.status_changed event.
  2. Check whether status == "active" and no catalog entry exists for the agent yet.
  3. Call POST /catalog-entries with your default template.
  4. React to catalog_entry.completed and save the record to your own storage system.

An extra check pays off: call GET /catalog-entries?agent_id=… first and stop if an entry with status: completed already exists. Webhooks can be delivered more than once, and without this check you'll end up with duplicates.

Multi-audience catalog entries

For agents used across multiple functions, generate the same agent twice - once with target_team: "engineering", once with target_team: "compliance-legal". Both entries get their own IDs and their own records; the compliance-disclosure check runs identically for both.

Which disclosures are required can vary by audience, so double-check that the disclosures relevant to your reviewers are covered in both versions before publishing.

Cleanly following through on a chargeback-rate change

When a chargeback rate is adjusted:

  1. Change the deployment via PATCH /agent-deployments/{id}.
  2. Withdraw the old catalog entry via DELETE /catalog-entries/{id}.
  3. Generate and publish a new entry.

It's not a good idea to change the deployment and leave the old catalog entry standing: cost-center reports would keep showing the old rate while the deployment record already shows the new one.

Template per deployment tier

GET /templates returns the platform's templates along with the sections each one supports. A small mapping table in your system - deployment tier to template - saves you from hardcoding IDs in your code:

{
  "sandbox":    "tpl_minimal",
  "pilot":      "tpl_classic",
  "production": "tpl_classic"
}

Check once, at startup, that every stored ID still exists. Otherwise a deleted template only surfaces as a 404 the next time a catalog entry is generated.