ActiveFence · AsyncAPI Specification
Activefence Webhooks
Version
View Spec
View on GitHub
ai-safetyai-securitytrust-and-safetycontent-moderationguardrailsred-teamingllm-securityprompt-injectionai-governancerisk-scoringuser-generated-contentchild-safetyAsyncAPIWebhooksEvents
AsyncAPI Specification
generated: '2026-08-06'
method: searched
source: https://docs.activefence.com/openapi.json
docs: https://docs.activefence.com/index.html
spec_type: Webhooks
asyncapi_published: false
asyncapi_note: >-
Alice publishes NO AsyncAPI document. Probed /asyncapi.yaml and /asyncapi.json on
api.alice.io and docs.activefence.com and searched the GitHub org — nothing. But the provider
does document a genuine event surface in two distinct shapes, captured below as a webhook
catalog rather than fabricated into a spec.
summary: >-
Two separate outbound-HTTP mechanisms. (1) Async analysis callbacks: six content/entity
endpoints accept the request, return an acknowledgement immediately, and later POST the
completed risk analysis to a customer-supplied callback_url. (2) Action webhooks: customer-
defined outbound calls fired from the ActiveOS Moderation View by a human clicking a button,
or automatically by an Automated Workflow — these call the CUSTOMER's own API or a third-party
system to enact a moderation decision (ban a user, delete a post, etc.).
surfaces:
- id: analysis-callbacks
kind: provider-to-customer callback
direction: outbound from Alice
transport: HTTP POST
trigger: completion of an asynchronous content analysis
registration:
method: per-request field
field: callback_url
description: Callback URL where Alice will post the response to.
authentication:
method: named key injected into the callback request
field: callback_key_name
description: >-
Names a key defined in the platform's Auth Management section. That key is added to the
header or query params of the callback request Alice sends, so the receiving endpoint can
authenticate the caller.
signature_scheme: none_documented
note: >-
This is a shared-secret injection, not a signed payload. No HMAC signature header, no
timestamp, and no replay-protection scheme is documented.
correlation:
field: response_id
description: >-
All callbacks for a request carry the same response_id that was returned in the
synchronous acknowledgement, so the receiver can join results back to the submission.
suppression_rule: >-
The acknowledgement returns analyzed_violations[] — the violation types that will be
analyzed for this item given the account configuration and media type. If that array comes
back EMPTY, no callback will be sent at all. A receiver must not block waiting on one.
producing_operations:
- {operationId: post-content-text, path: /v3/content/text, media: text}
- {operationId: post-content-image, path: /v3/content/image, media: image}
- {operationId: post-content-video, path: /v3/content/video, media: video}
- {operationId: post-content-audio, path: /v3/content/audio, media: audio}
- {operationId: post-users-upsert, path: /v3/users/upsert, media: user entity}
- {operationId: post-collections, path: '/v3/collections/{collection_type}', media: collection entity}
payload:
description: >-
The completed analysis for the submitted item — the same result body the synchronous
endpoints return inline.
fields:
- {name: response_id, type: string, description: correlation id, matches the acknowledgement}
- {name: entity_id, type: string}
- {name: entity_type, type: string}
- {name: violation_types, type: array, description: per-violation results}
- {name: risk_score, type: number, range: 0.1-1, description: probability the item violates a given violation type; only returned above 0.1}
- {name: confidence, type: number}
- {name: language, type: string}
- {name: analysis_description, type: string}
- {name: detection_type, type: string, enum: [manual], description: present only when a human reviewer made the decision}
- {name: custom_fields, type: object}
schema_source: openapi/activefence-alice-api-openapi.yml#/components/schemas
expected_latency:
note: driven by media type, see conventions/activefence-conventions.yml latency_benchmarks
worst_case: audio-30min p90 ~20 minutes
- id: action-webhooks
kind: provider-to-customer action trigger
direction: outbound from Alice
transport: HTTP
trigger:
- manual — a moderator clicks a button in the ActiveOS Moderation View
- automatic — an Automated Workflow defined by the customer fires
purpose: >-
Enact a moderation decision on the customer's own platform or on a third-party system. The
customer must expose an API that performs the action; Alice calls it.
registration:
method: configured in the Alice platform console
self_service: true
catalog_published: false
catalog_note: >-
Alice documents the mechanism but publishes no catalog of event names, payload schemas or
retry semantics for action webhooks. Those are customer-defined per deployment.
event_catalog_completeness:
named_event_types: 0
note: >-
Neither surface publishes discrete named event types. Analysis callbacks are keyed by the
violation types in violation_types[] — the vocabulary below is the closest thing to an
event taxonomy the provider publishes.
violation_type_vocabulary:
source: 'https://docs.activefence.com/index.html (WonderFence + General tag descriptions)'
security:
- {key: prompt_attack.impersonation, label: Impersonation}
- {key: prompt_attack.system_prompt_override, label: System Prompt Override}
- {key: prompt_injection.general_encoding, label: Encoding}
- {key: prompt_injection.general, label: Prompt Injection}
privacy:
- {key: privacy_violation.PII, label: PII}
safety:
- {key: abusive_or_harmful.harassment_or_bullying, label: Harassment or Bullying}
- {key: abusive_or_harmful.profanity, label: Profanity}
- {key: abusive_or_harmful.hate_speech, label: Hate Speech}
- {key: abusive_or_harmful.child_abuse, label: Child Abuse}
- {key: self_harm.general, label: Suicide and Self-harm}
- {key: adult_content.general, label: Adult Content}
- {key: unauthorised_sales.weapons, label: Weapons}
- {key: deny_topics.legal_advice, label: Legal Advice}
- {key: deny_topics.financial_advice, label: Financial Advice}
probes:
- {url: 'https://api.alice.io/asyncapi.json', http_status: 404}
- {url: 'https://api.alice.io/asyncapi.yaml', http_status: 404}
- {url: 'https://docs.activefence.com/asyncapi.json', http_status: 403}
- {source: 'https://api.github.com/orgs/ActiveFence/repos', http_status: 200, finding: '3 public repos, none containing an AsyncAPI document'}