---
title: "A project subscription on your account was activated/renewed"
method: POST
path: "subscription.updated"
---

# A project subscription on your account was activated/renewed

`POST subscription.updated` (webhook)

Sent when a Creem payment activates or renews one of your projects (checkout completed, subscription active/paid). Same envelope and signature scheme as all events.

## Payload

- WebhookEnvelope: Delivery envelope POSTed to your endpoint for every event. Headers: X-SerpAgent-Signature (hex sha256 HMAC of the raw body, keyed with your endpoint secret), X-SerpAgent-Event (event name), X-SerpAgent-Delivery (delivery id — stable across retries, dedupe on it). Respond 2xx within 10s or the delivery is retried with exponential backoff (max 8 attempts).
  - `id` string, required: Delivery id (same value as X-SerpAgent-Delivery).
  - `event` 'audit.completed' | 'article.generated' | 'article.published' | 'subscription.updated' | 'usage.threshold_reached' | 'credits.updated', required
  - `created_at` string, date-time, required
  - `data` object, required: Event-specific payload — see the webhooks section examples.

## Acknowledgement `200`

Return any 2xx within 10 seconds to acknowledge.

---

[API](https://skmtc.dev/serp-agent/apis/serp-agent-api.md) · [All operations](https://skmtc.dev/serp-agent/apis/serp-agent-api/llms.txt) · [OpenAPI document](https://skmtc.dev/serp-agent/apis/serp-agent-api/revisions/438a943019ac?raw)
