5.0.0 • Published 5 years ago

@datafire/avaza v5.0.0

Weekly downloads
1
License
MIT
Repository
github
Last release
5 years ago

@datafire/avaza

Client library for Avaza API Documentation

Installation and Usage

npm install --save @datafire/avaza
let avaza = require('@datafire/avaza').create({
  access_token: "",
  refresh_token: "",
  client_id: "",
  client_secret: "",
  redirect_uri: ""
});

.then(data => {
  console.log(data);
});

Description

Welcome to the autogenerated documentation & test tool for Avaza's API. API Security & AuthenticationAuthentication options include OAuth2 Implicit and Authorization Code flows, and Personal Access Token. All connections should be encrypted over SSL/TLS You can set up and manage your api authentication credentials from within your Avaza account. (requires Administrator permissions on your Avaza account). OAuth2 Authorization endpoint: https://any.avaza.com/oauth2/authorize OAuth2 Token endpoint: https://any.avaza.com/oauth2/tokenBase URL for subsequent API Requests: https://api.avaza.com/ Blogpost about authenticating with Avaza's API: https://www.avaza.com/avaza-api-oauth2-authentication/ Blogpost on using Avaza's webhooks: https://www.avaza.com/avaza-api-webhook-notifications/The OAuth flow currently issues Access Tokens that last 1 day, and Refresh tokens that last 180 daysThe Api respects the security Roles assigned to the authenticating Avaza user and filters the data return appropriately. SupportFor API Support, and to request access please contact Avaza Support Team via our support chat. User Contributed Libraries:Graciously contributed by 3rd party users like you. Note these are not tested or endorsesd by Avaza. We encourage you to review before use, and use at own risk. - PHP OAuth Client Package for Azava API (by Debiprasad Sahoo)

Actions

Account_Get

Account Details

avaza.Account_Get(null, context)

Input

This action has no parameters

Output

Company_Get

Gets list of Companies

avaza.Company_Get({}, context)

Input

  • input object
    • UpdatedAfter string
    • pageSize integer: Number of results per page
    • pageNumber integer: 1 based page number to retrieve
    • Sort string

Output

Company_Post

Create a Company

avaza.Company_Post({
  "model": {
    "CompanyName": ""
  }
}, context)

Input

Output

Company_Put

Requires CompanyID and a list of field names to update. The FieldsToUpdate field accepts a string array containing field names that should be updated.

avaza.Company_Put({
  "model": {}
}, context)

Input

Output

Company_GetByID

Gets Company by Company ID

avaza.Company_GetByID({
  "id": 0
}, context)

Input

  • input object
    • id required integer: Company ID Number

Output

Contact_Get

Gets list of Contacts

avaza.Contact_Get({}, context)

Input

  • input object
    • UpdatedAfter string
    • pageSize integer: Number of items per page (max 1000)
    • pageNumber integer: Page to display. Starts from 1.
    • Sort string
    • CompanyIDFK integer

Output

Contact_Post

Create a Contact

avaza.Contact_Post({
  "model": {
    "ContactEmail": "",
    "Firstname": "",
    "Lastname": ""
  }
}, context)

Input

Output

Contact_GetByID

Gets Contact by Contact ID

avaza.Contact_GetByID({
  "id": 0
}, context)

Input

  • input object
    • id required integer: Contact ID number

Output

CreditNote_Get

Gets list of CreditNotes

avaza.CreditNote_Get({}, context)

Input

  • input object
    • UpdatedAfter string
    • pageSize integer: Number of items per page (max 1000)
    • pageNumber integer: Page to display. Starts from 1.

Output

CreditNote_GetByID

Gets Credit Note by CreditNoteID

avaza.CreditNote_GetByID({
  "id": 0
}, context)

Input

  • input object
    • id required integer: Credit Note ID Number

Output

Currency_Get

Gets list of Currencies

avaza.Currency_Get(null, context)

Input

This action has no parameters

Output

Estimate_Get

EstimateStatusCode values are: "Draft", "Sent", "Accepted", "Converted", "Expired", "Rejected"

avaza.Estimate_Get({}, context)

Input

  • input object
    • UpdatedAfter string
    • pageSize integer: Number of items per page (max 1000)
    • pageNumber integer: Page to display. Starts from 1.
    • Sort string
    • CompanyIDFK integer

Output

Estimate_Post

Create a new draft Estimate

avaza.Estimate_Post({
  "model": {}
}, context)

Input

Output

Estimate_GetByID

Gets Estimate by Estimate ID

avaza.Estimate_GetByID({
  "id": 0
}, context)

Input

  • input object
    • id required integer: Estimate Estimate ID number

Output

Output schema unknown

Expense_Get

Gets list of Expenses

avaza.Expense_Get({}, context)

Input

  • input object
    • UpdatedAfter string
    • ExpenseDateFrom string
    • ExpenseDateTo string
    • UserEmail string
    • CategoryName string
    • CustomerID integer
    • ProjectID integer
    • isChargeable boolean
    • isInvoiced boolean
    • ExpenseReimbursementIDFK integer
    • ExpensePaymentMethodIDFK integer
    • pageSize integer: Number of items per page (max 1000)
    • pageNumber integer: Page to display. Starts from 1.
    • Sort string

Output

Expense_Post

Create an Expense

avaza.Expense_Post({
  "model": {}
}, context)

Input

Output

Expense_GetByID

Gets an Expense Entry by Expense ID

avaza.Expense_GetByID({
  "id": 0
}, context)

Input

  • input object
    • id required integer: Expense ID number

Output

FixedAmount_Get

Gets list of Fixed Amounts

avaza.FixedAmount_Get({}, context)

Input

  • input object
    • UpdatedAfter string
    • EntryDateFrom string
    • EntryDateTo string
    • ProjectID integer: (Optional) The ProjectID of a Project to filter Fixed Amounts for
    • TaskID integer: (Optional) The TaskID of a Task to filter Fixed Amounts for
    • isInvoiced boolean
    • pageSize integer: Number of items per page (max 1000)
    • pageNumber integer: Page to display. Starts from 1.
    • Sort string: Optional sorting instruction. Currently possible values: "DateUpdated", "DateCreated", "DateUpdated desc", "DateCreated desc","EntryDate", "EntryDate desc", "StartTimeLocal","StartTimeLocal desc", "TimeSheetEntryID", "TimeSheetEntryID desc"

Output

Inventory_Get

Gets list of Inventory

avaza.Inventory_Get({}, context)

Input

  • input object
    • UpdatedAfter string
    • pageSize integer: Number of items per page (max 1000)
    • pageNumber integer: Page to display. Starts from 1.

Output

Inventory_GetByID

Gets InventoryItem by InventoryItem ID

avaza.Inventory_GetByID({
  "id": 0
}, context)

Input

  • input object
    • id required integer: InventoryItem ID number

Output

Output schema unknown

Invoice_Get

TransactionStatusCode values are: "Draft", "Sent", "Late", "Paid", "Partial", "Void"

avaza.Invoice_Get({}, context)

Input

  • input object
    • UpdatedAfter string
    • pageSize integer: Number of items per page (max 1000)
    • pageNumber integer: Page to display. Starts from 1.
    • Sort string
    • CompanyIDFK integer

Output

Invoice_Post

Create a new draft invoice

avaza.Invoice_Post({
  "model": {}
}, context)

Input

Output

Invoice_GetByID

Gets Invoice by Invoice ID

avaza.Invoice_GetByID({
  "id": 0
}, context)

Input

  • input object
    • id required integer: Invoice Transaction ID number

Output

Output schema unknown

Payment_Get

Gets list of Payments

avaza.Payment_Get({}, context)

Input

  • input object
    • UpdatedAfter string
    • pageSize integer: Number of items per page (max 1000)
    • pageNumber integer: Page to display. Starts from 1.

Output

Payment_Post

Create new Payment and optionally assign payment allocations to Invoices

avaza.Payment_Post({
  "model": {}
}, context)

Input

Output

Payment_GetByID

Gets Payment by Payment Transaction ID

avaza.Payment_GetByID({
  "id": 0
}, context)

Input

  • input object
    • id required integer: Invoice Transaction ID Number

Output

Project_Get

Gets list of Projects

avaza.Project_Get({}, context)

Input

  • input object
    • UpdatedAfter string: Only show project records updated after a certain date (UTC)
    • pageSize integer: Number of items per page (max 1000)
    • pageNumber integer: Page to display. Starts from 1.
    • Sort string: A column to sort on. Current possible values: "DateUpdated", "DateCreated", "DateUpdated desc", "DateCreated desc"
    • TimesheetUserID integer: Filter to the projects that the supplied UserID can add timesheets to
    • includeArchived boolean: Include Archived Projects in the results

Output

Project_Post

Create a Project

avaza.Project_Post({
  "model": {
    "ProjectTitle": ""
  }
}, context)

Input

Output

ProjectLookup

Gets minimal list of active Projects for the current user

avaza.ProjectLookup({}, context)

Input

  • input object
    • pageSize integer: Number of items per page (max 1000)
    • pageNumber integer: Page to display. Starts from 1.
    • TimesheetUserID integer: Filter to the projects that the supplied UserID can add timesheets to
    • search string: Search string to match against Project title and Customer name

Output

Project_GetByID

Gets Project by Project ID

avaza.Project_GetByID({
  "id": 0
}, context)

Input

  • input object
    • id required integer: Project ID number

Output

ProjectMember_Post

the Amount columns for Cost, Budget, Rates should be specified as a decimal. Financial amounts assume the currency of the Customer company. Budget units depend on the Budget method set on the Project.

avaza.ProjectMember_Post({
  "model": {}
}, context)

Input

Output

ProjectTimesheetCategory_Get

The default sort order is by isBillable desc, Name asc

avaza.ProjectTimesheetCategory_Get({}, context)

Input

  • input object
    • ProjectID integer: Get categories filtered by ProjectID

Output

ScheduleAssignment_Get

Schedule assignments are per-day, and link to a parent Schedule Series.

avaza.ScheduleAssignment_Get({}, context)

Input

  • input object
    • UpdatedAfter string: Limit results to records updated after the specified date
    • ScheduleDateFrom string: Filter for schedule assignement that are on or after a specific date
    • ScheduleDateTo string: Filter for schedules that are on or before a specific date
    • ScheduleSeriesID integer: Filter to records for a particular Schedule Series
    • UserID integer: The UserID of a schedule user to filter assignments for. Only api users with Admin role can see all schedules across all users. Users with ScheduleUser role can access their own ScheduleSeries.
    • UserEmail string: The email of the user who has been scheduled
    • pageSize integer: Number of items per page (max 1000)
    • pageNumber integer: Page to display. Starts from 1.
    • Sort string: Optional sorting instruction. Currently possible values: "DateUpdated", "DateCreated", "DateUpdated desc", "DateCreated desc"

Output

ScheduleSeries_Get

Schedule Series represents a strip of time assigned to a user over a date range, for a certain number of hours per day. They can be for Leave or for project work Bookings.

avaza.ScheduleSeries_Get({}, context)

Input

  • input object
    • UpdatedAfter string: Limit results to records updated after the specified date
    • ScheduleStartDateFrom string: Filter for schedules that start on or after a specific date
    • ScheduleStartDateTo string: Filter for schedules that start on or before a specific date
    • ScheduleEndDateFrom string: Filter for schedules that end on or after a specific date
    • ScheduleEndDateTo string: Filter for schedules that end on or before a specific date
    • UserID integer: The UserID of a schedule user to filter assignments for. Only api users with Admin role can see all schedules across all users. Users with ScheduleUser role can access their own ScheduleSeries.
    • UserEmail string: The email of the user who has been scheduled
    • TimeSheetCategoryID integer: Filter for schedule records linked to a specific timesheeet category
    • TimeSheetCategoryName string: Filter for schedule records with a specific timesheeet category name (exact string match)
    • LeaveTypeID integer: Filter to records of a particular leave type
    • ProjectID integer: Filter to only include books linked to a specific project
    • CompanyID integer: Filter to only include records linked to projects, where that project belongs to a specific customer company
    • pageSize integer: Number of items per page (max 1000)
    • pageNumber integer: Page to display. Starts from 1.
    • Sort string: Optional sorting instruction. Currently possible values: "DateUpdated", "DateCreated", "DateUpdated desc", "DateCreated desc"

Output

Section_Get

Gets list of Sections

avaza.Section_Get({
  "ProjectID": 0
}, context)

Input

  • input object
    • ProjectID required integer: Get sections for Project with ProjectID

Output

Section_Post

Create a Section

avaza.Section_Post({
  "model": {}
}, context)

Input

Output

Task_Delete

Delete a Task

avaza.Task_Delete({
  "TaskID": 0
}, context)

Input

  • input object
    • TaskID required integer

Output

  • output object

Task_Get

Gets list of Tasks

avaza.Task_Get({}, context)

Input

  • input object
    • UpdatedAfter string: Optional filter to records updated after a specific date.
    • pageSize integer: Number of items per page. Defaults to 20.
    • pageNumber integer: Page to display. Starts from 1. Defaults to 1
    • Sort string: Optional sorting instruction. Currently possible values: "DateUpdated", "DateCreated", "DateUpdated desc", "DateCreated desc", "SectionTitle", "Title"
    • isComplete boolean: Optional filter to only display tasks linked to a Task Status where isComplete=false, or where isComplete=true
    • ProjectID integer: Optional filter to only display tasks belonging to a specific ProjectID

Output

Task_Post

Create a Task

avaza.Task_Post({
  "model": {
    "ProjectIDFK": 0,
    "SectionIDFK": 0,
    "Title": ""
  }
}, context)

Input

Output

Task_Put

Requires TaskID and a list of field names to update. The FieldsToUpdate field accepts a string array containing field names that should be updated.

avaza.Task_Put({
  "model": {
    "TaskID": 0,
    "FieldsToUpdate": []
  }
}, context)

Input

Output

TaskLookup

Groups Tasks by Section. Default sort is by Section Title followed by Task Title

avaza.TaskLookup({}, context)

Input

  • input object
    • pageSize integer: Number of items per page (max 1000)
    • pageNumber integer: Page to display. Starts from 1.
    • projectID integer: (optional) The ProjectID to use when filtering Tasks
    • hideCompleted boolean: (optional) true/false to hide completed tasks. Defaults false
    • search string: (optional) Search string to match against Task title. Performs begins-with match

Output

Task_GetByID

Gets Task by Task ID

avaza.Task_GetByID({
  "id": 0
}, context)

Input

  • input object
    • id required integer: Task ID number

Output

TaskStatus_Get

Gets list of Task Statuses

avaza.TaskStatus_Get(null, context)

Input

This action has no parameters

Output

TaskType_Get

Gets list of Task Types

avaza.TaskType_Get(null, context)

Input

This action has no parameters

Output

Tax_Get

Get List of Taxes configured in the Avaza account.

avaza.Tax_Get(null, context)

Input

This action has no parameters

Output

Timesheet_Get

Gets list of Timsheets

avaza.Timesheet_Get({}, context)

Input

  • input object
    • UpdatedAfter string
    • EntryDateFrom string
    • EntryDateTo string
    • UserID integer: The UserID of a timesheet user to filter timesheets for. Only api users with certain higher roles can see timesheets across multiple users.
    • UserEmail string
    • CategoryName string
    • ProjectID integer
    • isBillable boolean
    • isInvoiced boolean
    • isTimerRunning boolean
    • pageSize integer: Number of items per page (max 1000)
    • pageNumber integer: Page to display. Starts from 1.
    • Sort string: Optional sorting instruction. Currently possible values: "DateUpdated", "DateCreated", "DateUpdated desc", "DateCreated desc","EntryDate", "EntryDate desc", "StartTimeLocal","StartTimeLocal desc", "TimeSheetEntryID", "TimeSheetEntryID desc"

Output

Timesheet_Post

Create a new Timesheet Entry

avaza.Timesheet_Post({
  "model": {}
}, context)

Input

Output

Timesheet_Put

The FieldsToUpdate field expects a string array collection of the field names you would like updated. Valid fields to update inlcude "ProjectIDFK", "TimeSheetCategoryIDFK", "TaskIDFK", "Duration", "EntryDate", "Notes", "hasStartEndTime". If you intend to provide start/end times on timesheets, this is achieved by including the start time in the EntryDate field (Iso date format), along with a Duration (decimal format).

avaza.Timesheet_Put({
  "model": {
    "TimeSheetEntryID": 0,
    "FieldsToUpdate": [],
    "ProjectIDFK": 0
  }
}, context)

Input

Output

Timesheet_Delete

Delete a Timesheet Entry

avaza.Timesheet_Delete({
  "id": 0
}, context)

Input

  • input object
    • id required integer: The id of the timesheet entry to be deleted

Output

  • output object

Timesheet_GetByID

Gets a Timesheet Entry by Timesheet ID

avaza.Timesheet_GetByID({
  "id": 0
}, context)

Input

  • input object
    • id required integer: Timesheet ID number

Output

TimesheetSubmission_Post

Either provide a a specific Day (WholeDayOf) or any day in a Week (WholeWeekOf) to submit all draft timesheets in that day or week

avaza.TimesheetSubmission_Post({}, context)

Input

  • input object
    • SendNotifications boolean: Send email alerts to timesheet approvers. Defaults to true
    • WholeWeekOf string: A date (yyyy-MM-dd) that falls within a Week to have all timesheets in that week submitted. Respects the First Day of Week setting in your account Timesheet Settings to determine the week range.
    • WholeDayOf string: A date (yyyy-MM-dd) to submit all timesheets on this day
    • UserID integer: The user to submit timesheets for. Defaults to current user. Only allowed to be different from the current user when the current user has rights to Impersonate other users.

Output

  • output object

TimesheetSummary_Get

Gets Basic Summary of Timesheet Statistics

avaza.TimesheetSummary_Get({}, context)

Input

  • input object
    • model.groupBy array: (Optional) Combine one, two or three levels of Grouping. Combine these possible grouping values: "Customer", "Project", "Category", "User", "Task", "Year", "Month", "Day", "Week".
    • model.entryDateFrom string: (Required) Filter for timesheets greater or equal to the specified date. e.g. 2019-01-25. You can optionally include a time component, otherwise it assumes 00:00
    • model.entryDateTo string: (Required) Filter for timesheets with an entry date smaller or equal to the specified date. e.g. 2019-01-25. You can optionally include a time component, otherwise it assumes 00:00
    • model.userID array: (Optional) Defaults to the current user. Provide one or more UserIDs of Users whose timesheets should be retrieved. If the current user doesn't have impersonation rights, then they will only see their own data.
    • model.projectID integer: (Optional) Filter by Project
    • model.isBillable boolean: (Optional) Filter by the billable status of Timesheets.
    • model.isInvoiced boolean: (Optional) Filter for timesheets by whether they have been Invoiced or not.

Output

TimesheetTimer_GetRunningTimer

Gets the Running Timer if there is one for a user.

avaza.TimesheetTimer_GetRunningTimer({}, context)

Input

  • input object
    • UserID integer: Optional - User ID number if impersonating a different user. Otherwise assumes the current user. Only users with certain security roles have permission to impersonate other users

Output

  • output object

TimesheetTimer_StopTimer

Stop the timer running on an existing Timesheet Entry

avaza.TimesheetTimer_StopTimer({
  "id": 0
}, context)

Input

  • input object
    • id required integer: The ID of the existing timesheet entry that needs its timer stopped
    • UserID integer: Optional - User ID number if impersonating a different user. Otherwise assumes the current user. Only users with certain security roles have permission to impersonate other users

Output

  • output object

TimesheetTimer_StartTimer

Starts a Timer running on an existing Timesheet Entry

avaza.TimesheetTimer_StartTimer({
  "id": 0
}, context)

Input

  • input object
    • id required integer: id of timesheet entry that should be used as the basis for running a timer. If the existing timesheet is not on the current day, or you have start/end times enabled, then a new timesheet will be created for the timer.
    • UserID integer: Optional - User ID number if impersonating a different user. Otherwise assumes the current user. Only users with certain security roles have permission to impersonate other users

Output

  • output object

UserProfile_Get

Admin and Invoice Managers can see all. Other users are limited to seeing their own profile.

avaza.UserProfile_Get({}, context)

Input

  • input object
    • Roles string: Optional list of comma separated role codes to filter users by (e.g. "TimesheetUser,Admin")
    • Tags string
    • CurrentUserOnly boolean: Optional boolean (true/false) to filter to only show current authenticated user (always true for non Admin/InvoiceManager users)
    • CompanyIDFK integer: Optionally filter by Company ID

Output

Webhook_DeleteByUrl

Delete webhook subscription by URL

avaza.Webhook_DeleteByUrl({
  "target_url": ""
}, context)

Input

  • input object
    • target_url required string: Target URL that should be used to delete subscriptions

Output

  • output object

Webhook_Get

Get list of Webhook Subscriptions

avaza.Webhook_Get(null, context)

Input

This action has no parameters

Output

Webhook_Post

When you receive a webhook, you should respond with Http 200 OK Status Code, otherwise we will retry. To create a webhook, you need both the webhook_notifications scope, as well as the scope for the required entity being monitored. Event values are: "company_created", "company_deleted", "company_updated", "contact_created", "contact_deleted", "contact_updated", "invoice_created", "invoice_sent","invoice_updated","invoice_deleted", "project_created", "project_deleted", "project_updated", "task_created", "task_updated","task_deleted", "timesheet_created", "timesheet_deleted", "timesheet_updated". You can subscribe to any webhook, but you will only receive notifications for data appropriate to the roles of your user account. There is an optional Secret parameter (string 255 char max). This allows for webhook authentication. If provided, the Secret will be BASE 64 encoded and passed with notications as a basic authentication http header. i.e. Authorization Basic BASE64 of Secret"

avaza.Webhook_Post({
  "model": {
    "target_url": "",
    "event": ""
  }
}, context)

Input

Output

Webhook_Delete

Delete Webhook Subscription by ID

avaza.Webhook_Delete({
  "id": 0
}, context)

Input

  • input object
    • id required integer: Subscription id to be deleted

Output

  • output object

Definitions

AccountDetails

  • AccountDetails object
    • AccountID integer
    • AllowHidingCompletedTasksOnTimesheet boolean
    • CompanyName string
    • CurrentServerTimeISO string: Format: ISO "YYYY-MM-DD HH:mm:ss.SSS"
    • LockApprovedTimesheets boolean
    • SC string
    • Subdomain string
    • TimesheetDayOfWeek integer
    • TimesheetDisplayFormatCode string
    • WeeklyTimesheetReminder boolean
    • has24HourTimesheetFormat boolean
    • hasStartEndTimesheets boolean

AccountTaskTypeDetails

  • AccountTaskTypeDetails object
    • AccountTaskTypeID integer
    • Icon string
    • IconType string
    • Name string
    • isDefault boolean

Company

  • Company object
    • BillingAddress string
    • BillingAddressCity string
    • BillingAddressLine string
    • BillingAddressPostCode string
    • BillingAddressState string
    • BillingCountryCode string
    • Comments string
    • CompanyID integer
    • CompanyName string
    • Contacts array
    • CurrencyCode string
    • DateCreated string
    • DateUpdated string
    • DefaultTradingTermIDFK integer
    • Fax string
    • Phone string
    • TaxNumber string
    • website string

CompanyContact

  • CompanyContact object
    • CompanyIDFK integer
    • CompanyName string
    • ContactID integer
    • DateCreated string
    • DateUpdated string
    • Email string
    • Firstname string
    • Lastname string
    • Mobile string
    • Phone string
    • PositionTitle string
    • TimeZone string

CompanyList

  • CompanyList object
    • Companies array
    • PageNumber integer
    • PageSize integer
    • TotalCount integer

ContactList

  • ContactList object
    • Contacts array
    • PageNumber integer
    • PageSize integer
    • TotalCount integer

CreateSubscription

  • CreateSubscription object: New Subscription to be Created
    • event required string: The event code to be notified about. Possible values: company_created, contact_created, invoice_created, invoice_sent, project_created, task_created
    • secret string: Optional Secret string (255 char max). If provided, the secret will be BASE 64 encoded and used as a basic authentication http header with webhook notifications. i.e. Authorization Basic BASE64 of Secret"
    • target_url required string: The URL that should be notified of the event.

CreditNote

  • CreditNote object
    • Balance number
    • CreditNoteAllocations array
    • CreditNoteLineItems array
    • CreditNoteNumber string
    • CurrencyCode string
    • CustomerIDFK integer
    • DateCreated string
    • DateIssued string
    • DateUpdated string
    • Notes string
    • TotalAmount number
    • TransactionID integer
    • TransactionPrefix string
    • TransactionStatusCode string

CreditNoteAllocation

  • CreditNoteAllocation object
    • AllocationAmount number
    • AllocationDate string
    • CreditNoteTransactionIDFK integer
    • InvoiceTransactionIDFK integer
    • TransactionAllocationID integer

CreditNoteLineItem

  • CreditNoteLineItem object
    • Amount number
    • Description string
    • Discount number
    • Quantity number
    • TaxAmount number
    • TaxIDFK integer
    • TransactionLineItemID integer
    • UnitPrice number

CreditNoteList

  • CreditNoteList object
    • CreditNotes array
    • PageNumber integer
    • PageSize integer
    • TotalCount integer

Currency

  • Currency object
    • CurrencyCode string
    • DecimalPlaces integer
    • Name string
    • Symbol string
    • Symbol2 string

CurrencyList

  • CurrencyList object

EstimateDetails

  • EstimateDetails object
    • AccountIDFK integer
    • Balance number
    • CompanyIDFK integer
    • CompanyName string
    • CurrencyCode string
    • DateCreated string
    • DateIssued string
    • DateSent string
    • DateUpdated string
    • DueDate string
    • EstimateID integer
    • EstimateItemNumber string
    • EstimatePrefix string
    • EstimateStatusCode string
    • EstimateTaxConfigCode string
    • ExchangeRate number
    • Issuer IssuerDetails
    • LineItems array
    • Links EstimateLinks
    • Notes string
    • Recipient RecipientDetails
    • Subject string
    • TaxAmount number
    • TotalAmount number

EstimateLineItemDetails

  • EstimateLineItemDetails object
    • Amount number
    • Description string
    • Discount number
    • EstimateLineItemID integer
    • InventoryItemIDFK integer
    • InventoryItemName string
    • InventoryItemSKU string
    • Quantity number
    • TaxAmount number
    • TaxCode string
    • TaxIDFK integer
    • TaxName string
    • UnitPrice number

EstimateLinks

  • EstimateLinks object
    • ClientView string
    • Edit string
    • View string

EstimateList

  • EstimateList object
    • Estimates array
    • PageNumber integer
    • PageSize integer
    • TotalCount integer

ExpenseDetails

  • ExpenseDetails object
    • Amount number
    • AttachmentURL string
    • ChargeableStatusCode string
    • CurrencyCode string
    • CustomerIDFK integer
    • CustomerName string
    • DateCreated string
    • DateUpdated string
    • Email string
    • ExchangeRate number
    • ExpenseApprovalStatusCode string
    • ExpenseCategoryHasUnitPrice boolean
    • ExpenseCategoryIDFK integer
    • ExpenseCategoryName string
    • ExpenseCategoryUnitName string
    • ExpenseCategoryUnitPrice number
    • ExpenseDate string
    • ExpenseID integer
    • ExpensePaymentMethodIDFK integer
    • ExpensePaymentMethodName string
    • ExpenseReimbursementIDFK integer
    • ExpenseReimbursementStatusCode string
    • ExpenseReportIDFK integer
    • ExpenseReportName string
    • Firstname string
    • Lastname string
    • Merchant string
    • MerchantTaxNumber string
    • Notes string
    • ProjectIDFK integer
    • ProjectTitle string
    • Quantity number
    • TaxAmount number
    • TaxIDFK integer
    • TransactionTaxConfigCode string
    • UserIDFK integer
    • isChargeable boolean
    • isReimbursable boolean

ExpenseList

  • ExpenseList object
    • Expenses array
    • PageNumber integer
    • PageSize integer
    • TotalCount integer

FixedAmountDetails

  • FixedAmountDetails object
    • Amount number
    • DateCreated string
    • DateUpdated string
    • FixedAmountID integer
    • InventoryItemIDFK integer
    • InventoryItemName string
    • Notes string
    • ProjectIDFK integer
    • ProjectTitle string
    • TaskIDFK integer
    • TaskTitle string
    • UpdatedByUserIDFK integer
    • isInvoiced boolean

FixedAmountList

  • FixedAmountList object
    • FixedAmounts array
    • PageNumber integer
    • PageSize integer
    • TotalCount integer

InventoryItem

  • InventoryItem object
    • CostPrice number
    • DateCreated string
    • DateUpdated string
    • Description string
    • InventoryItemID integer
    • Name string
    • SKU string
    • SalePrice number
    • SaleTaxIDFK integer
    • isHidden boolean

InventoryList

  • InventoryList object
    • Inventory array
    • PageNumber integer
    • PageSize integer
    • TotalCount integer

Invoice

  • Invoice object
    • AccountIDFK integer
    • Balance number
    • CompanyIDFK integer
    • CompanyName string
    • CurrencyCode string
    • CustomerPONumber string
    • DateCreated string
    • DateIssued string
    • DateSent string
    • DateUpdated string
    • DueDate string
    • ExchangeRate number
    • InvoiceNumber string
    • Issuer IssuerDetails
    • LineItems array
    • Links InvoiceLinks
    • Notes string
    • Recipient RecipientDetails
    • Subject string
    • TaxAmount number
    • TotalAmount number
    • TransactionID integer
    • TransactionPrefix string
    • TransactionStatusCode string
    • TransactionTaxConfigCode string

InvoiceLineItem

  • InvoiceLineItem object
    • Amount number
    • Description string
    • Discount number
    • InventoryItemIDFK integer
    • InventoryItemName string
    • InventoryItemSKU string
    • ProjectIDFK integer
    • ProjectTitle string
    • Quantity number
    • TaxAmount number
    • TaxCode string
    • TaxIDFK integer
    • TaxName string
    • TransactionLineItemID integer
    • UnitPrice number

InvoiceLinks

  • InvoiceLinks object
    • ClientView string
    • Edit string
    • View string

InvoiceList

  • InvoiceList object
    • Invoices array
    • PageNumber integer
    • PageSize integer
    • TotalCount integer

IssuerDetails

  • IssuerDetails object
    • BillingAddress string
    • BillingAddressCity string
    • BillingAddressLine string
    • BillingAddressPostCode string
    • BillingAddressState string
    • BillingCountryCode string
    • TaxNumber string

NewCompany

  • NewCompany object
    • BillingAddress string
    • BillingAddressCity string
    • BillingAddressLine string
    • BillingAddressPostCode string
    • BillingAddressState string
    • BillingCountryCode string
    • Comments string
    • CompanyName required string
    • CurrencyCode string
    • Fax string
    • Phone string
    • TaxNumber string
    • website string

NewCompanyContact

  • NewCompanyContact object
    • CompanyBillingAddress string
    • CompanyBillingAddressCity string
    • CompanyBillingAddressCountryCode string
    • CompanyBillingAddressLine string
    • CompanyBillingAddressPostCode string
    • CompanyBillingAddressState string
    • CompanyIDFK integer
    • CompanyName string
    • ContactEmail required string
    • CurrencyCode string
    • Firstname required string
    • Lastname required string
    • Mobile string
    • Phone string
    • PositionTitle string
    • UpdateExisting boolean

NewEstimate

  • NewEstimate object: New Estimate to be created
    • CompanyIDFK integer: If left blank then you must specify Company Name.
    • CompanyName string: If left blank then you must specify Company ID. Specified Name will be used to match existing customer record. If not matched then it will be used to create a new customer. First Name, Last Name and Email will only be used if it is a new company. If the Company name appears multiple times we will check the email address to find a matching company. If email address doesn't identify a matching company then the Estimate creation will be rejected.
    • CurrencyCode string: Expects ISO Standard 3 character currency code. If left blank the currency will default to account's currency in general setting. For existing companies this field will be ignored and the Estimate will use the currency of the customer. For new customers if the currency is not specified then account currency will be used otherwise the specified currency will be used.
    • CustomerPONumber string: Plain UTF8 text. 100 characters max
    • DateIssued string: If not specified it will use today's date. The date should be specified as local date.
    • DueDate string: It will be auto calculated based on the payment term and issue date. Due Date must be greater than or equal to Issue Date. If the Due Date is specified then Payment Terms will be set to -1 (Custom)
    • Email string: Specified value will be used to create a new customer contact only if a new customer is being created.
    • EstimateNumber string: Pass any string. If left blank it will use the next number in the auto incrementing sequence. If an integer is passed then the largest integer will be use as the seed to auto generate the next Estimate number in the sequence.
    • EstimatePrefix string: A prefix for the Estimate number. e.g. 'INV'. If left blank it will be set to the account default. Max length 20 characters.
    • EstimateTaxConfigCode string: Possible values are (EX --- Tax Exclusive, INC --- Tax Inclusive). If left empty it will use the account default.
    • ExchangeRate number: Exchange rate is only valid for Estimates in currency other than default account currency. If not specified it will get the market rate based on the Date Issued.
    • Firstname string: Specified value will be used to create a new customer contact only if a new customer is being created.
    • InvoiceTemplateIDFK integer: If left blank the account default Estimate template will be used.
    • Lastname string: Specified value will be used to create a new customer contact only if a new customer is being created.
    • LineItems array
    • Notes string: Plain UTF8 text. (no HTML). Max 2000 characters
    • Subject string: Plain UTF8 text. (no HTML). 255 characters max

NewEstimateLineItem

  • NewEstimateLineItem object: Line item to be added to new Estimate
    • Description string: Plain UTF8 text. (no HTML)
    • Discount number: Enter 10.5 to give a 10.5% discount
    • InventoryItemIDFK integer: If not specified then Inventory Item Name must be specified.
    • InventoryItemName string: If not specified then Inventory item ID must be specified. If specified and not matched to any existing inventory items then a new inventory item will be created. Max 200 characters.
    • Quantity required number: The quantity for the line item
    • TaxIDFK integer: If specified then it must match an existing Tax ID. If not specified then Tax Name and Tax Percent must be specified.
    • TaxName string: Must be specified if the Tax ID is blank. If the Tax Name is specified it will be matched to an existing Tax Name or else a new Tax will be created.
    • TaxPercent number: The Tax Percent will only be used if a new tax is being created.
    • UnitPrice required number: The unit price for the lineitem.

NewExpense

  • NewExpense object
    • Amount number: Expense Amount (Required). Must be >= 0
    • CurrencyCode string: A 3-letter ISO CurrencyCode for the expense currency. (e.g. USD). If not provided, defaults to the Account base currency.
    • CustomerIDFK integer: The Avaza Customer ID to associate the Expense with. Either this field or CustomerName can be provided.
    • CustomerName string: The name of an existing customer in Avaza. Must be an exact (case insensitive) match.
    • ExchangeRate number: Optional (Only relevant if the expense currency is different to your account currency. If not provided we will look up the market exchange rate for you based on the expense date.) Exchange Rate = Expense Currency Amount / Base Currency Amount (e.g. if Expense currency is in AUD, and Base Currency is in USD, Exchange Rate = AUD $140 / USD $100 = 1.4)
    • ExpenseCategoryIDFK integer: The expense category to link the Expense to. If not provided, ExpenseCategoryName must be provided
    • ExpenseCategoryName string: Must match an existing expense category name otherwise a new category will be created. If left blank Expense Category ID must be provided.
    • ExpenseDate string: The date of the expense entry (Required)
    • GroupTripName string: Links the expense to a Grouping/Trip report. If no matching name found, creates a new Group/Trip Report name.
    • Merchant string: The name of the merchant.
    • MerchantTaxNumer string: A Tax number identifier for the merchant.
    • Notes string: Expense Notes
    • ProjectIDFK integer: The Avaza project ID to associate the Expense with.
    • ProjectName string: Can work for matching an expense to a project, but only if it's an exact match for a single project under the customer.
    • TaxIDFK integer: Avaza Tax ID the expense belongs to. If left blank then Tax Name must be provided.
    • TaxName string: Must exactly match an existing Tax Name that you have configured in Avaza Tax settings. If left blank then Tax ID must be provided.
    • TransactionTaxConfigCode string: Optional - Enter "INC" if the tax amount is included in the expense amount otherwise enter "EX" when the amount exlcudes the tax. Defaults to "Ex". The tax amount on the expense will be autocalculated.
    • UserEmail string: The email address of a Timesheet/Expense user in Avaza. If not provided, UserIDFK field must be provided.
    • UserIDFK integer: UserID for a Timesheet/Expense user in Avaza. If not provided, UserEmail field must be provided
    • isChargeable boolean: aka Billable. Defaults to false if not provided. If set to true, a CustomerIDFK or CustomerName must be provided.
    • isReimbursable boolean: Defaults to false if not provided.

NewInvoice

  • NewInvoice object: New invoice to be created
    • CompanyIDFK integer: If left blank then you must specify Company Name.
    • CompanyName string: If left blank then you must specify Company ID. Specified Name will be used to match existing customer record. If not matched then it will be used to create a new customer. First Name, Last Name and Email will only be used if it is a new company. If the Company name appears multiple times we will check the email address to find a matching company. If email address doesn't identify a matching company then the invoice creation will be rejected.
    • CurrencyCode string: Expects ISO Standard 3 character currency code. If left blank the currency will default to account's currency in general setting. For existing companies this field will be ignored and the invoice will use the currency of the customer. For new customers if the currency is not specified then account currency will be used otherwise the specified currency will be used.
    • CustomerPONumber string: Plain UTF8 text. 100 characters max
    • DateIssued string: If not specified it will use today's date. The date should be specified as local date.
    • DueDate string: It will be auto calculated based on the payment term and issue date. Due Date must be greater than or equal to Issue Date. If the Due Date is specified then Payment Terms will be set to -1 (Custom)
    • Email string: Specified value will be used to create a new customer contact only if a new customer is being created.
    • ExchangeRate number: Exchange rate is only valid for invoices in currency other than default account currency. If not specified it will get the market rate based on the Date Issued.
    • Firstname string: Specified value will be used to create a new customer contact only if a new customer is being created.
    • InvoiceNumber string: Pass any string. If left blank it will use the next number in the auto incrementing sequence. If an integer is passed then the largest integer will be use as the seed to auto generate the next invoice number in the sequence.
    • InvoiceTemplateIDFK integer: If left blank the account default invoice template will be used.
    • Lastname string: Specified value will be used to create a new customer contact only if a new customer is being created.
    • LineItems array
    • Notes string: Plain UTF8 text. (no HTML). Max 2000 characters
    • PaymentTerms integer: "If left blank we will set it to customer default. If specified then it must match one of your existing pre configured payment term periods. Your account starts with:
    • Subject string: Plain UTF8 text. (no HTML). 255 characters max
    • TransactionPrefix string: A prefix for the Invoice number. e.g. 'INV'. If left blank it will be set to the account default. Max length 20 characters.
    • TransactionTaxConfigCode string: Possible values are (EX --- Tax Exclusive, INC --- Tax Inclusive). If left empty it will use the account default.

NewInvoiceLineItem

  • NewInvoiceLineItem object: Line item to be added to new invoice
    • Description string: Plain UTF8 text. (no HTML)
    • Discount number: Enter 10.5 to give a 10.5% discount
    • InventoryItemIDFK integer: If not specified then Inventory Item Name must be specified.
    • InventoryItemName string: If not specified then Inventory item ID must be specified. If specified and not matched to any existing inventory items then a new inventory item will be created. Max 200 characters.
    • ProjectIDFK integer: Optional. Project ID of an Avaza Project that belongs to this customer, so line item is attributed to that Project for reporting.
    • Quantity required number: The quantity for the line item
    • TaxIDFK integer: If specified then it must match an existing Tax ID. If not specified then Tax Name and Tax Percent must be specified.
    • TaxName string: Must be specified if the Tax ID is blank. If the Tax Name is specified it will be matched to an existing Tax Name or else a new Tax will be created.
    • TaxPercent number: The Tax Percent will only be used if a new tax is being created.
    • UnitPrice required number: The unit price for the lineitem.

NewPayment

  • NewPayment object
    • Amount number
    • CustomerIDFK integer: Only required if no invoice allocations specified.
    • DateIssued string: Date of Payment. If not specified, assumes today.
    • ExchangeRate number: Optional. Only used when the Customer's currecy is different from the Avaza account's base currency. Specifies the exchange rate that should apply between the customer currency and base currency. If not provided we will obtain an up to date exchange rate for the Payment Issue Date.
    • Notes string
    • PaymentAllocations array: List of amounts within this payment that are allocated to invoices. The sum of these be less than or equal to the payment amount.
    • PaymentNumber string: Optional. If not specified will be automatically generated
    • PaymentProviderCode string: Optional for storing the payment provider who was the source of funds.
    • TransactionPrefix string: Optional to override the default prefix added to Payment Numbers
    • TransactionReference string: Optional for storing the reference # of the payment method.

NewPaymentAllocation

  • NewPaymentAllocation object
    • AllocationAmount number: The Amount being allocated to the invoice. Expects same currency as invoice currency
    • AllocationDate string: Optional. Defaults to the current time in the Avaza account's timezone. The date the allocation is applied to the invoice. Can be difference from the Payment Date when doing prepayments etc.
    • InvoiceTransactionIDFK integer: The Avaza Invoice TransactionID that is having a payment amount allocated to it.

NewProjectMember

  • NewProjectMember object
    • BudgetAmount number: Optional
    • CostAmount number: Optional. If not provided, defaults to the User's default Cost Amount.
    • ProjectIDFK integer: Required. The ProjectID
    • RateAmount number: Optional. If not provided, defaults to the User's default Rate Amount.
    • UserIDFK integer: Required. The UserID to assign
    • canCommentOnTasks boolean
    • canCreateTasks boolean
    • canDeleteTasks boolean
    • canUpdateTasks boolean
    • isProjectManager boolean
    • isTimesheetAllowed boolean
    • isTimesheetApprovalRequired boolean
    • isTimesheetApprover boolean

NewProjectModel

  • NewProjectModel object
    • BudgetAmount number
    • BudgetHours number
    • CompanyIDFK integer: An ID of a company in Avaza to create the Project under. You must provide either a CompanyID, or a CompanyName
    • CompanyName string: The name for a Company to create the project under. Will create company unless it matches an existing company name
    • CurrencyCode string: The ISO 3 letter currency code to use when creating a new Company. If not provided, the account's default currency will be used.
    • EndDate string
    • PopulateDefaultProjectMembers boolean
    • ProjectCategoryIDFK integer
    • ProjectNotes string: Any descriptive notes about the project. (2000 characters max)
    • ProjectStatusCode string
    • ProjectTitle required string: The title of the new project. (255 characters max)
    • StartDate string
    • TimesheetApprovalRequiredbyDefault boolean
    • isTaskRequiredOnTimesheet boolean

NewSection

  • NewSection object
    • EndDateUTC string
    • ProjectIDFK integer
    • StartDateUTC string
    • Title string

NewTag

  • NewTag object
    • Color string: Hex color code in format #000000
    • Name string

NewTask

  • NewTask object
    • AccountTaskTypeIDFK integer
    • AssignedToUserIDFK integer
    • DateDue string
    • DateStart string
    • Description string
    • EstimatedEffort number: Decimal hours
    • ProjectIDFK required integer
    • SectionIDFK required integer
    • Tags array: Collection of tags specifying Name and Color (Hex)
    • TaskPriorityCode string
    • Title required string

NewTimesheet

  • NewTimesheet object
    • CustomMetadata string: Optional. free nvarchar field available via Api to store any additional metadata against a timesheet. We suggest you use Json or your preferred serialisation format. 1000 characters max.
    • Duration number: The duration of the timesheet, in decimal hours. If null or 0, a timer will be started.
    • EntryDate string: The date of the timesheet entry, with an optional start time component.
    • Notes string: Timesheet Notes
    • ProjectIDFK integer: The project to associate the timesheet with.
    • TaskIDFK integer: Optional. Link the timesheet to a specific task
    • TimesheetCategoryIDFK integer: The Project timesheet category to link the timesheet to
    • UserIDFK integer: UserID for a Timesheet user in Avaza
    • hasStartEndTime boolean: If true, the start time will be take from the time component of the Entry Date field, and the end time will be calculated by adding the Duration to the StartDate
    • isInvoiced boolean: Optional. False by default. Allows you to mark the timesheet as invoiced in an external system.

Payment

  • Payment object
    • AccountIDFK integer
    • Balance number
    • CurrencyCode string
    • CustomerIDFK integer
    • DateCreated string
    • DateIssued string
    • DateUpdated string
    • ExchangeRate number
    • Notes string
    • PaymentAllocations array
    • PaymentNumber string
    • PaymentProviderCode string
    • TotalAmount number
    • TransactionID integer
    • TransactionPrefix string
    • TransactionReference string
    • TransactionStatusCode string

PaymentAllocation

  • PaymentAllocation object
    • AllocationAmount number
    • AllocationDate string
    • InvoiceTransactionIDFK integer
    • PaymentTransactionIDFK integer
    • TransactionAllocationID integer

PaymentList

  • PaymentList object
    • PageNumber integer
    • PageSize integer
    • Payments array
    • TotalCount integer

ProjectCompanyGroup

ProjectDetails

  • ProjectDetails object
    • BudgetAmount number
    • BudgetHours number
    • CompanyIDFK integer
    • CompanyName string
    • DateCreated string
    • DateUpdated string
    • DefaultAccountTaskTypeIDFK integer
    • DefaultAccountTaskTypeName string
    • EndDate string
    • Members array
    • Notes string
    • ProjectBillableTypeCode string: Possible values: CategoryHourly, NoRate, NotBillable, PersonHourly, ProjectHourly
    • ProjectBudgetTypeCode string: Possible Values: CategoryHours, NoBudget, PersonHours, ProjectFees, ProjectHours
    • ProjectCategoryColor string: Html Hex Color Code starting with #
    • ProjectCategoryIDFK integer
    • ProjectCategoryName string
    • ProjectHourlyRate number
    • ProjectID integer
    • ProjectOwnerUserIDFK integer
    • ProjectStatusCode string: Possible values: NotStarted, InProgress, Complete
    • ProjectTags array
    • Sections array
    • StartDate string
    • Title string
    • isArchived boolean
    • isTaskRequiredOnTimesheet boolean

ProjectDropdownList

  • ProjectDropdownList object
    • PageSize integer: Current page size
    • companies array: List of Projects grouped by Customer Name
    • hasMore boolean: More records probably exist
    • pageNumber integer: Current page number (1 based)

ProjectDropdownSelection

  • ProjectDropdownSelection object
    • ProjectID string
    • Title string

ProjectList

  • ProjectList object
    • PageNumber integer
    • PageSize integer
    • Projects array
    • TotalCount integer

ProjectListDetails

  • ProjectListDetails object
    • CompanyIDFK integer
    • CompanyName string
    • DateCreated string
    • DateUpdated string
    • DefaultAccountTaskTypeIDFK integer
    • DefaultAccountTaskTypeName string
    • Notes string
    • ProjectID integer
    • Title string
    • isArchived boolean
    • isTaskRequiredOnTimesheet boolean

ProjectMemberDetails

  • ProjectMemberDetails object
    • BudgetAmount number
    • CostAmount number
    • Email string
    • Firstname string
    • Fullname string
    • Lastname string
    • RateAmount number
    • UserIDFK integer
    • canCommentOnTasks boolean
    • canCreateTasks boolean
    • canDeleteTasks boolean
    • canUpdateTasks boolean
    • isMemberDisabled boolean
    • isProjectManager boolean
    • isTimesheetAllowed boolean
    • isTimesheetApprovalRequired boolean
    • isTimesheetApprover boolean

ProjectSectionDetails

  • ProjectSectionDetails object
    • DisplayOrder integer
    • EndDate string
    • SectionID integer
    • StartDate string
    • Title string

ProjectTagItem

  • ProjectTagItem object
    • Name string
    • ProjectTagID integer

ProjectTimesheetCategoryDetails

  • ProjectTimesheetCategoryDetails object
    • AccountIDFK integer
    • BudgetHours number
    • CostAmount number
    • Name string
    • ProjectIDFK integer
    • RateAmount number
    • TimeSheetCategoryIDFK integer
    • isBillable boolean

ProjectTimesheetCategoryList

RecipientDetails

  • RecipientDetails object
    • CompanyIDFK integer
    • CompanyName string
    • RecipientBillingAddressCity string
    • RecipientBillingAddressCountryCode string
    • RecipientBillingAddressLine string
    • RecipientBillingAddressPostCode string
    • RecipientBillingAddressState string
    • RecipientFormattedBillingAddress string

RoleDetails

  • RoleDetails object
    • RoleCode string
    • RoleName string

ScheduleAssignmentDetails

  • ScheduleAssignmentDetails object
    • AccountIDFK integer
    • DateCreated string
    • DateUpdated string
    • Duration number
    • ScheduleAssignmentID integer
    • ScheduleDate string
    • ScheduleSeriesIDFK integer
    • UserIDFK integer

ScheduleAssignmentList

  • ScheduleAssignmentList object

ScheduleSeriesDetails

  • ScheduleSeriesDetails object
    • AccountIDFK integer
    • CompanyIDFK integer
    • CompanyName string
    • DateCreated string
    • DateUpdated string
    • EndDate string
    • Firstname string
    • HoursPerDay number
    • Lastname string
    • LeaveTypeIDFK integer
    • LeaveTypeName string
    • Notes string
    • ProjectIDFK integer
    • ProjectTitle string
    • ScheduleOnDaysOff boolean
    • ScheduleSeriesID integer
    • StartDate string
    • TaskIDFK integer
    • TaskTitle string
    • TimeSheetCategoryIDFK integer
    • TimeSheetCategoryName string
    • TotalDuration number
    • UpdatedByUserIDFK integer
    • UserIDFK integer

ScheduleSeriesList

  • ScheduleSeriesList object

SectionDetails

  • SectionDetails object
    • DisplayOrder integer
    • EndDate string
    • EndDateUTC string
    • ProjectIDFK integer
    • SectionID integer
    • StartDate string
    • StartDateUTC string
    • Title string

SectionList

  • SectionList object

SubscribeResult

  • SubscribeResult object
    • ID integer

TagItem

  • TagItem object
    • Color string
    • Name string
    • TagID integer

TaskDetails

  • TaskDetails object
    • AccountTaskTypeIDFK integer
    • ActualTime number
    • AssignedToEmail string
    • AssignedToFirstname string
    • AssignedToLastname string
    • AssignedToUserIDFK string
    • DateCompleted string
    • DateCreated string
    • DateDue string
    • DateStart string
    • DateUpdated string
    • Description string
    • DescriptionNoHTML string
    • EstimatedEffort number
    • PercentComplete number
    • ProjectIDFK integer
    • ProjectTitle string
    • SectionIDFK integer
    • SectionTitle string
    • Tags array
    • TaskID integer
    • TaskPriorityCode string
    • TaskPriorityName string
    • TaskStatusCode string
    • TaskStatusName string
    • Title string
    • isCompleteStatus boolean

TaskDropdownList

  • TaskDropdownList object
    • PageSize integer: Current page size
    • hasMore boolean: More records probably exist
    • pageNumber integer: Current page number (1 based)
    • sections array: List of Task grouped by Section

TaskDropdownSelection

  • TaskDropdownSelection object
    • TaskID string
    • Title string

TaskList

  • TaskList object
    • PageNumber integer
    • PageSize integer
    • Tasks array
    • TotalCount integer

TaskSectionGroup

TaskStatusDetails

  • TaskStatusDetails object
    • AccountTaskTypeIDFK integer
    • Color string
    • DisplayOrder integer
    • Name string
    • TaskStatusCode string
    • TaskTypeName string
    • isComplete boolean

TaskStatusList

TaskTypeList

TaxComponent

  • TaxComponent object
    • ComponentTaxCode string
    • Name string
    • Percentage number
    • TaxComponentID integer
    • TaxIDFK integer
    • isCompound boolean

TaxItem

  • TaxItem object
    • CalculatedPercent number
    • Name string
    • TaxCode string
    • TaxComponents array
    • TaxID integer

TaxList

  • TaxList object

TimesheetDetails

  • TimesheetDetails object
    • ApprovedBy string
    • CategoryName string
    • CustomMetadata string
    • CustomerIDFK integer
    • CustomerName string
    • DateApproved string
    • DateCreated string
    • DateUpdated string
    • Duration number
    • Email string
    • EndTimeLocal string
    • EndTimeUTC string
    • EntryDate string
    • Firstname string
    • HasTimer boolean
    • InvoiceIDFK integer
    • InvoiceLineItemIDFK integer
    • Lastname string
    • Notes string
    • ProjectIDFK integer
    • ProjectTitle string
    • StartTimeLocal string
    • StartTimeUTC string
    • TaskIDFK integer
    • TaskTitle string
    • TimerStartedAtUTC string
    • TimesheetCategoryIDFK integer
    • TimesheetEntryApprovalStatusCode string
    • TimesheetEntryID integer
    • TimesheetUserTimeZone string
    • UserIDFK integer
    • isBillable boolean
    • isInvoiced boolean

TimesheetList

  • TimesheetList object
    • PageNumber integer
    • PageSize integer
    • Timesheets array
    • TotalCount integer

TimesheetSummaryGroup

  • TimesheetSummaryGroup object
    • BillableHours number
    • GroupData array
    • GroupID string
    • GroupName string
    • TotalHours number

TimesheetSummaryRequest

  • TimesheetSummaryRequest object
    • EntryDateFrom string: (Required) Filter for timesheets greater or equal to the specified date. e.g. 2019-01-25. You can optionally include a time component, otherwise it assumes 00:00
    • EntryDateTo string: (Required) Filter for timesheets with an entry date smaller or equal to the specified date. e.g. 2019-01-25. You can optionally include a time component, otherwise it assumes 00:00
    • GroupBy array: (Optional) Combine one, two or three levels of Grouping. Combine these possible grouping value
5.0.0

5 years ago

4.0.0

7 years ago

3.0.0

7 years ago

2.0.0

8 years ago