Supported Event Types
All webhook payloads follow the CloudEvents 1.0 specification. Each event has a type (e.g.ai.techwolf.employee.skill_profile.updated.v1) and a data object with tenant and resource identifiers. You only need to support the event types you consume; the healthcheck event is required for all consumers.
Event type reference
Events are grouped by entity. Follow the links to the full specification and example payload for each type. Employee- Skill Profile Updated - Employee Skills added/removed or attributes updated
- Skill Profile Updated - Job Skills added/removed or attributes updated
- Skill Profile Updated - Course Skills added/removed
- Skill Created - New Skill in vocabulary or Custom Skill created
- Skill Updated - Skill or Custom Skill updated
- Skill Deleted - Skill removed from vocabulary or Custom Skill deleted
- Taxonomy Updated - The tenant Taxonomy or Vocabulary changes
- Healthcheck - Liveness check
Event specifications
Below are the full specifications for each event type, grouped by entity: when it is emitted, expected frequency, suggested consumer action, and payload format. The expected frequency is expressed per affected entity (e.g. per Employee, per Job) and this is not the total number of webhooks per day. Note that this is only a high-level indication; actual frequency is dependent on the activity levels in the SkillEngine API or any linked system such as the TechWolf Skill Assistant, the TechWolf Console, external platforms with integrations, etc. TechWolf may add new fields to existing webhook versions (e.g. extra fields in thedata object). Your endpoint should tolerate unknown fields and not break when new ones are sent.
Employee Skill Profile Updated
| Detail | Specification |
|---|---|
| Emitted when | Skills are added or removed; Skill attributes are updated (e.g. proficiency, validation state). |
| Expected frequency | Daily (per Employee) |
| Suggested action | Retrieve the Employee Skill Profile from the SkillEngine API (GET /employees/{external_id}/skill_profile) and propagate changes. |
- v1 - latest version
Event type:
ai.techwolf.employee.skill_profile.updated.v1Event data| Field | Description |
|---|---|
tenant_name | Identifies the tenant. |
external_id | Employee’s external ID; use in the path when calling the API. |
Job Skill Profile Updated
| Detail | Specification |
|---|---|
| Emitted when | Job skills are added or removed; Skill attributes are updated (e.g. proficiency, criticality). |
| Expected frequency | Weekly–monthly (per Job) |
| Suggested action | Retrieve the Job Skill Profile from the SkillEngine API (GET /job_architecture/jobs/{job_external_id}/skill_profile) and propagate changes. |
- v1 - latest version
Event type:
ai.techwolf.job_architecture.job.skill_profile.updated.v1Event data| Field | Description |
|---|---|
tenant_name | Identifies the tenant. |
external_id | Job’s external ID; use in the path when calling the API. |
Course Skill Profile Updated
| Detail | Specification |
|---|---|
| Emitted when | Course skills are added or removed. |
| Expected frequency | Monthly (per Course) |
| Suggested action | Retrieve the Course Skill Profile from the SkillEngine API (GET /courses/{external_id}/skill_profile) and propagate changes. |
- v1 - latest version
Event type:
ai.techwolf.course.skill_profile.updated.v1Event data| Field | Description |
|---|---|
tenant_name | Identifies the tenant. |
external_id | Course’s external ID; use in the path when calling the API. |
Skill Created
| Detail | Specification |
|---|---|
| Emitted when | New Skills are added to the TechWolf vocabulary; Custom Skills are created. |
| Expected frequency | Monthly–quarterly (per Skill) |
| Suggested action | Retrieve the new Skill from the SkillEngine API (GET /taxonomy/skills/{skill_id}) and propagate changes. |
- v1 - latest version
Event type:
ai.techwolf.taxonomy.skill.created.v1Event data| Field | Description |
|---|---|
tenant_name | Identifies the tenant. |
external_id | Identifies the Skill. |
external_vendor | Indicates the Skill’s vendor; pass as the vendor query parameter when fetching the Skill from the API. |
Skill Updated
| Detail | Specification |
|---|---|
| Emitted when | Skills are updated in the TechWolf vocabulary; Custom Skills are updated. |
| Expected frequency | Monthly–quarterly (per Skill) |
| Suggested action | Retrieve the updated Skill from the SkillEngine API (GET /taxonomy/skills/{skill_id}) and propagate changes. |
- v1 - latest version
Event type:
ai.techwolf.taxonomy.skill.updated.v1Event data| Field | Description |
|---|---|
tenant_name | Identifies the tenant. |
external_id | Identifies the Skill. |
external_vendor | Indicates the Skill’s vendor; pass as the vendor query parameter when fetching the Skill from the API. |
Skill Deleted
| Detail | Specification |
|---|---|
| Emitted when | Skills are removed from the TechWolf vocabulary; Custom Skills are deleted. |
| Expected frequency | Monthly–quarterly (per Skill) |
| Suggested action | The Skill will no longer be available from the SkillEngine API (404). To handle out-of-order events, you can verify with GET /taxonomy/skills/{skill_id} and propagate the deletion. |
- v1 - latest version
Event type:
ai.techwolf.taxonomy.skill.deleted.v1Event data| Field | Description |
|---|---|
tenant_name | Identifies the tenant. |
external_id | Identifies the Skill. |
external_vendor | Indicates the Skill’s vendor; use as the vendor query parameter when verifying via the API. |
Taxonomy Updated
| Detail | Specification |
|---|---|
| Emitted when | The tenant Taxonomy or Vocabulary changes. |
| Expected frequency | Weekly (per tenant) |
| Suggested action | Retrieve Taxonomy changes from the SkillEngine API (POST /taxonomy/export). Filter by operation_type to get only the kind of change you need; use external_id from the event to request the specific change that triggered the webhook. |
- v1 - latest version
Event type:
ai.techwolf.taxonomy.updated.v1Event data| Field | Description |
|---|---|
tenant_name | Identifies the tenant. |
operation_type | Type of change; use to filter when calling the taxonomy or vocabulary export API. See POST /taxonomy/export for a full list of values. |
external_id | Identifies the specific change; pass when calling the taxonomy export API to fetch only that change. |
Healthcheck
| Detail | Specification |
|---|---|
| Emitted when | TechWolf checks that your webhook consumer is live. |
| Suggested action | Respond with a 2XX status code. No business logic required. |