openapi: 3.1.0 info: title: Aha! Account backups Time tracking events 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: Time tracking events paths: /api/v1/features/{feature_id}/time_tracking_events: post: summary: Create a time tracking event for a feature with remaining estimate description: null tags: - Time tracking events parameters: - name: feature_id in: path required: true schema: type: string description: FeatureId 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/TimetrackingeventsPostResponse' example: time_tracking_event: id: '6776881149487861795' 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' occurred_on: '2019-01-01' work_done: 5.0 work_units: 20 security: - OAuth2: [] - ApiKeyAuth: [] - CookieAuth: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TimetrackingeventsPostRequest' example: time_tracking_event: user_id: 689956296 work_done_text: 1h 30min remaining_estimate_text: 2h /api/v1/requirements/{requirement_id}/time_tracking_events: post: summary: Create a time tracking event for a requirement description: null tags: - Time tracking events parameters: - name: requirement_id in: path required: true schema: type: string description: RequirementId 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/TimetrackingeventsPostResponse' example: time_tracking_event: id: '6776881149499571657' 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' occurred_on: '2019-01-01' work_done: 120.0 work_units: 10 security: - OAuth2: [] - ApiKeyAuth: [] - CookieAuth: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TimetrackingeventsPostRequest' example: time_tracking_event: user_id: 689956296 work_done_text: 2h /api/v1/initiatives/{initiative_id}/time_tracking_events: post: summary: Create a time tracking event for an initiative description: null tags: - Time tracking events 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/TimetrackingeventsPostResponse' example: time_tracking_event: id: '6776881149484363523' 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' occurred_on: '2019-01-01' work_done: 120.0 work_units: 10 security: - OAuth2: [] - ApiKeyAuth: [] - CookieAuth: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TimetrackingeventsPostRequest' example: time_tracking_event: user_id: 689956296 work_done_text: 2h /api/v1/time_tracking_events/{id}: delete: summary: Delete a time tracking event description: null tags: - Time tracking events parameters: - name: id in: path required: true schema: type: string description: Id identifier responses: '204': description: No content - operation successful security: - OAuth2: [] - ApiKeyAuth: [] - CookieAuth: [] components: schemas: TimetrackingeventsPostResponse: type: object properties: time_tracking_event: type: object properties: id: type: string example: '6776881149484363523' user: type: object properties: id: type: string example: '1020675218' name: type: string example: Mary Humpty email: type: string example: no-reply@aha.io created_at: type: string example: '2019-01-01T00:00:00.000Z' updated_at: type: string example: '2019-01-01T00:00:00.000Z' example: 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' occurred_on: type: string example: '2019-01-01' work_done: type: number example: 120.0 work_units: type: integer example: 10 example: id: '6776881149484363523' 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' occurred_on: '2019-01-01' work_done: 120.0 work_units: 10 example: time_tracking_event: id: '6776881149484363523' 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' occurred_on: '2019-01-01' work_done: 120.0 work_units: 10 TimetrackingeventsPostRequest: type: object properties: time_tracking_event: type: object properties: user_id: type: integer example: 689956296 work_done_text: type: string example: 2h example: user_id: 689956296 work_done_text: 2h example: time_tracking_event: user_id: 689956296 work_done_text: 2h securitySchemes: OAuth2: type: oauth2 description: OAuth2 authentication with bearer tokens flows: authorizationCode: authorizationUrl: https://{account-domain}.aha.io/oauth/authorize tokenUrl: https://{account-domain}.aha.io/oauth/token scopes: {} ApiKeyAuth: type: http scheme: bearer description: API key authentication using Bearer token in Authorization header. Generate API keys at https://secure.aha.io/settings/api_keys CookieAuth: type: apiKey in: cookie name: session description: Cookie-based authentication for web browser integration