Goethena website screenshot

Goethena

Ethena (goethena.com) is an AI-powered compliance training and ethics platform used by 2,000+ organizations to run harassment prevention, code of conduct, data privacy, anti-bribery, and regulatory compliance programs across their workforce. Its Agentic Compliance product line pairs AI agents (Training, Disclosure, Policy, and Third-Party Risk) with a 200+ course library, an employee ethics hotline, HR case management, assignment automation, and reporting — with a human always approving what the agents draft. Ethena exposes a REST API (api.goethena.com) for managing learners, training campaigns, learner training campaigns and modules, and webhooks, so customers can sync roster and training-completion data with their HRIS and downstream systems. Backed by Felicis.

Goethena publishes 5 APIs on the APIs.io network, including Learner Training Campaigns API, Learner Training Modules API, Learners API, and 2 more. Tagged areas include Company, Compliance, Training, Human Resources, and Ethics.

The Goethena catalog on APIs.io includes 2 event-driven AsyncAPI specifications.

Goethena’s developer surface includes documentation, API reference, engineering blog, support, pricing, signup flow, authentication, and 19 more developer resources.

52.5/100 developing ▬ flat Agent 61/100 agent native Full breakdown ↓
scored 2026-07-27 · rubric v0.5
AccessSelf serve
5 APIs 1 MCP Servers
CompanyComplianceTrainingHuman ResourcesEthicsLearning ManagementAI AgentsGovernanceWorkforce

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-07-27 · rubric v0.5
Composite quality — 52.5/100 · developing
Contract Quality 18.2 / 25
Developer Ergonomics 9.6 / 20
Commercial Clarity 8.9 / 20
Operational Transparency 5.8 / 13
Governance 0.0 / 12
Discoverability 10.0 / 10
Agent readiness — 61/100 · agent native
Machine-Readable Contract 18 / 18
Agentic Access Contract 0 / 15
MCP Server 12 / 12
Machine-Readable Auth 10 / 10
Idempotency 0 / 9
Stable Error Semantics 8 / 8
Request/Response Examples 0 / 7
Rate-Limit Signaling 0 / 7
Typed Event Surface 6 / 6
Agent Skills 5 / 5
Well-Known Catalog 4 / 4
Consent & Bot Identity 0 / 3
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. This rating is computed from github.com/api-evangelist/goethena: open an issue to ask a question, or submit a pull request to add artifacts. Want it done for you? Prioritized profiling — $2,500 →

APIs 5

Individual APIs this provider publishes, each with its own machine-readable definition.

Goethena Learner Training Campaigns API

Learner training campaign information and operations.

Goethena Learner Training Modules API

Learner training module information and operations.

Goethena Learners API

Learner information and operations.

Goethena Training Campaigns API

Training campaign information and operations.

Goethena Webhooks API

Webhooks are not enabled by default, please work with your sales representative to have them enabled if you need them. Once you have access, webhooks can be managed through the ...

MCP Servers 1

Model Context Protocol servers that expose these APIs to AI agents.

goethena-mcp.yml

MCP SERVER

Event Specifications 2

AsyncAPI definitions for this provider's event-driven and streaming APIs.

Ethena Webhooks

AsyncAPI description of Ethena's webhook event surface, generated by the API Evangelist enrichment pipeline from the Ethena OpenAPI 3.1 webhooks object (openapi/goethena-openapi...

ASYNCAPI

Security Posture 2

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Goethena Authentication

http · 1 scheme

SECURITY

Goethena Domain Security

TLSv1.3 · HSTS · DNSSEC · DMARC

SECURITY

Resources

Get Started 2

Portal, sign-up, and the first successful call

Documentation 3

Reference material describing how the API behaves

Agent Surfaces 4

MCP servers, agent skills, and machine-readable catalogs

Design & Contract 6

Pagination, idempotency, versioning, errors, and events

Build 1

SDKs, sample code, and the tooling you integrate with

Access & Security 2

Authentication, authorization, and security posture

Operate 3

Status, limits, changes, and where to get help

Commercial 3

Pricing, plans, and the legal terms of use

Company 2

The organization behind the API

Source (apis.yml)

apis.yml Raw ↑
aid: goethena
name: Goethena
description: Ethena (goethena.com) is an AI-powered compliance training and ethics platform used by 2,000+ organizations to
  run harassment prevention, code of conduct, data privacy, anti-bribery, and regulatory compliance programs across their
  workforce. Its Agentic Compliance product line pairs AI agents (Training, Disclosure, Policy, and Third-Party Risk) with
  a 200+ course library, an employee ethics hotline, HR case management, assignment automation, and reporting — with a human
  always approving what the agents draft. Ethena exposes a REST API (api.goethena.com) for managing learners, training campaigns,
  learner training campaigns and modules, and webhooks, so customers can sync roster and training-completion data with their
  HRIS and downstream systems. Backed by Felicis.
accessModel:
  pricing: unknown
  onboarding: self-serve
  trial: false
  try_now: false
  public: false
  label: Self-serve signup
  confidence: medium
  source:
  - authentication
  generated: '2026-07-22'
  method: derived
image: https://www.goethena.com/wp-content/uploads/2025/12/Ethenas-Featured-Image.png
url: https://raw.githubusercontent.com/api-evangelist/goethena/refs/heads/main/apis.yml
x-type: company
x-source: vc-portfolio
x-backed-by:
- felicis
x-tier: stub
x-tier-reason: portfolio-lead
specificationVersion: '0.20'
created: '2026-07-17'
modified: '2026-07-19'
tags:
- Company
- Compliance
- Training
- Human Resources
- Ethics
- Learning Management
- AI Agents
- Governance
- Workforce
apis:
- aid: goethena:goethena-learner-training-campaigns-api
  name: Goethena Learner Training Campaigns API
  description: Learner training campaign information and operations.
  humanURL: https://api.goethena.com/docs/
  baseURL: https://api.goethena.com
  tags:
  - Learner Training Campaigns
  properties:
  - type: OpenAPI
    url: openapi/goethena-learner-training-campaigns-api-openapi.yml
  - type: Documentation
    url: https://api.goethena.com/docs/
  - type: APIReference
    url: https://api.goethena.com/docs/
- aid: goethena:goethena-learner-training-modules-api
  name: Goethena Learner Training Modules API
  description: Learner training module information and operations.
  humanURL: https://api.goethena.com/docs/
  baseURL: https://api.goethena.com
  tags:
  - Learner Training Modules
  properties:
  - type: OpenAPI
    url: openapi/goethena-learner-training-modules-api-openapi.yml
  - type: Documentation
    url: https://api.goethena.com/docs/
  - type: APIReference
    url: https://api.goethena.com/docs/
- aid: goethena:goethena-learners-api
  name: Goethena Learners API
  description: Learner information and operations.
  humanURL: https://api.goethena.com/docs/
  baseURL: https://api.goethena.com
  tags:
  - Learners
  properties:
  - type: OpenAPI
    url: openapi/goethena-learners-api-openapi.yml
  - type: Documentation
    url: https://api.goethena.com/docs/
  - type: APIReference
    url: https://api.goethena.com/docs/
- aid: goethena:goethena-training-campaigns-api
  name: Goethena Training Campaigns API
  description: Training campaign information and operations.
  humanURL: https://api.goethena.com/docs/
  baseURL: https://api.goethena.com
  tags:
  - Training Campaigns
  properties:
  - type: OpenAPI
    url: openapi/goethena-training-campaigns-api-openapi.yml
  - type: Documentation
    url: https://api.goethena.com/docs/
  - type: APIReference
    url: https://api.goethena.com/docs/
- aid: goethena:goethena-webhooks-api
  name: Goethena Webhooks API
  description: "Webhooks are not enabled by default, please work with your sales representative to have them enabled if you\
    \ need them.\n\nOnce you have access, webhooks can be managed through the API. Currently, only the following webhooks\
    \ are supported:\n  - Learner Training Campaign Completed\n\n# Security\n\nRequests to the webhook URL include a header\
    \ `X-Signature`, which contains a signature of the payload. This signature is generated using the secret key provided\
    \ when the webhook was created.\n\n## Signature Verification \n\nTo verify the signature of incoming requests, you need\
    \ the secret key for a webhook. This key can be retrieved by calling `GET /v1/webhooks/{id}` after webhook creation. The\
    \ secret key is not returned in the create webhook response. This key is used to generate a signature of the payload and\
    \ compare it with the `X-Signature` header in the request.\n\nThe signature is generated using the **HMAC SHA-256** algorithm.\
    \ The **secret key** is used as the key, and the **request payload** is used as the data. The resulting HMAC is then converted\
    \ into a hexadecimal string.\n\nFor example:\n\n```js\nconst crypto = require('crypto');\n\nconst signature = crypto\n\
    \  .createHmac('sha256', secretKey) \n  .update(JSON.stringify(payload))\n  .digest('hex');\n```\n\nIn this example:\n\
    \n1. `secretKey` is the secret key that can be retrieved by calling `GET /v1/webhooks/{id}` after webhook creation.\n\
    1. `payload` is the data you receive in the webhook request (usually in JSON format).\n1. The `crypto.createHmac()` function\
    \ creates a hash object, which uses the SHA-256 algorithm and the `secretKey` as the key.\n1. `update()` adds the stringified\
    \ payload to the hash.\n1. `digest('hex')` generates the HMAC hash in hexadecimal format, which can be compared to the\
    \ `X-Signature` header in the request.\n\n\n# Retry Policy\n\nWebhook requests will be attempted up to **three times**,\
    \ with a retry interval of **five minutes**, before being considered failed.\n\nA **30-second request timeout** is enforced,\
    \ meaning the webhook request must complete within 30 seconds. If the request exceeds this timeout, the attempt will be\
    \ considered failed."
  humanURL: https://api.goethena.com/docs/
  baseURL: https://api.goethena.com
  tags:
  - Webhooks
  properties:
  - type: OpenAPI
    url: openapi/goethena-webhooks-api-openapi.yml
  - type: Documentation
    url: https://api.goethena.com/docs/
  - type: APIReference
    url: https://api.goethena.com/docs/
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com
- FN: APIs.json
  email: info@apis.io
common:
- type: DomainSecurity
  url: security/goethena-domain-security.yml
- type: Website
  url: https://goethena.com
- type: Documentation
  url: https://api.goethena.com/docs/
- type: APIReference
  url: https://api.goethena.com/docs/
- type: Blog
  url: https://www.goethena.com/blog/
- type: Support
  url: https://help.goethena.com/hc/en-us
- type: GitHubOrganization
  url: https://github.com/goethena
- type: Pricing
  url: https://www.goethena.com/pricing-plans/
- type: Login
  url: https://api.goethena.com/login
- type: SignUp
  url: https://www.goethena.com/platform/contact-us/
- type: TermsOfService
  url: https://app.goethena.com/legal-and-privacy
- type: PrivacyPolicy
  url: https://www.goethena.com/legal/privacy-policy/
- type: LLMsTxt
  url: llms/goethena-llms.txt
- type: WellKnown
  url: well-known/goethena-well-known.yml
- type: MCPServer
  url: mcp/goethena-mcp.yml
- type: Authentication
  url: authentication/goethena-authentication.yml
- type: Conventions
  url: conventions/goethena-conventions.yml
- type: ErrorCatalog
  url: errors/goethena-problem-types.yml
- type: Lifecycle
  url: lifecycle/goethena-lifecycle.yml
- type: StatusPage
  url: https://status.goethena.com
- type: ChangeLog
  url: changelog/goethena-changelog.yml
- type: Conformance
  url: conformance/goethena-conformance.yml
- type: DataModel
  url: data-model/goethena-data-model.yml
- type: Webhooks
  url: asyncapi/goethena-webhooks.yml
- type: AsyncAPI
  url: asyncapi/goethena-events-asyncapi.yml
- type: AgentSkill
  url: skills/_index.yml
x-enrichment:
  date: '2026-07-19'
  status: backfilled
  pass: local-v1
  note: backfilled from .gitignore signal + verified work evidence