Aha.io Epics API
The Epics API from Aha.io — 6 operation(s) for epics.
The Epics API from Aha.io — 6 operation(s) for epics.
openapi: 3.1.0
info:
title: Aha! Account backups Epics API
version: 1.0.0
description: Complete API documentation for Aha! generated from actual test responses
contact:
name: Aha! Support
url: https://www.aha.io/support
servers:
- url: https://{account-domain}.aha.io/api/v1
description: Aha! API Server
variables:
account-domain:
description: Your Aha! account domain
default: company
security:
- OAuth2: []
- ApiKeyAuth: []
- CookieAuth: []
tags:
- name: Epics
paths:
/api/v1/epics:
get:
summary: List epics
description: 'Epics belong to releases. This means that if you want to create one then you must scope it to a release.
You can
[list them all](/api/resources/epics/list_epics)
at once, or filter by
[release](/api/resources/epics/list_epics_in_a_release)
or
[product](/api/resources/epics/list_epics_in_a_product).
All these means of listing epics can be further filtered by specific critera like name, modification date, tag, or assignee.
Once you have the id of a specific epic, you can
[inspect](/api/resources/epics/get_a_specific_epic),
[modify](/api/resources/epics/update_an_epic),
or
[delete](/api/resources/epics/delete_an_epic)
them on the root epics resource.'
tags:
- Epics
parameters: []
responses:
'200':
description: Successful operation
headers:
Content-Type:
description: application/json; charset=utf-8
schema:
type: string
content:
application/json; charset=utf-8:
schema:
$ref: '#/components/schemas/EpicsGetResponse'
example:
epics:
- id: '269219656'
reference_num: PRJ3-E-3
name: A different project epic
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ3-E-3
resource: http://company.aha.io/api/v1/epics/PRJ3-E-3
- id: '362457003'
reference_num: PRJ1-E-3
name: And a third
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ1-E-3
resource: http://company.aha.io/api/v1/epics/PRJ1-E-3
- id: '531908612'
reference_num: PRJ2-E-1
name: An epic in project 2
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ2-E-1
resource: http://company.aha.io/api/v1/epics/PRJ2-E-1
- id: '580753216'
reference_num: PRJ1-E-2
name: Here's another epic
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ1-E-2
resource: http://company.aha.io/api/v1/epics/PRJ1-E-2
- id: '999605892'
reference_num: PRJ1-E-1
name: Epic 1
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ1-E-1
resource: http://company.aha.io/api/v1/epics/PRJ1-E-1
pagination:
total_records: 5
total_pages: 1
current_page: 1
security:
- OAuth2: []
- ApiKeyAuth: []
- CookieAuth: []
/api/v1/releases/{release_id}/epics:
get:
summary: List epics in a release
description: 'Epics belong to releases. This means that if you want to create one then you must scope it to a release.
You can
[list them all](/api/resources/epics/list_epics)
at once, or filter by
[release](/api/resources/epics/list_epics_in_a_release)
or
[product](/api/resources/epics/list_epics_in_a_product).
All these means of listing epics can be further filtered by specific critera like name, modification date, tag, or assignee.
Once you have the id of a specific epic, you can
[inspect](/api/resources/epics/get_a_specific_epic),
[modify](/api/resources/epics/update_an_epic),
or
[delete](/api/resources/epics/delete_an_epic)
them on the root epics resource.'
tags:
- Epics
parameters:
- name: release_id
in: path
required: true
schema:
type: string
description: ReleaseId identifier
responses:
'200':
description: Successful operation
headers:
Content-Type:
description: application/json; charset=utf-8
schema:
type: string
content:
application/json; charset=utf-8:
schema:
$ref: '#/components/schemas/EpicsGetResponse'
example:
epics:
- id: '362457003'
reference_num: PRJ1-E-3
name: And a third
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ1-E-3
resource: http://company.aha.io/api/v1/epics/PRJ1-E-3
- id: '580753216'
reference_num: PRJ1-E-2
name: Here's another epic
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ1-E-2
resource: http://company.aha.io/api/v1/epics/PRJ1-E-2
- id: '999605892'
reference_num: PRJ1-E-1
name: Epic 1
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ1-E-1
resource: http://company.aha.io/api/v1/epics/PRJ1-E-1
pagination:
total_records: 3
total_pages: 1
current_page: 1
security:
- OAuth2: []
- ApiKeyAuth: []
- CookieAuth: []
post:
summary: Create an epic
description: 'Epics belong to releases. This means that if you want to create one then you must scope it to a release.
You can
[list them all](/api/resources/epics/list_epics)
at once, or filter by
[release](/api/resources/epics/list_epics_in_a_release)
or
[product](/api/resources/epics/list_epics_in_a_product).
All these means of listing epics can be further filtered by specific critera like name, modification date, tag, or assignee.
Once you have the id of a specific epic, you can
[inspect](/api/resources/epics/get_a_specific_epic),
[modify](/api/resources/epics/update_an_epic),
or
[delete](/api/resources/epics/delete_an_epic)
them on the root epics resource.'
tags:
- Epics
parameters:
- name: release_id
in: path
required: true
schema:
type: string
description: ReleaseId identifier
responses:
'200':
description: Successful operation
headers:
Content-Type:
description: application/json; charset=utf-8
schema:
type: string
content:
application/json; charset=utf-8:
schema:
$ref: '#/components/schemas/EpicsPostResponse'
example:
epic:
id: '6776881149493644653'
name: New epics
reference_num: PRJ1-E-251
initiative_reference_num: null
position: 1
score: 2
created_at: '2019-01-01T00:00:00.000Z'
updated_at: '2019-01-01T00:00:00.000Z'
start_date: null
due_date: null
product_id: '131414752'
progress: 0
progress_source: progress_manual
duration_source: duration_manual
status_changed_on: '2019-01-01'
created_by_user:
id: '601067208'
name: Jeremy Smith
email: no-reply@aha.io
created_at: '2019-01-01T00:00:00.000Z'
updated_at: '2019-01-01T00:00:00.000Z'
workflow_status:
id: '934242751'
name: New
position: 1
complete: false
color: '#dce7c6'
project:
id: '131414752'
reference_prefix: PRJ1
name: Project 1
product_line: false
created_at: '2019-01-01T00:00:00.000Z'
workspace_type: product_workspace
url: http://company.aha.io/projects/PRJ1
description:
id: '6776881149489925368'
body: New description
editor_version: 2
created_at: '2019-01-01T00:00:00.000Z'
updated_at: '2019-01-01T00:00:00.000Z'
attachments: []
attachments: []
integration_fields: []
url: http://company.aha.io/epics/PRJ1-E-251
resource: http://company.aha.io/api/v1/epics/PRJ1-E-251
release:
id: '278327321'
reference_num: PRJ1-R-1
name: Release 1
start_date: '2019-01-01'
release_date: '2019-01-01'
parking_lot: false
created_at: '2019-01-01T00:00:00.000Z'
product_id: '131414752'
integration_fields:
- id: '68217473'
name: id
value: '777'
integration_id: 204584239
service_name: jira
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/releases/PRJ1-R-1
resource: http://company.aha.io/api/v1/releases/PRJ1-R-1
owner:
id: '16338845'
name: John Smith
email: no-reply@aha.io
created_at: '2019-01-01T00:00:00.000Z'
updated_at: '2019-01-01T00:00:00.000Z'
project:
id: '131414752'
reference_prefix: PRJ1
name: Project 1
product_line: false
created_at: '2019-01-01T00:00:00.000Z'
workspace_type: product_workspace
url: http://company.aha.io/projects/PRJ1
assigned_to_user:
id: '689956296'
name: Henry Humpty
email: no-reply@aha.io
created_at: '2019-01-01T00:00:00.000Z'
updated_at: '2019-01-01T00:00:00.000Z'
default_assignee: true
features: []
goals: []
key_results: []
comments_count: 0
score_facts: []
tags: []
full_tags: []
custom_fields: []
workflow_status_times:
- status_id: '934242751'
status_name: New
started_at: '2019-01-01T00:00:00.000Z'
ended_at: null
epic_links: []
master_feature_only_original_estimate: 58.0
master_feature_only_remaining_estimate: 58.0
master_feature_only_work_done: null
epic_only_original_estimate: 58.0
epic_only_remaining_estimate: 58.0
epic_only_work_done: null
security:
- OAuth2: []
- ApiKeyAuth: []
- CookieAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/EpicsPostRequest'
example:
epic:
name: New name
description: New description
detailed_estimate_text: 58min
/api/v1/products/{product_id}/epics:
get:
summary: List epics in a product
description: 'Epics belong to releases. This means that if you want to create one then you must scope it to a release.
You can
[list them all](/api/resources/epics/list_epics)
at once, or filter by
[release](/api/resources/epics/list_epics_in_a_release)
or
[product](/api/resources/epics/list_epics_in_a_product).
All these means of listing epics can be further filtered by specific critera like name, modification date, tag, or assignee.
Once you have the id of a specific epic, you can
[inspect](/api/resources/epics/get_a_specific_epic),
[modify](/api/resources/epics/update_an_epic),
or
[delete](/api/resources/epics/delete_an_epic)
them on the root epics resource.'
tags:
- Epics
parameters:
- name: product_id
in: path
required: true
schema:
type: string
description: ProductId identifier
responses:
'200':
description: Successful operation
headers:
Content-Type:
description: application/json; charset=utf-8
schema:
type: string
content:
application/json; charset=utf-8:
schema:
$ref: '#/components/schemas/EpicsGetResponse'
example:
epics:
- id: '362457003'
reference_num: PRJ1-E-3
name: And a third
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ1-E-3
resource: http://company.aha.io/api/v1/epics/PRJ1-E-3
- id: '580753216'
reference_num: PRJ1-E-2
name: Here's another epic
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ1-E-2
resource: http://company.aha.io/api/v1/epics/PRJ1-E-2
- id: '999605892'
reference_num: PRJ1-E-1
name: Epic 1
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ1-E-1
resource: http://company.aha.io/api/v1/epics/PRJ1-E-1
pagination:
total_records: 3
total_pages: 1
current_page: 1
security:
- OAuth2: []
- ApiKeyAuth: []
- CookieAuth: []
post:
summary: Create an epic in the default release
description: 'Epics belong to releases. This means that if you want to create one then you must scope it to a release.
You can
[list them all](/api/resources/epics/list_epics)
at once, or filter by
[release](/api/resources/epics/list_epics_in_a_release)
or
[product](/api/resources/epics/list_epics_in_a_product).
All these means of listing epics can be further filtered by specific critera like name, modification date, tag, or assignee.
Once you have the id of a specific epic, you can
[inspect](/api/resources/epics/get_a_specific_epic),
[modify](/api/resources/epics/update_an_epic),
or
[delete](/api/resources/epics/delete_an_epic)
them on the root epics resource.'
tags:
- Epics
parameters:
- name: product_id
in: path
required: true
schema:
type: string
description: ProductId identifier
responses:
'200':
description: Successful operation
headers:
Content-Type:
description: application/json; charset=utf-8
schema:
type: string
content:
application/json; charset=utf-8:
schema:
$ref: '#/components/schemas/EpicsPostResponse'
example:
epic:
id: '6776881149485403843'
name: New name
reference_num: PRJ1-E-251
initiative_reference_num: null
position: 1
score: 2
created_at: '2019-01-01T00:00:00.000Z'
updated_at: '2019-01-01T00:00:00.000Z'
start_date: null
due_date: null
product_id: '131414752'
progress: 0
progress_source: progress_manual
duration_source: duration_manual
status_changed_on: '2019-01-01'
created_by_user:
id: '1020675218'
name: Mary Humpty
email: no-reply@aha.io
created_at: '2019-01-01T00:00:00.000Z'
updated_at: '2019-01-01T00:00:00.000Z'
workflow_status:
id: '934242751'
name: New
position: 1
complete: false
color: '#dce7c6'
project:
id: '131414752'
reference_prefix: PRJ1
name: Project 1
product_line: false
created_at: '2019-01-01T00:00:00.000Z'
workspace_type: product_workspace
url: http://company.aha.io/projects/PRJ1
description:
id: '6776881149495498605'
body: ''
editor_version: 2
created_at: '2019-01-01T00:00:00.000Z'
updated_at: '2019-01-01T00:00:00.000Z'
attachments: []
attachments: []
integration_fields: []
url: http://company.aha.io/epics/PRJ1-E-251
resource: http://company.aha.io/api/v1/epics/PRJ1-E-251
release:
id: '278327321'
reference_num: PRJ1-R-1
name: Release 1
start_date: '2019-01-01'
release_date: '2019-01-01'
parking_lot: false
created_at: '2019-01-01T00:00:00.000Z'
product_id: '131414752'
integration_fields:
- id: '68217473'
name: id
value: '777'
integration_id: 204584239
service_name: jira
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/releases/PRJ1-R-1
resource: http://company.aha.io/api/v1/releases/PRJ1-R-1
owner:
id: '16338845'
name: John Smith
email: no-reply@aha.io
created_at: '2019-01-01T00:00:00.000Z'
updated_at: '2019-01-01T00:00:00.000Z'
project:
id: '131414752'
reference_prefix: PRJ1
name: Project 1
product_line: false
created_at: '2019-01-01T00:00:00.000Z'
workspace_type: product_workspace
url: http://company.aha.io/projects/PRJ1
assigned_to_user:
id: '689956296'
name: Henry Humpty
email: no-reply@aha.io
created_at: '2019-01-01T00:00:00.000Z'
updated_at: '2019-01-01T00:00:00.000Z'
default_assignee: true
features: []
goals: []
key_results: []
comments_count: 0
score_facts: []
tags: []
full_tags: []
custom_fields: []
workflow_status_times:
- status_id: '934242751'
status_name: New
started_at: '2019-01-01T00:00:00.000Z'
ended_at: null
epic_links: []
master_feature_only_original_estimate: null
master_feature_only_remaining_estimate: null
master_feature_only_work_done: null
epic_only_original_estimate: null
epic_only_remaining_estimate: null
epic_only_work_done: null
security:
- OAuth2: []
- ApiKeyAuth: []
- CookieAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/EpicsPostRequest'
example:
epic:
name: New name
/api/v1/goals/{goal_id}/epics:
get:
summary: List epics associated with a goal
description: 'Epics belong to releases. This means that if you want to create one then you must scope it to a release.
You can
[list them all](/api/resources/epics/list_epics)
at once, or filter by
[release](/api/resources/epics/list_epics_in_a_release)
or
[product](/api/resources/epics/list_epics_in_a_product).
All these means of listing epics can be further filtered by specific critera like name, modification date, tag, or assignee.
Once you have the id of a specific epic, you can
[inspect](/api/resources/epics/get_a_specific_epic),
[modify](/api/resources/epics/update_an_epic),
or
[delete](/api/resources/epics/delete_an_epic)
them on the root epics resource.'
tags:
- Epics
parameters:
- name: goal_id
in: path
required: true
schema:
type: string
description: GoalId identifier
responses:
'200':
description: Successful operation
headers:
Content-Type:
description: application/json; charset=utf-8
schema:
type: string
content:
application/json; charset=utf-8:
schema:
$ref: '#/components/schemas/EpicsGetResponse'
example:
epics:
- id: '999605892'
reference_num: PRJ1-E-1
name: Epic 1
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ1-E-1
resource: http://company.aha.io/api/v1/epics/PRJ1-E-1
pagination:
total_records: 1
total_pages: 1
current_page: 1
security:
- OAuth2: []
- ApiKeyAuth: []
- CookieAuth: []
/api/v1/initiatives/{initiative_id}/epics:
get:
summary: List epics associated with an initiative
description: 'Epics belong to releases. This means that if you want to create one then you must scope it to a release.
You can
[list them all](/api/resources/epics/list_epics)
at once, or filter by
[release](/api/resources/epics/list_epics_in_a_release)
or
[product](/api/resources/epics/list_epics_in_a_product).
All these means of listing epics can be further filtered by specific critera like name, modification date, tag, or assignee.
Once you have the id of a specific epic, you can
[inspect](/api/resources/epics/get_a_specific_epic),
[modify](/api/resources/epics/update_an_epic),
or
[delete](/api/resources/epics/delete_an_epic)
them on the root epics resource.'
tags:
- Epics
parameters:
- name: initiative_id
in: path
required: true
schema:
type: string
description: InitiativeId identifier
responses:
'200':
description: Successful operation
headers:
Content-Type:
description: application/json; charset=utf-8
schema:
type: string
content:
application/json; charset=utf-8:
schema:
$ref: '#/components/schemas/EpicsGetResponse'
example:
epics:
- id: '269219656'
reference_num: PRJ3-E-3
name: A different project epic
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ3-E-3
resource: http://company.aha.io/api/v1/epics/PRJ3-E-3
- id: '362457003'
reference_num: PRJ1-E-3
name: And a third
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ1-E-3
resource: http://company.aha.io/api/v1/epics/PRJ1-E-3
- id: '580753216'
reference_num: PRJ1-E-2
name: Here's another epic
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ1-E-2
resource: http://company.aha.io/api/v1/epics/PRJ1-E-2
- id: '999605892'
reference_num: PRJ1-E-1
name: Epic 1
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ1-E-1
resource: http://company.aha.io/api/v1/epics/PRJ1-E-1
pagination:
total_records: 4
total_pages: 1
current_page: 1
security:
- OAuth2: []
- ApiKeyAuth: []
- CookieAuth: []
/api/v1/epics/{id}:
get:
summary: Get a specific epic
description: 'Epics belong to releases. This means that if you want to create one then you must scope it to a release.
You can
[list them all](/api/resources/epics/list_epics)
at once, or filter by
[release](/api/resources/epics/list_epics_in_a_release)
or
[product](/api/resources/epics/list_epics_in_a_product).
All these means of listing epics can be further filtered by specific critera like name, modification date, tag, or assignee.
Once you have the id of a specific epic, you can
[inspect](/api/resources/epics/get_a_specific_epic),
[modify](/api/resources/epics/update_an_epic),
or
[delete](/api/resources/epics/delete_an_epic)
them on the root epics resource.'
tags:
- Epics
parameters:
- name: id
in: path
required: true
schema:
type: string
description: Id identifier
responses:
'200':
description: Successful operation
headers:
Content-Type:
description: application/json; charset=utf-8
schema:
type: string
content:
application/json; charset=utf-8:
schema:
$ref: '#/components/schemas/EpicsGetResponse'
example:
epic:
id: '999605892'
name: Epic 1
reference_num: PRJ1-E-1
initiative_reference_num: PRJ1-S-1
position: 1
score: 42
created_at: '2019-01-01T00:00:00.000Z'
updated_at: '2019-01-01T00:00:00.000Z'
start_date: '2019-01-01'
due_date: '2019-01-01'
product_id: '131414752'
progress: null
progress_source: progress_manual
duration_source: duration_manual
status_changed_on: null
created_by_user:
id: '16338845'
name: John Smith
email: no-reply@aha.io
created_at: '2019-01-01T00:00:00.000Z'
updated_at: '2019-01-01T00:00:00.000Z'
workflow_status:
id: '934242751'
name: New
position: 1
complete: false
color: '#dce7c6'
project:
id: '131414752'
reference_prefix: PRJ1
name: Project 1
product_line: false
created_at: '2019-01-01T00:00:00.000Z'
workspace_type: product_workspace
url: http://company.aha.io/projects/PRJ1
description:
id: '4321567'
body: Body of Epic Description
editor_version: 1
created_at: '2019-01-01T00:00:00.000Z'
updated_at: '2019-01-01T00:00:00.000Z'
attachments: []
attachments: []
integration_fields:
- id: '790422735'
name: id
value: '433333335'
integration_id: 204584239
service_name: jira
created_at: '2019-01-01T00:00:00.000Z'
- id: '907392375'
name: key
value: JRA-1222223
integration_id: 204584239
service_name: jira
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/epics/PRJ1-E-1
resource: http://company.aha.io/api/v1/epics/PRJ1-E-1
release:
id: '278327321'
reference_num: PRJ1-R-1
name: Release 1
start_date: '2019-01-01'
release_date: '2019-01-01'
parking_lot: false
created_at: '2019-01-01T00:00:00.000Z'
product_id: '131414752'
integration_fields:
- id: '68217473'
name: id
value: '777'
integration_id: 204584239
service_name: jira
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/releases/PRJ1-R-1
resource: http://company.aha.io/api/v1/releases/PRJ1-R-1
owner:
id: '16338845'
name: John Smith
email: no-reply@aha.io
created_at: '2019-01-01T00:00:00.000Z'
updated_at: '2019-01-01T00:00:00.000Z'
project:
id: '131414752'
reference_prefix: PRJ1
name: Project 1
product_line: false
created_at: '2019-01-01T00:00:00.000Z'
workspace_type: product_workspace
url: http://company.aha.io/projects/PRJ1
assigned_to_user:
id: '16338845'
name: John Smith
email: no-reply@aha.io
created_at: '2019-01-01T00:00:00.000Z'
updated_at: '2019-01-01T00:00:00.000Z'
default_assignee: false
features:
- id: '1007868956'
reference_num: PRJ1-1
name: Feature 1
created_at: '2019-01-01T00:00:00.000Z'
url: http://company.aha.io/features/PRJ1-1
resource: http://company.aha.io/api/v1/features/PRJ1-1
product_id: '131414752'
initiative:
id: '423077122'
reference_nu
# --- truncated at 32 KB (141 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/aha/refs/heads/main/openapi/aha-epics-api-openapi.yml