> ## Documentation Index > Fetch the complete documentation index at: https://docs.restaurant365.com/llms.txt > Use this file to discover all available pages before exploring further. # /public/v1/labor/employees > Retrieves a paged list of employees with enriched job and location data. At least one date filter (ModifiedOnStart or ModifiedOnEnd) and at least one location scope (locations or legalEntities) are required. ## OpenAPI ````json GET /public/v1/labor/employees { "openapi": "3.0.1", "info": { "title": "R365.PublicApi", "contact": { "name": "R365 Services Team", "email": "r365@restaurant365.com" }, "version": "1.0" }, "security": [ { "Bearer": [] } ], "paths": { "/public/v1/labor/employees": { "get": { "tags": [ "employee" ], "description": "Retrieves a paged list of employees with enriched job and location data. At least one date filter (ModifiedOnStart or ModifiedOnEnd) and at least one location scope (locations or legalEntities) are required.", "parameters": [ { "name": "ModifiedOnStart", "in": "query", "description": "Start of the modified-on date range (inclusive). If provided alone the query is scoped to that single day", "schema": { "type": "string", "format": "date" } }, { "name": "ModifiedOnEnd", "in": "query", "description": "End of the modified-on date range (inclusive). If provided alone the query is scoped to that single day", "schema": { "type": "string", "format": "date" } }, { "name": "locations", "in": "query", "description": "Comma-separated list of R365 Location GUIDs to filter results. If omitted, all accessible locations are included", "schema": { "type": "string" } }, { "name": "legalEntities", "in": "query", "description": "Comma-separated list of R365 Legal Entity GUIDs to filter results. If omitted, all accessible legal entities are included", "schema": { "type": "string" } }, { "name": "pageSize", "in": "query", "description": "Number of records to return per page. Defaults to 250", "schema": { "maximum": 250, "minimum": 1, "type": "integer", "format": "int32", "default": 250 } }, { "name": "continuationToken", "in": "query", "description": "Opaque token from a prior response's NextLink. Omit on the first request; pass verbatim to fetch the next page", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Paged response containing employees for the requested page and a link to the next page when available.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/R365.Services.Employee.Contract.EmployeeExternal.EmployeeExternalPagedResponse" } } } }, "422": { "description": "Both ModifiedOnStart and ModifiedOnEnd are absent, or a provided location identifier is not a valid GUID." } } } } }, "components": { "schemas": { "R365.Services.Employee.Contract.EmployeeExternal.EmployeeExternalPagedResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/R365.Services.Employee.Contract.EmployeeExternal.Apis.ExternalEmployeeResponse" }, "description": "Employees for the current page." }, "nextLink": { "type": "string", "description": "Relative URL to retrieve the next page of results. Null when this is the last page.", "nullable": true } }, "additionalProperties": false }, "R365.Services.Employee.Contract.EmployeeExternal.Apis.ExternalEmployeeResponse": { "type": "object", "properties": { "employeeId": { "type": "string", "description": "R365 employee identifier.", "format": "uuid" }, "posEmployeeId": { "type": "string", "description": "POS system employee identifier.", "nullable": true }, "firstName": { "type": "string", "description": "Employee first name.", "nullable": true }, "lastName": { "type": "string", "description": "Employee last name.", "nullable": true }, "birthdate": { "type": "string", "description": "Employee date of birth.", "format": "date-time", "nullable": true }, "payRate": { "type": "number", "description": "Employee pay rate.", "format": "double" }, "paySchedule": { "type": "string", "description": "Pay schedule type (e.g. Hourly, Salary).", "nullable": true }, "inactive": { "type": "boolean", "description": "Indicates whether the employee is inactive." }, "hireDate": { "type": "string", "description": "Employee hire date. Null when not recorded.", "format": "date-time", "nullable": true }, "terminationDate": { "type": "string", "description": "Employee termination date, if applicable.", "format": "date-time", "nullable": true }, "payrollId": { "type": "string", "description": "External payroll system identifier.", "nullable": true }, "primaryLocation": { "$ref": "#/components/schemas/R365.Services.Employee.Contract.EmployeeExternal.Apis.Location" }, "primaryJob": { "allOf": [ { "$ref": "#/components/schemas/R365.Services.Employee.Contract.EmployeeExternal.Apis.Job" } ], "description": "Primary job assignment. Null when no primary job is recorded.", "nullable": true }, "otherLocations": { "type": "array", "items": { "$ref": "#/components/schemas/R365.Services.Employee.Contract.EmployeeExternal.Apis.Location" }, "description": "Additional location assignments.", "nullable": true }, "otherJobs": { "type": "array", "items": { "$ref": "#/components/schemas/R365.Services.Employee.Contract.EmployeeExternal.Apis.Job" }, "description": "Additional job assignments.", "nullable": true } }, "additionalProperties": false }, "R365.Services.Employee.Contract.EmployeeExternal.Apis.Location": { "type": "object", "properties": { "id": { "type": "string", "description": "Location identifier.", "format": "uuid" }, "name": { "type": "string", "description": "Location name." }, "number": { "type": "string", "description": "Location number." } }, "additionalProperties": false }, "R365.Services.Employee.Contract.EmployeeExternal.Apis.Job": { "type": "object", "properties": { "id": { "type": "string", "description": "Job identifier.", "format": "uuid" }, "name": { "type": "string", "description": "Job title name." }, "code": { "type": "string", "description": "Job code.", "nullable": true }, "department": { "type": "string", "description": "Department name.", "nullable": true } }, "additionalProperties": false } }, "securitySchemes": { "Bearer": { "type": "http", "description": "Put **_ONLY_** your JWT Bearer token on textbox below!", "scheme": "Bearer", "bearerFormat": "JWT" } } } } ````