harvest
Version:
Harvest API client library
62 lines (61 loc) • 1.54 kB
TypeScript
import { PagenationParameters } from './base/pagenation';
export interface TimeEntry {
id: number;
spent_date: string;
user: object;
user_assignment: object;
client: object;
project: object;
task: object;
task_assignment: object;
external_reference: object;
invoice: object;
hours: number;
notes: string;
is_locked: boolean;
locked_reason: string;
is_closed: boolean;
billable: boolean;
is_billed: boolean;
timer_started_at: string;
started_time: string;
ended_time: string;
is_running: boolean;
budgeted: boolean;
billable_rate: number;
cost_rate: number;
created_at: string;
updated_at: string;
}
export interface TimeEntriesPagenationResponse extends PagenationParameters {
time_entries: TimeEntry[];
}
export interface TimeEntriesPagenationParameters extends PagenationParameters {
user_id?: number;
client_id?: number;
project_id?: number;
is_billed?: boolean;
is_running?: boolean;
updated_since?: string;
from?: string;
to?: string;
}
export interface TimeEntryCreateFromDuration {
project_id: number;
task_id: number;
spent_date: string;
user_id?: number;
hours?: number;
notes?: string;
external_reference?: any;
}
export interface TimeEntryCreateFromStartAndEndTime {
project_id: number;
task_id: number;
spent_date: string;
user_id?: number;
started_time?: string;
ended_time?: string;
notes?: string;
external_reference?: any;
}