Skip to content

Commit ad29f5e

Browse files
committed
added reports endpoints schemas
1 parent 5b8ccd7 commit ad29f5e

26 files changed

+2898
-39
lines changed

Resources/harvest-openapi.yaml

Lines changed: 270 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4506,6 +4506,8 @@ paths:
45064506
responses:
45074507
200:
45084508
description: 'Clients Report'
4509+
schema:
4510+
$ref: '#/definitions/ExpenseReportsResult'
45094511
default:
45104512
description: 'error payload'
45114513
schema:
@@ -4550,6 +4552,8 @@ paths:
45504552
responses:
45514553
200:
45524554
description: 'Projects Report'
4555+
schema:
4556+
$ref: '#/definitions/ExpenseReportsResult'
45534557
default:
45544558
description: 'error payload'
45554559
schema:
@@ -4594,6 +4598,8 @@ paths:
45944598
responses:
45954599
200:
45964600
description: 'Expense Categories Report'
4601+
schema:
4602+
$ref: '#/definitions/ExpenseReportsResult'
45974603
default:
45984604
description: 'error payload'
45994605
schema:
@@ -4638,6 +4644,8 @@ paths:
46384644
responses:
46394645
200:
46404646
description: 'Team Report'
4647+
schema:
4648+
$ref: '#/definitions/ExpenseReportsResult'
46414649
default:
46424650
description: 'error payload'
46434651
schema:
@@ -4682,6 +4690,8 @@ paths:
46824690
responses:
46834691
200:
46844692
description: 'Uninvoiced Report'
4693+
schema:
4694+
$ref: '#/definitions/UninvoicedReportResult'
46854695
default:
46864696
description: 'error payload'
46874697
schema:
@@ -4726,6 +4736,8 @@ paths:
47264736
responses:
47274737
200:
47284738
description: 'Clients Report'
4739+
schema:
4740+
$ref: '#/definitions/TimeReportsResult'
47294741
default:
47304742
description: 'error payload'
47314743
schema:
@@ -4770,6 +4782,8 @@ paths:
47704782
responses:
47714783
200:
47724784
description: 'Projects Report'
4785+
schema:
4786+
$ref: '#/definitions/TimeReportsResult'
47734787
default:
47744788
description: 'error payload'
47754789
schema:
@@ -4814,6 +4828,8 @@ paths:
48144828
responses:
48154829
200:
48164830
description: 'Tasks Report'
4831+
schema:
4832+
$ref: '#/definitions/TimeReportsResult'
48174833
default:
48184834
description: 'error payload'
48194835
schema:
@@ -4858,6 +4874,8 @@ paths:
48584874
responses:
48594875
200:
48604876
description: 'Team Report'
4877+
schema:
4878+
$ref: '#/definitions/TimeReportsResult'
48614879
default:
48624880
description: 'error payload'
48634881
schema:
@@ -4890,6 +4908,8 @@ paths:
48904908
responses:
48914909
200:
48924910
description: 'Project Budget Report'
4911+
schema:
4912+
$ref: '#/definitions/ProjectBudgetReportResult'
48934913
default:
48944914
description: 'error payload'
48954915
schema:
@@ -6310,7 +6330,146 @@ definitions:
63106330
type: string
63116331
description: 'Date and time the user was last updated.'
63126332
format: date-time
6313-
Result:
6333+
ExpenseReportsResult:
6334+
type: object
6335+
externalDocs:
6336+
description: result
6337+
url: 'https://help.getharvest.com/api-v2/reports-api/reports/expense-reports/#the-result-object'
6338+
properties:
6339+
client_id:
6340+
type: integer
6341+
description: 'The ID of the client associated with the reported expenses. Only returned in the Client and Project reports.'
6342+
format: int32
6343+
client_name:
6344+
type: string
6345+
description: 'The name of the client associated with the reported expenses. Only returned in the Client and Project reports.'
6346+
project_id:
6347+
type: integer
6348+
description: 'The ID of the project associated with the reported expenses. Only returned in the Client and Project reports.'
6349+
format: int32
6350+
project_name:
6351+
type: string
6352+
description: 'The name of the project associated with the reported expenses. Only returned in the Client and Project reports.'
6353+
expense_category_id:
6354+
type: integer
6355+
description: 'The ID of the expense category associated with the reported expenses. Only returned in the Expense Category report.'
6356+
format: int32
6357+
expense_category_name:
6358+
type: string
6359+
description: 'The name of the expense category associated with the reported expenses. Only returned in the Expense Category report.'
6360+
user_id:
6361+
type: integer
6362+
description: 'The ID of the user associated with the reported expenses. Only returned in the Team report.'
6363+
format: int32
6364+
user_name:
6365+
type: string
6366+
description: 'The name of the user associated with the reported expenses. Only returned in the Team report.'
6367+
is_contractor:
6368+
type: boolean
6369+
description: 'The contractor status of the user associated with the reported expenses. Only returned in the Team report.'
6370+
total_amount:
6371+
type: number
6372+
description: 'The totaled cost for all expenses for the given timeframe, subject (client, project, expense category, or user), and currency.'
6373+
format: float
6374+
billable_amount:
6375+
type: number
6376+
description: 'The totaled cost for billable expenses for the given timeframe, subject (client, project, expense category, or user), and currency.'
6377+
format: float
6378+
currency:
6379+
type: string
6380+
description: 'The currency code associated with the expenses for this result.'
6381+
UninvoicedReportResult:
6382+
type: object
6383+
externalDocs:
6384+
description: result
6385+
url: 'https://help.getharvest.com/api-v2/reports-api/reports/uninvoiced-report/#the-result-object'
6386+
properties:
6387+
client_id:
6388+
type: integer
6389+
description: 'The ID of the client associated with the reported hours and expenses.'
6390+
format: int32
6391+
client_name:
6392+
type: string
6393+
description: 'The name of the client associated with the reported hours and expenses.'
6394+
project_id:
6395+
type: integer
6396+
description: 'The ID of the project associated with the reported hours and expenses.'
6397+
format: int32
6398+
project_name:
6399+
type: string
6400+
description: 'The name of the project associated with the reported hours and expenses.'
6401+
currency:
6402+
type: string
6403+
description: 'The currency code associated with the tracked hours for this result.'
6404+
total_hours:
6405+
type: number
6406+
description: 'The total hours for the given timeframe and project. If Time Rounding is turned on, the hours will be rounded according to your settings.'
6407+
format: float
6408+
uninvoiced_hours:
6409+
type: number
6410+
description: 'The total hours for the given timeframe and project that have not been invoiced. If Time Rounding is turned on, the hours will be rounded according to your settings.'
6411+
format: float
6412+
uninvoiced_expenses:
6413+
type: number
6414+
description: 'The total amount for billable expenses for the timeframe and project that have not been invoiced.'
6415+
format: float
6416+
uninvoiced_amount:
6417+
type: number
6418+
description: 'The total amount (time and expenses) for the timeframe and project that have not been invoiced.'
6419+
format: float
6420+
TimeReportsResult:
6421+
type: object
6422+
externalDocs:
6423+
description: result
6424+
url: 'https://help.getharvest.com/api-v2/reports-api/reports/time-reports/#the-result-object'
6425+
properties:
6426+
client_id:
6427+
type: integer
6428+
description: 'The ID of the client associated with the reported hours. Only returned in the Client and Project reports.'
6429+
format: int32
6430+
client_name:
6431+
type: string
6432+
description: 'The name of the client associated with the reported hours. Only returned in the Client and Project reports.'
6433+
project_id:
6434+
type: integer
6435+
description: 'The ID of the project associated with the reported hours. Only returned in the Client and Project reports.'
6436+
format: int32
6437+
project_name:
6438+
type: string
6439+
description: 'The name of the project associated with the reported hours. Only returned in the Client and Project reports.'
6440+
task_id:
6441+
type: integer
6442+
description: 'The ID of the task associated with the reported hours. Only returned in the Task report.'
6443+
format: int32
6444+
task_name:
6445+
type: string
6446+
description: 'The name of the task associated with the reported hours. Only returned in the Task report.'
6447+
user_id:
6448+
type: integer
6449+
description: 'The ID of the user associated with the reported hours. Only returned in the Team report.'
6450+
format: int32
6451+
user_name:
6452+
type: string
6453+
description: 'The name of the user associated with the reported hours. Only returned in the Team report.'
6454+
is_contractor:
6455+
type: boolean
6456+
description: 'The contractor status of the user associated with the reported hours. Only returned in the Team report.'
6457+
total_hours:
6458+
type: number
6459+
description: 'The totaled hours for the given timeframe, subject (client, project, task, or user), and currency. If Time Rounding is turned on, the hours will be rounded according to your settings.'
6460+
format: float
6461+
billable_hours:
6462+
type: number
6463+
description: 'The totaled billable hours for the given timeframe, subject (client, project, task, or user), and currency. If Time Rounding is turned on, the hours will be rounded according to your settings.'
6464+
format: float
6465+
currency:
6466+
type: string
6467+
description: 'The currency code associated with the tracked hours for this result. Only visible to Administrators and Project Managers with the View billable rates and amounts permission.'
6468+
billable_amount:
6469+
type: number
6470+
description: 'The totaled billable amount for the billable hours above. Only visible to Administrators and Project Managers with the View billable rates and amounts permission.'
6471+
format: float
6472+
ProjectBudgetReportResult:
63146473
type: object
63156474
externalDocs:
63166475
description: result
@@ -7287,7 +7446,115 @@ definitions:
72877446
format: int64
72887447
links:
72897448
$ref: '#/definitions/PaginationLinks'
7290-
Results:
7449+
ExpenseReportsResults:
7450+
type: object
7451+
required:
7452+
- results
7453+
- per_page
7454+
- total_pages
7455+
- total_entries
7456+
- next_page
7457+
- previous_page
7458+
- page
7459+
- links
7460+
properties:
7461+
results:
7462+
type: array
7463+
items:
7464+
$ref: '#/definitions/ExpenseReportsResult'
7465+
per_page:
7466+
type: integer
7467+
format: int64
7468+
total_pages:
7469+
type: integer
7470+
format: int64
7471+
total_entries:
7472+
type: integer
7473+
format: int64
7474+
next_page:
7475+
type: integer
7476+
format: int64
7477+
previous_page:
7478+
type: integer
7479+
format: int64
7480+
page:
7481+
type: integer
7482+
format: int64
7483+
links:
7484+
$ref: '#/definitions/PaginationLinks'
7485+
UninvoicedReportResults:
7486+
type: object
7487+
required:
7488+
- results
7489+
- per_page
7490+
- total_pages
7491+
- total_entries
7492+
- next_page
7493+
- previous_page
7494+
- page
7495+
- links
7496+
properties:
7497+
results:
7498+
type: array
7499+
items:
7500+
$ref: '#/definitions/UninvoicedReportResult'
7501+
per_page:
7502+
type: integer
7503+
format: int64
7504+
total_pages:
7505+
type: integer
7506+
format: int64
7507+
total_entries:
7508+
type: integer
7509+
format: int64
7510+
next_page:
7511+
type: integer
7512+
format: int64
7513+
previous_page:
7514+
type: integer
7515+
format: int64
7516+
page:
7517+
type: integer
7518+
format: int64
7519+
links:
7520+
$ref: '#/definitions/PaginationLinks'
7521+
TimeReportsResults:
7522+
type: object
7523+
required:
7524+
- results
7525+
- per_page
7526+
- total_pages
7527+
- total_entries
7528+
- next_page
7529+
- previous_page
7530+
- page
7531+
- links
7532+
properties:
7533+
results:
7534+
type: array
7535+
items:
7536+
$ref: '#/definitions/TimeReportsResult'
7537+
per_page:
7538+
type: integer
7539+
format: int64
7540+
total_pages:
7541+
type: integer
7542+
format: int64
7543+
total_entries:
7544+
type: integer
7545+
format: int64
7546+
next_page:
7547+
type: integer
7548+
format: int64
7549+
previous_page:
7550+
type: integer
7551+
format: int64
7552+
page:
7553+
type: integer
7554+
format: int64
7555+
links:
7556+
$ref: '#/definitions/PaginationLinks'
7557+
ProjectBudgetReportResults:
72917558
type: object
72927559
required:
72937560
- results
@@ -7302,7 +7569,7 @@ definitions:
73027569
results:
73037570
type: array
73047571
items:
7305-
$ref: '#/definitions/Result'
7572+
$ref: '#/definitions/ProjectBudgetReportResult'
73067573
per_page:
73077574
type: integer
73087575
format: int64

0 commit comments

Comments
 (0)