Aha! integration
Aha! is a product development platform for roadmaps, ideas and delivery. Through its API v3 an agent can list, read, create, update and delete features, epics, requirements, tasks (to-dos), comments, releases, release phases, iterations, initiatives, goals, key results, competitors, personas, tags, workspaces, custom field definitions and options, automations and their actions, and discovery studies and interviews, and read ideas, idea portals, portal and idea users, proxy votes, idea organizations, program increments, applications, users and strategy records. Lists filter with filter.<operator>[field] objects and page with a cursor (after, per_page up to 200). Not exposed: the API v1-only operations (creating ideas, votes or attachments), the PUT twin of each update (the PATCH tool sends the same body) and the annotation list (it needs an owner the spec does not let a caller pass). Authentication is an Aha! API key (Settings, Personal, Developer, API key) sent as a Bearer token; it acts with the permissions of the user who created it.
Say what should happen.
The workflow builds itself.
What you can do with Aha!
Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.
Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.
Automation, 5 operations
create_automationCreate automationPOSTCreates an automation in Aha! and returns it. Required: trigger_record_type. Once enabled, it runs its actions (updating records, creating comments or to-dos, sending email) by itself whenever its trigger fires.delete_automationDelete automationDELETEDeletes an automation.get_automationGet automationGETReturns one automation by id with its default fields; ask for other fields or related records with fields (for example fields=default,created_at).list_automationsList automationsGETLists automations in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.update_automationUpdate automationPATCHUpdates an automation: only the fields you send change. Leave out a field to keep its value. Enabling an automation makes it run its actions by itself whenever its trigger fires.
Automation action, 5 operations
create_automation_actionCreate automation actionPOSTCreates an automation action in Aha! and returns it. Required: automation_id, type. A send_email action emails real people each time the automation fires; send_to_integration sends records to an integration.delete_automation_actionDelete automation actionDELETEDeletes an automation action.get_automation_actionGet automation actionGETReturns one automation action by id with its default fields; ask for other fields or related records with fields (for example fields=default,created_at).list_automation_actionsList automation actionsGETLists automation actions in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.update_automation_actionUpdate automation actionPATCHUpdates an automation action: only the fields you send change. Leave out a field to keep its value. A send_email action emails real people each time the automation fires.
Comment, 5 operations
create_commentCreate commentPOSTCreates a comment in Aha! and returns it. Required: body, record_id, record_type. Attach it to a record with record_type and record_id; reply to a comment with parent_id.delete_commentDelete commentDELETEDeletes a comment.get_commentGet commentGETReturns one comment by id with its default fields; ask for other fields or related records with fields (for example fields=default,created_at).list_commentsList commentsGETLists comments in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.update_commentUpdate commentPATCHUpdates a comment: only the fields you send change. Leave out a field to keep its value.
Competitor, 5 operations
create_competitorCreate competitorPOSTCreates a competitor in Aha! and returns it. Required: project_id.delete_competitorDelete competitorDELETEDeletes a competitor.get_competitorGet competitorGETReturns one competitor by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_competitorsList competitorsGETLists competitors in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.update_competitorUpdate competitorPATCHUpdates a competitor: only the fields you send change. Leave out a field to keep its value.
Custom field option, 5 operations
create_custom_field_optionCreate custom field optionPOSTCreates a custom field option in Aha! and returns it. Required: name, custom_field_definition_id.delete_custom_field_optionDelete custom field optionDELETEDeletes a custom field option.get_custom_field_optionGet custom field optionGETReturns one custom field option by id with its default fields; ask for other fields or related records with fields (for example fields=default,created_at).list_custom_field_optionsList custom field optionsGETLists custom field options in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.update_custom_field_optionUpdate custom field optionPATCHUpdates a custom field option: only the fields you send change. Leave out a field to keep its value.
Discovery interview, 5 operations
create_discovery_interviewCreate discovery interviewPOSTCreates a discovery interview in Aha! and returns it. Required: name.delete_discovery_interviewDelete discovery interviewDELETEDeletes a discovery interview.get_discovery_interviewGet discovery interviewGETReturns one discovery interview by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_discovery_interviewsList discovery interviewsGETLists discovery interviews in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.update_discovery_interviewUpdate discovery interviewPATCHUpdates a discovery interview: only the fields you send change. Leave out a field to keep its value.
Discovery study, 5 operations
create_discovery_studyCreate discovery studyPOSTCreates a discovery study in Aha! and returns it. Required: name, project_id.delete_discovery_studyDelete discovery studyDELETEDeletes a discovery study.get_discovery_studyGet discovery studyGETReturns one discovery study by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_discovery_studiesList discovery studiesGETLists discovery studies in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.update_discovery_studyUpdate discovery studyPATCHUpdates a discovery study: only the fields you send change. Leave out a field to keep its value.
Epic, 5 operations
create_epicCreate epicPOSTCreates an epic in Aha! and returns it.delete_epicDelete epicDELETEDeletes an epic.get_epicGet epicGETReturns one epic by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_epicsList epicsGETLists epics in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.update_epicUpdate epicPATCHUpdates an epic: only the fields you send change. List fields (tags, watchers and the like) are merged: an item adds, an item with _destroy: true removes.
Custom field definition, 4 operations
create_custom_field_definitionCreate custom field definitionPOSTCreates a custom field definition in Aha! and returns it. Required: name, key, type, record_type.get_custom_field_definitionGet custom field definitionGETReturns one custom field definition by id with its default fields; ask for other fields or related records with fields (for example fields=default,created_at).list_custom_field_definitionsList custom field definitionsGETLists custom field definitions in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.update_custom_field_definitionUpdate custom field definitionPATCHUpdates a custom field definition: only the fields you send change. List fields (tags, watchers and the like) are merged: an item adds, an item with _destroy: true removes.
Feature, 4 operations
create_featureCreate featurePOSTCreates a feature in Aha! and returns it.delete_featureDelete featureDELETEDeletes a feature.get_featureGet featureGETReturns one feature by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_featuresList featuresGETLists features in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Goal, 4 operations
create_goalCreate goalPOSTCreates a goal in Aha! and returns it. Required: project_id.delete_goalDelete goalDELETEDeletes a goal.get_goalGet goalGETReturns one goal by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_goalsList goalsGETLists goals in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Initiative, 4 operations
create_initiativeCreate initiativePOSTCreates an initiative in Aha! and returns it. Required: project_id.delete_initiativeDelete initiativeDELETEDeletes an initiative.get_initiativeGet initiativeGETReturns one initiative by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_initiativesList initiativesGETLists initiatives in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Iteration, 4 operations
create_iterationCreate iterationPOSTCreates an iteration in Aha! and returns it. Required: project_id.delete_iterationDelete iterationDELETEDeletes an iteration.get_iterationGet iterationGETReturns one iteration by id or reference number with its default fields; ask for other fields or related records with fields (for example fields=default,created_at).list_iterationsList iterationsGETLists iterations in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Key result, 4 operations
create_key_resultCreate key resultPOSTCreates a key result in Aha! and returns it. Required: goal_id.delete_key_resultDelete key resultDELETEDeletes a key result.get_key_resultGet key resultGETReturns one key result by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields). Enterprise+ plans only.list_key_resultsList key resultsGETLists key results in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after. Enterprise+ plans only.
Persona, 4 operations
create_personaCreate personaPOSTCreates a persona in Aha! and returns it. Required: project_id.delete_personaDelete personaDELETEDeletes a persona.get_personaGet personaGETReturns one persona by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_personasList personasGETLists personas in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Release, 4 operations
create_releaseCreate releasePOSTCreates a release in Aha! and returns it. Required: project_id.delete_releaseDelete releaseDELETEDeletes a release.get_releaseGet releaseGETReturns one release by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_releasesList releasesGETLists releases in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Release phase, 4 operations
create_release_phaseCreate release phasePOSTCreates a release phase in Aha! and returns it. Required: type, release_id.delete_release_phaseDelete release phaseDELETEDeletes a release phase.get_release_phaseGet release phaseGETReturns one release phase by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_release_phasesList release phasesGETLists release phases in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Requirement, 4 operations
create_requirementCreate requirementPOSTCreates a requirement in Aha! and returns it. Required: feature_id.delete_requirementDelete requirementDELETEDeletes a requirement.get_requirementGet requirementGETReturns one requirement by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_requirementsList requirementsGETLists requirements in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Tag, 4 operations
create_tagCreate tagPOSTCreates a tag in Aha! and returns it. Required: name.delete_tagDelete tagDELETEDeletes a tag.get_tagGet tagGETReturns one tag by id with its default fields; ask for other fields or related records with fields (for example fields=default,created_at).list_tagsList tagsGETLists tags in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Task, 4 operations
create_taskCreate taskPOSTCreates a task in Aha! and returns it. Tasks are Aha! to-dos: assign one with assigned_to and attach it to a record with record_type and record_id.delete_taskDelete taskDELETEDeletes a task.get_taskGet taskGETReturns one task by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_tasksList tasksGETLists tasks in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Project, 3 operations
create_projectCreate projectPOSTCreates a workspace in Aha! and returns it. Required: name, reference_prefix.get_projectGet projectGETReturns one workspace by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_projectsList projectsGETLists workspaces in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Application, 2 operations
get_applicationGet applicationGETReturns one application by id with its default fields; ask for other fields or related records with fields (for example fields=default,created_at).list_applicationsList applicationsGETLists applications in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Business model component, 2 operations
get_business_model_componentGet business model componentGETReturns one business model component by id with its default fields; ask for other fields or related records with fields (for example fields=default,created_at).list_business_model_componentsList business model componentsGETLists business model components in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Idea, 2 operations
get_ideaGet ideaGETReturns one idea by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_ideasList ideasGETLists ideas in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Idea endorsement, 2 operations
get_idea_endorsementGet idea endorsementGETReturns one proxy vote by id with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_idea_endorsementsList idea endorsementsGETLists proxy votes in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Idea organization, 2 operations
get_idea_organizationGet idea organizationGETReturns one idea organization by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_idea_organizationsList idea organizationsGETLists idea organizations in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Idea portal, 2 operations
get_idea_portalGet idea portalGETReturns one idea portal by id with its default fields; ask for other fields or related records with fields (for example fields=default,created_at).list_idea_portalsList idea portalsGETLists idea portals in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Idea user, 2 operations
get_idea_userGet idea userGETReturns one idea user by id with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields). Personal data of idea portal users (name, email, phone).list_idea_usersList idea usersGETLists idea users in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after. Personal data of idea portal users (name, email, phone).
Portal user, 2 operations
get_portal_userGet portal userGETReturns one portal user by id with its default fields; ask for other fields or related records with fields (for example fields=default,created_at). Personal data of idea portal users.list_portal_usersList portal usersGETLists portal users in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after. Personal data of idea portal users.
Program increment, 2 operations
get_program_incrementGet program incrementGETReturns one program increment by id or reference number with its default fields; ask for other fields, related records or custom fields with fields (for example fields=default,custom_fields).list_program_incrementsList program incrementsGETLists program increments in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Strategy model, 2 operations
get_strategy_modelGet strategy modelGETReturns one strategic model by id or reference number with its default fields; ask for other fields or related records with fields (for example fields=default,created_at).list_strategy_modelsList strategy modelsGETLists strategic models in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Strategy position, 2 operations
get_strategy_positionGet strategy positionGETReturns one positioning by id or reference number with its default fields; ask for other fields or related records with fields (for example fields=default,created_at).list_strategy_positionsList strategy positionsGETLists positioning in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Strategy vision, 2 operations
get_strategy_visionGet strategy visionGETReturns one strategy vision by id with its default fields; ask for other fields or related records with fields (for example fields=default,created_at).list_strategy_visionsList strategy visionsGETLists strategy visions in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Strategy vision component, 2 operations
get_strategy_vision_componentGet strategy vision componentGETReturns one strategy vision component by id with its default fields; ask for other fields or related records with fields (for example fields=default,created_at).list_strategy_vision_componentsList strategy vision componentsGETLists strategy vision components in the Aha! account, newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
Annotation, 1 operation
get_annotationGet annotationGETReturns one annotation by id with its default fields; ask for other fields or related records with fields (for example fields=default,created_at).
Automation log, 1 operation
list_automation_messagesList automation messagesGETLists the run log of one automation (message, severity, time), newest first. Filter with the filter.* params (objects, AND-combined), sort with sort.asc or sort.desc, page with per_page (max 200) and after.
User, 1 operation
get_userGet userGETReturns one user by id with its default fields; ask for other fields or related records with fields (for example fields=default,created_at). Personal data (name, email).
Showing the first 120 of 132 endpoints. The rest are in the product, searchable from the workflow builder and from chat.
Use Aha! from Claude Code, Cursor or Codex
Connect Aha! in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Aha! operations become tools the client can call, next to every other integration you connected.
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"
[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"{
"mcpServers": {
"livecontext": {
"type": "http",
"url": "https://livecontext.ai/mcp",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}How to connect Aha!
- Create your workspace
Sign up free. Nothing to install.
- Connect Aha! once
Add your Aha! connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.
- Describe the job in chat
The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.
Aha! integration FAQ
What can you do with the Aha! integration?
LiveContext exposes 132 operations on Aha!, covering automation, automation action, comment and competitor.
