Skip to main content
Pass a public HTTPS webhook_url when you submit a generation. Porn Factory AI delivers generation.completed or generation.failed after the request reaches a terminal state.
Webhook endpoints must resolve to a public network address. Redirects, private IP ranges, loopback targets, and local hostnames are rejected.

Delivery headers

  • X-PF-Event-Id: stable event ID for deduplication
  • X-PF-Timestamp: Unix timestamp used in the signature
  • X-PF-Signature: sha256= followed by a hexadecimal HMAC digest

Verify the signature

The signed value is {timestamp}.{raw_body}. Use the whsec_ secret shown when the API key was created.
Verify the raw body before parsing JSON. Reject timestamps older than five minutes and deduplicate by X-PF-Event-Id.

Retry behavior

Delivery is at least once. Failed deliveries are retried with exponential backoff for up to eight attempts. Return a 2xx response only after the event has been durably recorded. Your handler must be idempotent.