Restaurant365 provides an OData connector that you can use to access your Restaurant365 data from within your OData reporting provider. These endpoints provide near real time data (within seconds) on transactions rather, than previous day data.


Note: Sales and labor data captured by intraday polling is not available via OData. Sales and labor data is only available upon polling of the Daily Sales Summary.


The following providers can be used with the R365 OData Connector:

  • Domo
  • Prophix
  • Microsoft Excel
  • PowerBI
  • Any Reporting Provider that accepts OData


You can connect to the R365 OData Connector using your R365 User profile. If you receive an authentication error when you attempt to login, please reach out to R365 Support in order to start or troubleshoot the connection process. 


This article reviews the following:



Important Note


R365 can help with connecting to Odata to ensure that the API is working for you. R365 does not support applications that are used to connect to OData.


Assistance around best practices can be provided but it is recommended that OData documentation be reviewed and utilized.



Best Practices


Here are some simple things that can be done to improve your experience in retrieving data through the R365 OData endpoints.

  • Structure queries so that they query smaller datasets and make more calls
    • Some datasets could result in gigabytes worth of data (retrieving all transaction data at one time for example), transmission of that large of a dataset alone will take a significantly large time
    • Some endpoints have specifically been “throttled” to prevent pulling too much data at one time
  • When pulling details, get a list of header (Transaction or SalesEmployee) ID’s and use those ID’s to query the details
  • Pull data daily to upkeep data sync
  • Take advantage of the rowVersion property to more easily get records that have changed since the last data pull
  • Pull data month by month when pulling data initially for historical data needs 
    • Depending on how many locations and how much data you have, this may be best done by location or by week.


Back to Top


Authorized Users - R365 Application


Any Active Restaurant365 User with the following User Roles are permitted to use the R365 OData Connector:

  • Accounting Clerk
  • Accounting Admin

Click here for more information about R365 User Roles.


Back to Top


R365 OData Connector Users - Provider Application


Depending on the size of your team, and the needs of your organization, you can take one of two approaches to which Users will access the R365 OData Connector:

  1. Have each User authenticate using their R365 User profile:
    • Accessible Data will be limited to the User's R365 Location Access
    • Users can be deactivated as needed
    • Password changes must be made on both R365 and Provider platforms
  2. Create a Dedicated R365 OData Connector User:
    • Accessible Data will include all Locations
    • User could not be deactivated without removing access for all Users
    • Password changes must be made on both R365 and Provider platforms

With each solution, your Users will have to update their password on each platform.  Choose the solution that works best for your Organization.


Back to Top


Authentication


OData Connector Credentials must be entered using the following format: Domain\Username


For example, if your Restaurant365 URL is https://yourCompany.restaurant365.com and your username is r365userthen you would enter: 

  • Username: yourCompany\r365user
  • Password: Your R365 password


Back to Top


Available Endpoints


The following reports are provided by the R365 OData Connector:


CompanyList all Vendors 
EmployeeList all Employees with basic information 
EntityDeleted
Retrieve a list of records deleted from the system
GLAccountList all GL Accounts with details
ItemList all Items with categorization
JobTitleList all Job titles with details
LaborDetailRetrieve Employee punch times details (clock in/out) 
LocationList all Locations 
PayrollSummary
Retrieve a list of labor records
POSEmployeeRetrieve data mapping between R365 Employee records and POS Employee records
TransactionRetrieve a list of financial transactions 
TransactionDetailRetrieve a list of financial transaction details at item level
SalesEmployeeRetrieve a list of Sales Ticket (header) data, including the employee associated with the ticket
SalesDetailRetrieve sales ticket details (items on ticket)
SalesPaymentRetrieve sales payment associated with sales ticket data


Back to Top


Service Metadata (EDMX) Document


The metadata can be downloaded by requesting $metadata. This XML-based service document contains the schema of the entity models associated with each available endpoint within the service.


https://odata.restaurant365.net/api/v2/views/$metadata


Back to Top


OData Endpoints


Transactions

https://odata.restaurant365.net/api/v2/views/Transaction


PropertiesDescription
transactionIdA unique guid identifier for a transaction record
locationIdA unique guid identifier of the location where the associating transaction was created
locationNameThe name of the referencing Location
dateThe imported date and time when the transaction was created in ISO 8601 format
transactionNumberA custom reference associated with the transaction
nameName of the transaction
type Type of transaction, i.e. Journal Entry, AP Invoice
isApproved1 is approved, 0 is unapproved
companyIdA unique guid identifier for the associating company, if any
createdByThe R365 User Name for the User who created the transaction
createdOnThe date and time when the transaction was created in ISO 8601 format
modifiedByThe R365 User Name for the User who modified the transaction last
modifiedOnThe date and time when the transaction was last modified in ISO 8601 format



TransactionDetails


https://odata.restaurant365.net/api/v2/views/TransactionDetail

 

Transaction Details can be joined to the Transaction report using the transactionId 


PropertiesDescription
transactionDetailAutoIdA item-level unique guid identifier for a transaction details record
transactionDetailIdA unique guid identifier linked a collection of transaction detail records
transactionIdA unique guid identifier linked to a transaction record
locationIdA unique guid identifier of the Location where the associating transaction was created
glAccountIdA unique guid identifier of the GL Account mapped to the line item
itemA unique guid identifier of the item in this transaction
creditThe credit amount in the transaction
debitThe debit amount in the transaction
amountThe total balance in the transaction
quantityThe quantity of item in the transaction
adjustmentThe adjustment amount in the transaction
unitOfMeasureNameDescribe the unit of measure for the item
commentDescription or comment of the item
createdByA unique guid identifier for the User who created the transaction
createdOnThe date and time when the transaction was created in ISO 8601 format
modifiedByA unique guid identifier for the User who modified the transaction last
modifiedOnThe date and time when the transaction was last modified in ISO 8601 format



Companies  


https://odata.restaurant365.net/api/v2/views/Company

 

Companies can be joined to the Transaction report using companyId  


PropertiesDescription
companyIdA unique guid identifier for a Vendor's company
nameThe name of the company
companyNumberThe company number for optional identification purposes
commentNotes or comments in the company record
createdByA unique guid identifier for the User who created the company
createdOnThe date and time when the company was created in ISO 8601 format
modifiedByA unique guid identifier for the User who modified the company last
modifiedOnThe date and time when the company was last modified in ISO 8601 format



Items 


https://odata.restaurant365.net/api/v2/views/Item


Items can be joined to the Transaction Detail report on the itemId column to view more information regarding the item on the transaction detail


PropertiesDescription
itemIdA unique guid identifier for the item
itemNumberThe name or number of the business for optional identification purposes
category1Item category name 1
category2Item category name 2
category3Item category name 3
createdByA unique guid identifier for the User who created the item
createdOnThe date and time when the item was created in ISO 8601 format
modifiedByA unique guid identifier for the User who modified the item last
modifiedOnThe date and time when the item was last modified in ISO 8601 format



Locations 


https://odata.restaurant365.net/api/v2/views/Location


Locations can be joined to the Transaction or Transaction Detail report using locationId 


PropertiesDescription
locationIdA unique guid identifier for a Location
nameThe name of the Location
locationNumberThe name or number of the Location as an optional identification reference
legalEntityIdA unique guid identifier for the Legal Entity associated with this location
legalEntityNumberThe number of the Legal Entity
legalEntityNameThe name of the Legal Entity
createdByA unique guid identifier for the User who created the Location
createdOnThe date and time when the Location was created in ISO 8601 format
modifiedByA unique guid identifier for the User who modified the Location last
modifiedOnThe date and time when the Location was last modified in ISO 8601 format



GLAccounts 


https://odata.restaurant365.net/api/v2/views/GlAccount


GL Account data can be joined with the Transaction Detail report on glAccountAutoId to see the GL Account associated with a transaction detail record


PropertiesDescription
glAccountAutoIdA unique numeric identifier for a GL Account
glAccountIdA unique guid identifier for a GL Account
locationIdA reference identifier to a Location associated with the GL Account
locationNumberThe Location number associated with the GL Account
locationNameThe Location name associated with the GL Account
legalEntityIdA guid identifier of the Legal Entity associated with this GL Account
legalEntityNumberThe number of the Legal Entity
legalEntityNameThe name of the Legal Entity
nameThe name of the GL Account
glAccountNumberThe GL Account number
glTypeClassA number class type for this GL Account
glTypeThe GL Account type
operationalCategoryThe Operational category for this GL Account
createdByA unique guid identifier for the User who created the GL Account
createdOnThe date and time when the GL Account was created in ISO 8601 format
modifiedByA unique guid identifier for the User who modified the GL Account last
modifiedOnThe date and time when the GL Account was last modified in ISO 8601 format



Employee


https://odata.restaurant365.net/api/v2/views/Employee


Using the employeeId field, Employees can be joined to Labor Detail through the employee_ID  field

Using the employeeId field, Employees can be joined to POS Employee data through employee_ID field


PropertiesDescription
employeeIdA unique guid identifier for an Employee
fullNameFull name of the Employee
address1The Employee's address line 1
address2The Employee's address line 2
allowTextMessagingIndicates whether the Employee allows text messaging
birthdayDayThe day of the Employee's birthday
birthdayMonthThe month of the Employee's birthday
cityThe Employee's city of residence
firstNameThe Employee's first name
hireDateThe Employee's hire date
lastNameThe Employee's last name
middleNameThe Employee's middle name
mobilePhoneThe Employee's mobile phone number
multipleLocationsIndicates whether the employee works at multiple Locations
payrollIDThe Employee's payroll ID
phoneNumberThe Employee's phone number
posidThe Employee's POS ID
stateThe Employee's state of residence
zipCodeThe Employee's zip code
primaryLocation_idThe Employee's primary work Location
inactiveThe Employee's status
emailThe Employee's email address
birthdayThe Employee's birthday
createdByA unique guid identifier for the User who created the Employee record
createdOnThe date and time when the Employee record was created in ISO 8601 format
modifiedByA unique guid identifier for the User who modified the Employee record last
modifiedOnThe date and time when the Employee record was last modified in ISO 8601 format



JobTitle 


https://odata.restaurant365.net/api/v2/views/JobTitle


Using the JobTitleID field, Job Titles can be joined to Labor Detail through JobTitle_ID  

Using the glAccount_ID  field, Job Titles can be joined to GL Accounts through glAccountID


PropertiesDescription
jobTitleIdA unique guid identifier for a Job title record
nameThe title of the Job
descriptionThe description of the Job
jobCodeThe Job code associated with the Job
payRateThe pay rate associated with the Job
payRate_BaseThe base pay rate associated with the Job
posidThe Job title's POS ID
glAccount_IdThe GL Account associated with the Job
location_IdThe Location associated with the Job
excludeFromScheduleIndicates whether to exclude Job from scheduling
excludeFromPOSImportIndicates whether to exclude Job from POS import
createdByA unique guid identifier for the User who created the Job title
createdOnThe date and time when the Job was created in ISO 8601 format
modifiedByA unique guid identifier for the User who modified the Job title last
modifiedOnThe date and time when the Job title was last modified in ISO 8601 format



LaborDetail 


https://odata.restaurant365.net/api/v2/views/LaborDetail


Using the employee_ID field, Labor Detail can be joined to Employee through the employeeID field

Using the JobTitle_ID field, Labor Detail can be joined to Job Title through the JobTitleID field

Using the location_Id field, Labor Detail can be joined to Location through locationID field


PropertiesDescription
laborIdA unique guid identifier for a labor detail record
laborThe name of the labor detail record
dateWorkedThe date and time of the work day
dailysalessummaryid
The reference to the Daily Sales Summary for which this data is associated.  This can be used to better tie out all data that should be resynced when a DSS is deleted in R365 and data needs to be repolled from R365 for the updated information.
endTimeThe date and time when the shift ends
hoursThe total hours worked
payRateThe Employee's pay rate
payrollStatusThe Employee's payroll status
startTimeThe date and time when the shift starts
totalThe total amount earned based on pay rate and hours
employee_IDIdentifier of the Employee associated with this labor detail
employeeJobTitle_IDIdentifier of the mapping between Employee and Job title
jobTitle_IDIdentifier of the Job title associated with this labor detail
location_IDIdentifier of the Location associated with this labor detail
cateringEventIndicates whether the labor is associated with a Catering event
employeeThe Employee's full name
payrollIDThe Payroll ID associated with this labor detail
jobTitleThe Job title associated with this labor detail
dateWorkedDateTextThe date and time of the work day as string
locationThe Location associated with this labor detail
createdByA unique guid identifier for the User who created the labor detail
createdOnThe date and time when the labor detail was created in ISO 8601 format
modifiedByA unique guid identifier for the User who modified the labor detail last
modifiedOnThe date and time when the labor detail was last modified in ISO 8601 format



POS Employee 


https://odata.restaurant365.net/api/v2/views/POSEmployee


Using the  employee_id  field, POS Employees can be joined to Employee data through employeeId  field


PropertiesDescription
posEmployeeIdA unique guid identifier for this mapping record
fullNameThe Employee's full name
posidThe Employee's POS ID
location_idIdentifier of the Location associated with this record
employee_idIdentifier of the Employee associated with this record
createdByA unique guid identifier for the User who created the record
createdOnThe date and time when the record was created in ISO 8601 format
modifiedByA unique guid identifier for the User who modified the record last
modifiedOnThe date and time when the record was last modified in ISO 8601 format



SalesEmployee


https://odata.restaurant365.net/api/v2/views/SalesEmployee 

 

Please note that due to the high volume of data available to be pulled from sales data endpoints, limitations have purposefully been enforced to limit the amount of data that can be pulled in a single call.   Sales data can retrieve 1 month’s worth of data (up to 31 days) per request.  For daily pulls this should not pose any problem, but for historical data pulls, developers will need to plan their requests accordingly.  An error message stating 'The filter exceeds the date limit of 31 days, please limit your date range and try again.' will be returned and require that the request parameters be modified.

 

Using the location field, SalesEmployee data can be linked to Location data through the locationId field.


Using the server field, SalesEmployee data can be linked to Employee data through the employeeID field. 


PropertiesDescription
salesIdA unique guid identifier for a salesEmployee (sales ticket) record
receiptNumberReceipt number text from the POS
checkNumberTicket identifying value from the POS
commentComment text on the ticket
dateThe date and time when the order was taken in ISO 8601 format
dayOfWeekDay of the week on which the order was taken
dayPartPart of the day (as defined on the related location) that the order was taken
netSalesTotal sales less discounts
numberOfGuestsNumber of Guests notated on the ticket
orderHourHour of the day that the order was taken
salesAmountTotal sales amount, not including tax or tip
taxAmountAmount of tax on the ticket
tipAmountAmount tipped on the ticket
totalAmountTotal of all items sold
totalPaymentTotal payment amount applied to the ticket
voidUsed if the entire ticket was voided
serverName of the employee/server/cashier that processed (or was responsible for) the ticket
locationA unique guid identifier for the Location where the ticket was generated and fulfilled
grossSalesTotal sales, without gift cards redeemed included
dailysalessummaryid
The reference to the Daily Sales Summary for which this data is associated.  This can be used to better tie out all data that should be resynced when a DSS is deleted in R365 and data needs to be repolled from R365 for the updated information.
createdByA unique guid identifier for the User who created the record
createdOnThe date and time when the record was created in ISO 8601 format
modifiedByA unique guid identifier for the User who modified the record last
modifiedOnThe date and time when the record was last modified in ISO 8601 format
serviceType
Service Type/Order Mode. Option of how to receive an order: Dine In, Take Out, Delivery, etc.



SalesDetail


Please note that due to the high volume of data available to be pulled from sales data endpoints, limitations have purposefully been enforced to limit the amount of data that can be pulled in a single call.   Sales data can retrieve 1 month’s worth of data (up to 31 days) per request.  For daily pulls this should not pose any problem, but for historical data pulls, developers will need to plan their requests accordingly.  An error message stating “The filter exceeds the date limit of 31 days, please limit your date range and try again.” will be returned and require that the request parameters be modified.

 

https://odata.restaurant365.net/api/v2/views/SalesDetail 

 

Using the location field, SalesEmployee data can be linked to Location data through the locationId field.


Using the salesID field, SalesDetail data can be linked to SalesEmployee data through the salesID field. 


PropertiesDescription
salesdetailIDA unique guid identifier for the sales ticket (SalesEmployee) record
menuitemName of the menu item ordered
amountExtended amount charged for the menu item
customerPOSTextComment text from the customer's POS (if provided by the POS)
dateThe date and time when the item was added in ISO 8601 format
quantityQuantity of the given menu item ordered
voidBoolean indicating whether the menu item was voided or not
companyCurrently only provides an empty guid '00000000-0000-0000-0000-000000000000', is under considerations for future implementation
locationA unique guid identifier for the Location where the ticket was generated and fulfilled
salesIDA unique guid identifier for a salesEmployee (sales ticket) record
salesAccountGL Account Name that the item is associated with
categoryName of sales category the menu item is associated with
houseAccountTransactionCurrently is empty but is under consideration for future implementation
dailysalessummaryid
The reference to the Daily Sales Summary for which this data is associated.  This can be used to better tie out all data that should be resynced when a DSS is deleted in R365 and data needs to be repolled from R365 for the updated information.
transactionDetailIDCurrently is empty but is under consideration for future implementation
cateringEventCurrently is empty but is under consideration for future implementation
createdByA unique guid identifier for the User who created the record
createdOnThe date and time when the record was created in ISO 8601 format
modifiedByA unique guid identifier for the User who modified the record last
modifiedOnThe date and time when the record was last modified in ISO 8601 format



SalesPayment


Please note that due to the high volume of data available to be pulled from sales data endpoints, limitations have purposefully been enforced to limit the amount of data that can be pulled in a single call.   Sales data can retrieve 1 month’s worth of data (up to 31 days) per request.  For daily pulls this should not pose any problem, but for historical data pulls, developers will need to plan their requests accordingly.  An error message stating “The filter exceeds the date limit of 31 days, please limit your date range and try again.” will be returned and require that the request parameters be modified.

 

https://odata.restaurant365.net/api/v2/views/SalesPayment 

 

Using the location field, SalesEmployee data can be linked to Location data through the locationId field.


Using the salesID field, SalesDetail data can be linked to SalesEmployee data through the employeeID field. 


PropertiesDescription
salespaymentIdA unique guid identifier for a salespayment record
nameName of payment as provided by the POS
amountPayment Amount
commentComment provided on the payment from the POS
customerPOSTextText from the POS
dateThe date and time the payment was recorded, in ISO 8601 format
dailysalessummaryid
The reference to the Daily Sales Summary for which this data is associated.  This can be used to better tie out all data that should be resynced when a DSS is deleted in R365 and data needs to be repolled from R365 for the updated information.
isExceptionBoolean indicating whether the payment is an exception or not
missingreceiptBoolean indicating whether the receipt is missing or not
companyCurrently on provides an empty guid '00000000-0000-0000-0000-000000000000', is under consideration for future implementation
locationA unique guid identifier for the Location where the ticket was generated and fulfilled
paymenttypeName of the type of payment
salesIDA unique guid identifier for a salesEmployee (sales ticket) record
houseAccountTransactionCurrently is empty but is under consideration for future implementation
transactionDetailIDCurrently is empty but is under consideration for future implementation
cateringEventCurrently is empty but is under consideration for future implementation
excludeBoolean indicating whether or not the payment was excluded
createdByA unique guid identifier for the User who created the record
createdOnThe date and time when the record was created in ISO 8601 format
modifiedByA unique guid identifier for the User who modified the record last
modifiedOnThe date and time when the record was last modified in ISO 8601 format



Entity Deleted


https://odata.restaurant365.net/api/v2/views/EntityDeleted 


Using the  entityId  field, EntityDeleted can be joined to TransactionDetail data through  entityId field where  entityName is TransactionDetail


PropertiesDescription
entityIdA unique guid identifier for this record
entityNameThe name of the entity type
deletedOnThe date and time when the record was deleted from the system
rowVersionA unique guid identifier  to represent the version of the rec


Back to Top


Data Filtering & Querying


R365 uses standard OData calls to perform Data Filtering and Querying. The following OData query options are supported:


OptionDescription
$filterFilters the results, based on the Boolean condition
$orderbySorts the results, ascending by default, use desc for descending order
$selectSelects which properties to include in the response
$skipSkips the first n results
$topReturns only the first n results


Back to Top


Examples


Transaction

Retrieve transactions created on or after the specified date

https://odata.restaurant365.net/api/v2/views/Transaction?$filter=date ge 2019-09-01T00:00:00Z
Generic


Retrieve transactions created before the specified date

https://odata.restaurant365.net/api/v2/views/Transaction?$filter=date lt 2019-12-15T00:00:00Z
Generic


Retrieve transactions created on the specified date

https://odata.restaurant365.net/api/v2/views/Transaction?$filter=date eq 2019-08-28T00:00:00Z
Generic


Retrieve transactions between a date range

https://odata.restaurant365.net/api/v2/views/Transaction?$filter=date ge 2019-03-26T00:00:00Z and date lt 2019-04-01T00:00:00Z 
Generic


Retrieve a Location and name of a transaction by transaction ID

https://odata.restaurant365.net/api/v2/views/Transaction?$select=locationId,locationName,name&$filter=transactionId eq xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Generic


Retrieve transaction details by transaction ID

https://odata.restaurant365.net/api/v2/views/TransactionDetail?$filter=transactionId eq xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Generic


Retrieve transaction details with zero balance

https://odata.restaurant365.net/api/v2/views/TransactionDetail?$filter=amount eq 0
Generic


Retrieve transaction details with adjustments and sort results by descending

https://odata.restaurant365.net/api/v2/views/TransactionDetail?$filter=adjustment ne 0&$orderby=adjustment desc
Generic


Retrieve transactions by Location ID, sort result by type and date

https://odata.restaurant365.net/api/v2/views/Transaction?$filter=locationId eq xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&$orderby=type, date
Generic


Retrieve the last 5 transactions on the specified date

https://odata.restaurant365.net/api/v2/views/Transaction?$filter=date eq 2019-03-26T00:00:00Z&$orderby=createdOn desc&$top=5
Generic


Company

Retrieve a list of companies with the names that begin with 'C'

https://odata.restaurant365.net/api/v2/views/Company?$filter=startswith(name,'C')
Generic


Retrieve a list of companies with the names that end with 'Inc'

https://odata.restaurant365.net/api/v2/views/Company?$filter=endswith(name,'Inc')
Generic


Retrieve a list of companies with the names that contain the word 'Food'

https://odata.restaurant365.net/api/v2/views/Company?$filter=contains(name,'food')
Generic


Get the last company created in the system

https://odata.restaurant365.net/api/v2/views/Company?$orderby=createdOn desc&$top=1

Item

Retrieve a list of items in the 'Food & Beverage' category

https://odata.restaurant365.net/api/v2/views/Item?$filter=category1 eq 'Food %26 Beverage'
Generic


Retrieve item(s) by item number 'ABC123'

https://odata.restaurant365.net/api/v2/views/Item?$filter=itemNumber eq 'ABC123'
Generic


Retrieve an item by a specified item ID

https://odata.restaurant365.net/api/v2/views/Item?$filter=itemId eq xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Generic


Location

Get a Location by a specified Location ID

https://odata.restaurant365.net/api/v2/views/Location?$filter=locationId eq xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Generic


Get Location(s) by Location number

https://odata.restaurant365.net/api/v2/views/Location?$filter=locationNumber eq '1234'
Generic


Get a list of Locations by a specified Legal Entity number

https://odata.restaurant365.net/api/v2/views/Location?$filter=legalEntityNumber eq 'A999'
Generic


Get a list of Locations with the names that contain the word 'Food'

https://odata.restaurant365.net/api/v2/views/Location?$filter=contains(name, 'Food')
Generic



GL Account

Get GL Account(s) by GL Account number

https://odata.restaurant365.net/api/v2/views/GLAccount?$filter=glAccountNumber eq '1234'
Generic


Get GL Account(s) by Location ID

https://odata.restaurant365.net/api/v2/views/GLAccount?$filter=locationId eq xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Generic


Get GL Account(s) by GL Type and Location

https://odata.restaurant365.net/api/v2/views/GLAccount?$filter=glType eq 'Current Asset' and locationName eq 'My Cafe'
Generic


Get Legal Entity names and numbers by a specified GL Account numeric ID

https://odata.restaurant365.net/api/v2/views/GLAccount?$filter=glAccountAutoId eq 134&$select=legalentityname,legalentitynumber,legalentityid
Generic



Employee

Get Employees by full name

https://odata.restaurant365.net/api/v2/views/Employee?$filter=fullName eq 'John Smith'
Generic


Get Employees who allow text messaging

https://odata.restaurant365.net/api/v2/views/Employee?$filter=allowTextMessaging eq true
Generic


Get Employees having a specified Location as their primary work Location

https://odata.restaurant365.net/api/v2/views/Employee?$filter=primaryLocation_id eq xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Generic


Get active Employees who live in Chicago

https://odata.restaurant365.net/api/v2/views/Employee?$filter=city eq 'Chicago' and inactive eq false
Generic



Labor

Get labor details for a specified Employee by ID on a specified work day

https://odata.restaurant365.net/api/v2/views/LaborDetail?$filter=dateWorked eq 2019-01-08T00:00:00Z and employee_Id eq xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
Generic


Get an Employee's total hours worked on a specified work day

https://odata.restaurant365.net/api/v2/views/LaborDetail?$filter=dateWorked eq 2019-01-08T00:00:00Z and employee_Id eq xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx&$select=hours
Generic


Get all punches within a specified time range on a specified work day 

https://odata.restaurant365.net/api/v2/views/LaborDetail?$filter=dateWorked eq 2019-01-08T00:00:00Z and startTime ge 2019-01-08T06:00:00Z and startTime lt 2019-01-08T12:00:00Z
Generic


Get all labor details from a specified date where Employees made less than a specified amount

https://odata.restaurant365.net/api/v2/views/LaborDetail?$filter=total le 50.00 and dateWorked eq 2019-04-23T00:00:00Z
Generic



SalesEmployee

Please note that queries to sales endpoints require date parameters that will retrieve data up to a total range of 31 days.

Get IDs for all sale tickets on a specified date range

https://odata.restaurant365.net/api/v2/views/SalesEmployee?$filter=date ge 2020-06-23T00:00:00Z and date lt 2020-06-24T00:00:00Z
Generic


Get all sale tickets from the previous day (where the previous day was 2020-06-23)

https://odata.restaurant365.net/api/v2/views/SalesEmployee?$filter=modifiedOn ge 2020-06-23T00:00:00Z
Generic



SalesDetail

Get sales details for all records from a specified location in a specified date range, with record count

https://odata.restaurant365.net/api/v2/views/SalesDetail?$filter=location eq(a46e44dc-5c80-481a-8151-0d76bc3fefe6) and date ge 2020-06-21T00:00:00Z and date le 2020-06-28T00:00:00Z&$count=true
Generic


Get sales details from a specified sales tickets (SalesEmployee), with record count

https://odata.restaurant365.net/api/v2/views/SalesDetail?$count=true&$filter=salesID eq(321349be-9b04-eb11-a82c-000d3a92ad2e)
Generic



SalesPayment

Get sales payment data for the previous day (where the previous day was 2020-09-22) 

https://odata.restaurant365.net/api/v2/views/SalesPayment?$filter=modifiedon ge 2020-09-22T00:00:00Z
Generic


Get sales payments from a specified sales ticket (SalesEmployee), with record count

https://odata.restaurant365.net/api/v2/views/SalesPayment?$count=true&$filter=salesID eq(321349be-9b04-eb11-a82c-000d3a92ad2e)




EntityDeleted

Get IDs for all Transaction Details deleted on a specified deletion date

https://odata.restaurant365.net/api/v2/views/EntityDeleted?$filter=deletedOn eq 2019-01-08T00:00:00Z and entityName eq 'TransactionDetail'
Generic

Back to Top


Postman Examples


Postman Examples can be downloaded from the below attachment.