Explore the AroFlo API data model

See how the various AroFlo endpoints relate to each other, using our handy Entity Relationship Diagram

Pulling data from the AroFlo API is only the first part of your reporting. You also need to understand the relationships between different endpoints - something that APIs typically fail to convey.

At SyncHub, we not only sync your AroFlo API endpoints down into a reportable format, we also describe their relationships (e.g. in terms of foreign keys) so that you can quickly get a grasp of your data and how it fits together. This page is intended as technical documentation of these relationships.

Endpoints

Invoice

Column Type Relates to Notes
RemoteID string - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Description string - -
Invoiceid string - -
Lastupdateddatetime datetime - -
Status string - -
Custon string - -
Duedate datetime - -
Dateinvoiced datetime - -
Totalinc decimal - -
Invoicenumber string - -
IsTaxInclusive boolean - -
Partinvoice boolean - -
Totalex decimal - -
Surchargeamount decimal - -
Totalgst decimal - -
Deliverystatus string - -
UpdatedByUserID string User → Userid -
AddressLine1 string - -
AddressLine2 string - -
AddressSuburb string - -
AddressPostCode string - -
AddressState string - -
TaskID string Task → Taskid -
ProjectID string - -
OrganisationID string Organisation → Orgid -
ClientID string Client → Clientid -

InvoiceLine

Column Type Relates to Notes
RemoteID string - -
InvoiceRemoteID string Invoice → RemoteID -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Description string - -
InvoiceID string Invoice → Invoiceid -
Lineid string - -
TaskID string Task → Taskid -
Accountcode string - -
Qtybilled decimal - -
Total decimal - -
Price decimal - -
Itemtype string - -
Transactioncode string - -
Qtyused decimal - -
Taxamount decimal - -
Itemid string Item → Itemid -
Ordercode string - -
Taxcode string - -
Taxrate decimal - -

Client

Column Type Relates to Notes
RemoteID string - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime -
  • 31 Aug 2021 Even though the lastUpdates endpoint allows us to query by modification date, the entity details unfortunately do not provide this field
Clientid string - -
Firstname string - -
Surname string - -
Shortname string - -
Email string - -
Phone string - -
Abn string - -
Fax string - -
Mobile string - -
Datetimeinserted datetime - -
Termsnote string - -
Terms string - -
Postable boolean - -
Usecustompriorities boolean - -
Dateinserted datetime - -
Clientname string - -
Website string - -
Datecreated datetime - -

Task

Column Type Relates to Notes
RemoteID string - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Description string - -
ProjectID string Project → Projectid -
Taskid string - -
Lastupdateddatetimeutc datetime - -
Completeddatetime datetime - -
Priority string - -
Gpslongitude decimal - -
Gpslatitude decimal - -
Requestdatetime datetime - -
Lastupdatedutc datetime - -
Status string - -
Refcode string - -
Duedate datetime - -
Jobnumber string - -
Taskname string - -
Readtaskdatetime datetime - -
Completeddate datetime - -
Custon string - -
Readtask boolean - -
Duedatetime datetime - -
Linkprocessed boolean - -
ClientID string Client → Clientid -
OrganisationID string Organisation → Orgid -
TaskTypeID string TaskType → Tasktypeid -
LocationID string - -

TaskMaterial

Column Type Relates to Notes
RemoteID string - -
TaskRemoteID string Task → RemoteID -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
TaskID string Task → Taskid -
Lineid string - -
Matlinkprocesseddatetime datetime - -
Matlinkprocesseddate datetime - -
Quantity decimal - -
Matlinkprocessed boolean - -
Purchaseorderisordered boolean - -
Deleted boolean - -
Cost decimal - -
Deleteddate datetime - -
Sell decimal - -
Purchaseorderqtybilled string - -
Partnumber string - -
Purchaseorderqtyordered string - -
Deletedtime string - -
Dateused datetime - -
Itemid string Item → Itemid -
Isinventory boolean - -
Deleteddatetime datetime - -

TaskLabour

Column Type Relates to Notes
RemoteID string - -
TaskRemoteID string Task → RemoteID -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
TaskID string Task → Taskid -
Lineid string - -
UserID string User → Userid -
Labverified boolean - -
Worktype string - -
Workdatetimestart datetime - -
Workdatetimeend datetime - -
Lablinkprocesseddatetime datetime - -
Endtime datetime - -
Lablinkprocesseddate datetime - -
Deleted int -
  • 31 Aug 2021 The deleted field comes down as an integer, not a true/false boolean
Lablinkprocessed boolean - -
Cost decimal - -
Starttime datetime - -
Deleteddate datetime - -
Hours decimal - -
Sell decimal - -
Labeodapproved boolean - -
Note string - -
Lablocked boolean - -
Deleteddatetime datetime - -

TaskExpense

Column Type Relates to Notes
RemoteID string - -
TaskRemoteID string Task → RemoteID -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Description string - -
TaskID string Task → Taskid -
Lineid string - -
UserID string User → Userid -
Overheadallocation string - -
Cost decimal - -
Sell decimal - -
Quantity decimal - -
Dateused datetime - -

PurchaseOrder

Column Type Relates to Notes
RemoteID string - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Purchaseorderid string - -
Supplierinvoicenumber string - -
Status string - -
Purchasedate datetime - -
Ordernumber string - -
Duedate datetime - -
Dateinvoiced datetime - -
Deliverybydate string - -
Totalex decimal - -
Totalinc decimal - -
Deliverybydatetime datetime - -
Deliveryinstructions string - -
Datereceived datetime - -
IsTaxInclusive boolean - -
Acceptancestatus string - -
AddressLine1 string - -
AddressLine2 string - -
AddressSuburb string - -
AddressPostCode string - -
AddressState string - -
OrganisationID string Organisation → Orgid -
SupplierID string Supplier → Supplierid -

PurchaseOrderLine

Column Type Relates to Notes
RemoteID string - -
PurchaseOrderRemoteID string PurchaseOrder → RemoteID -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Description string - -
PurchaseOrderID string PurchaseOrder → Purchaseorderid -
Lineid string - -
Accountcode string - -
Qtybilled decimal - -
Total decimal - -
Price decimal - -
Qtyordered decimal - -
Partno string - -
Transactioncode string - -
Taxamount decimal - -
Taskid string Task → Taskid -
Cost decimal - -
Taskisused boolean - -
Taxcode string - -
Taskqtyused decimal - -
Itemid string Item → Itemid -
Taxrate decimal - -

PurchaseOrderProject

Column Type Relates to Notes
RemoteID string - -
PurchaseOrderRemoteID string PurchaseOrder → RemoteID -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
PurchaseOrderID string PurchaseOrder → Purchaseorderid -
Projectid string - -

Supplier

Column Type Relates to Notes
RemoteID string - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime -
  • 31 Aug 2021 Even though the lastUpdates endpoint allows us to query by modification date, the entity details unfortunately do not provide this field
Suppliertype string - -
Suppliername string - -
Supplierid string - -
Firstname string - -
Surname string - -
Shortname string - -
Email string - -
Phone string - -
Abn string - -
Fax string - -
Mobile string - -
Datetimeinserted datetime - -
Termsnote string - -
Terms string - -
Postable boolean - -
Dateinserted datetime - -
Website string - -
Datecreated datetime - -

SupplierOrganisation

Column Type Relates to Notes
RemoteID string - -
SupplierRemoteID string Supplier → RemoteID -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
SupplierID string Supplier → Supplierid -
OrganisationID string Organisation → Orgid -

ClientOrganisation

Column Type Relates to Notes
RemoteID string - -
ClientRemoteID string Client → RemoteID -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
ClientID string Client → Clientid -
OrganisationID string Organisation → Orgid -

User

Column Type Relates to Notes
RemoteID string - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Userid string - -
OrganisationID string Organisation → Orgid -
Surname string - -
Phone string - -
Email string - -
Email2 string - -
Fax string - -
Mobile string - -
Givennames string - -
Accesstype string - -
Username string - -
Archived boolean - -

Item

Column Type Relates to Notes
RemoteID string - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Description string - -
CategoryID string - -
Itemid string - -
Flexcost decimal - -
Manufacturer string - -
Invcmarginon string - -
Supplier string - -
UseSimplePricing int - -
Taskmarginon string - -
SellQte decimal - -
Invcmargin decimal - -
Costex decimal - -
Partnumber string - -
SellInvc decimal - -
SellTask decimal - -
Taskmargin decimal - -

TaskType

Documentation: https://apidocs.aroflo.com/#8ff2c823-1ffa-4347-8903-5be8c2d67c83

Column Type Relates to Notes
RemoteID string - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Description string - -
Tasktypeid string - -
Tasktype string - -
Archived boolean - -

TaskTypeBusinessUnit

Column Type Relates to Notes
RemoteID string - -
TaskTypeRemoteID string TaskType → RemoteID -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Orgid string - -
Tasktypeid string TaskType → Tasktypeid -

BusinessUnit

Documentation: https://apidocs.aroflo.com/#b7df0fa1-ae48-4d7f-83d3-b554ba001f67

Column Type Relates to Notes
RemoteID string - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Orgid string - -
Mailingaddressaddressline1 string - -
Mailingaddressaddressline2 string - -
Mailingaddresspostcode string - -
Mailingaddresssuburb string - -
Mailingaddresscountry string - -
Mailingaddressstate string - -
Addressaddressline1 string - -
Addressaddressline2 string - -
Addresspostcode string - -
Addresssuburb string - -
Addresscountry string - -
Addressstate string - -
Surname string - -
Shortname string - -
Termsnote string - -
Phone string - -
Terms string - -
Firstname string - -
Email string - -
Abn string - -
Businessunitname string - -
Usecustompriorities boolean - -
Archived boolean - -
Fax string - -
Website string - -
Mobile string - -

CustomField

Column Type Relates to Notes
RemoteID string - -
TaskRemoteID string Task → RemoteID -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Name string - -
Fieldid string - -
Archived boolean - -
Type string - -

TaskCustomField

Column Type Relates to Notes
RemoteID string - -
TaskRemoteID string Task → RemoteID -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Fieldid string CustomField → Fieldid -
Taskid string Task → Taskid -
Value string - -

Schedule

Documentation: https://apidocs.aroflo.com/#9bc5a3d8-3884-4542-b5ab-56c0cb59cd4e

Column Type Relates to Notes
RemoteID string - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Scheduleid string - -
OrganisationID string Organisation → Orgid -
InsertedByUserID string User → Userid -
ScheduledToUserID string User → Userid -
TaskID string Task → Taskid -
PeriodicID string - -
GroupID string - -
Startdatetime datetime - -
Enddatetime datetime - -
Ishidden boolean - -
Islocked boolean - -
Inserteddatetimeutc datetime - -
Hours decimal - -
Note string - -

Timesheet

Documentation: https://apidocs.aroflo.com/#0b518062-47b5-453c-933f-388ba72626d2

Column Type Relates to Notes
RemoteID string - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Timesheetid string - -
UserID string User → Userid -
InsertedByUserID string User → Userid -
VerifiedByUserID string User → Userid -
WhenVerified datetime - -
TaskID string Task → Taskid -
WorktypeID string - -
TrackingCenterID string - -
OverheadID string - -
OverheadUnit string - -
OverheadName string - -
OverheadType string - -
GroupID string - -
TSGroupID string - -
Chargerate decimal - -
Costrate decimal - -
Inserteddatetimeutc datetime - -
Cost decimal - -
Hours decimal - -
Hourlyrate decimal - -
Note string - -
Startdatetime datetime - -
Finishdatetime datetime - -
Type string - -
Charge decimal - -
Workdate datetime - -
Resourceoverheadrate decimal - -

Asset

Column Type Relates to Notes
RemoteID string - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Assetid string - -
OrganisationID string Organisation → Orgid -
ClientID string - -
Customerid string -
  • 22 Sep 2021 All data observed during development shows this coming down as a date - a strange value for a 'customerid'
SupplierID string -
  • 8 Jun 2023 Cannot find data - assuming similar to the client property
AssetCategoryID string - -
Odotype string - -
Modelnumber string - -
Serialnumber string - -
Quantity decimal - -
Barcode string - -
Manufacturer string - -
Assetname string - -
Cost decimal - -
Odo decimal - -
Archived boolean - -
Ordercode string - -
Datecreated datetime - -

AssetCustomField

Column Type Relates to Notes
RemoteID string - -
AssetRemoteID string Asset → RemoteID -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Fieldid string CustomField → Fieldid -
Assetid string Asset → Assetid -
Value string - -

UserCustomField

Column Type Relates to Notes
RemoteID string - -
UserRemoteID string User → RemoteID -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Fieldid string CustomField → Fieldid -
Userid string User → Userid -
Value string - -

Project

Column Type Relates to Notes
RemoteID string - -
TaskRemoteID string Task → RemoteID -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Description string - -
Projectid string - -
Locationid string - -
Contact string - -
Startdate datetime - -
Projecttype string - -
Enddate datetime - -
Status string - -
Closeddate datetime - -
Refno string - -
Manager string - -
Custon string - -
Projectnumber string - -
Projectname string - -

Location

Column Type Relates to Notes
RemoteID string - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime -
  • 31 Aug 2021 Even though the lastUpdates endpoint allows us to query by modification date, the entity details unfortunately do not provide this field
Locationid string - -
Gpslat decimal - -
Gpslong decimal - -
Postcode string - -
SiteContact string - -
State string - -
Suburb string - -
SiteEmail string - -
SitePhone string - -
Locationname string - -
Country string - -
Address string - -
Archived boolean - -
ClientID string Client → Clientid -
SupplierID string Supplier → Supplierid -
BusinessUnitID string BusinessUnit → Orgid -

Organisation

Column Type Relates to Notes
RemoteID string - -
MirrorRemoteID int - -
IsDeleted boolean - -
WhenCreated datetime - -
WhenModified datetime - -
Orgid string - -
Orgname string - -

Need more?

SyncHub lives and breathes APIs and data. Keep exploring using the links below.