eyworks Public API | Getting Started Guide

Getting started with the eyworks Public API

The eyworks Public API provides secure, authenticated access to selected nursery data for customer integrations, reporting, business intelligence tools and other connected applications.

This guide explains what you need before starting, how to request access, and how to make your first API request. For the complete endpoint reference, including request and response examples, visit the eyworks Public API Postman documentation.


What you need before you start

Requirement Details
API licenceAn active API licence for each nursery you want to connect.
API credentialsA clientId and clientSecret issued by eyworks.
Tenant addressThe subdomain for your eyworks account.
Technical setupA system, reporting tool or technical team to make the API requests.

API credentials are issued for your tenant and are limited to the nurseries and permissions covered by your licence.


Request API access

Once your API licence is active, the eyworks support team can generate your tenant-specific clientId and clientSecret.

An API licence is required for each nursery you want to connect to the eyworks Public API. To discuss API licensing or arrange a licence, email sales@eyworks.co.uk or visit the eyworks API & CSV page.


Your API address

Your API address is based on your eyworks tenant:

https://<your-tenant-subdomain>.eylog.co.uk/public/v1

Replace <your-tenant-subdomain> with the subdomain supplied for your eyworks account.


Try the API with Postman

Postman lets you review and try the API before building it into your own system.

Run the collection in Postman

Open the eyworks Public API Postman documentation to view the available endpoints, request details and response examples.

You can fork or import the collection into your own Postman workspace, then enter your tenant-specific values locally before making requests.

The collection does not include customer credentials or a shared environment. Set your own baseUrl, clientId and clientSecret locally.

Step What to do
1Open the eyworks Public API Postman documentation.
2Fork or import the collection into your own Postman workspace.
3Enter your tenant base URL, clientId and clientSecret in your local collection variables.
4Request an access token.
5Use the token to send requests to the endpoints available to your client.

Security reminder: Never share your client secret, access token or refresh token.

Get an access token

The API uses an OAuth 2.0-style client credentials flow with bearer access tokens. Use the client credentials supplied by eyworks to request an access token:

POST https://<your-tenant-subdomain>.eylog.co.uk/public/v1/oauth/token
Content-Type: application/json
{
"grantType": "client_credentials",
"clientId": "YOUR_CLIENT_ID",
"clientSecret": "YOUR_CLIENT_SECRET"
}

Include the returned access token as a bearer token in every protected request:

Authorization: Bearer YOUR_ACCESS_TOKEN

When the access token expires, use the refresh token returned by the token request:

{
"grantType": "refresh_token",
"refreshToken": "YOUR_REFRESH_TOKEN"
}

Refresh tokens are single-use. Each refresh request returns a new token pair and invalidates the previous refresh token.

Token Validity Purpose
Access token1 hourUsed to call protected API endpoints.
Refresh token30 daysUsed to obtain new access tokens.

Make your first request

After authentication, you can start by listing the companies available to your client:

GET https://<your-tenant-subdomain>.eylog.co.uk/public/v1/companies?page=1&pageSize=25
Authorization: Bearer YOUR_ACCESS_TOKEN
Accept: application/json

Use the company and nursery identifiers returned by the API when making requests for a specific nursery.


How responses are returned

Successful responses use a consistent response envelope:

{
"status": true,
"code": 200,
"message": "OK",
"data": {},
"correlationId": "<correlation-id>",
"apiVersion": 1
}
Response type What to expect
List requestAn array in data, with pagination under metadata.pagination when applicable.
Detail requestAn object in data.
Validation errorA response with status: false and field-level details in errors when available.

The data field contains the resource object or collection array directly; it is not wrapped in another named property.

Keep the correlationId when contacting support about a failed request.


What can you do with the API?

Area What it allows you to do
CompaniesFind companies and the nurseries within them.
NurseriesRetrieve nursery details, rooms, employees, children, enquiries and availability.
EmployeesRetrieve employee details, qualifications and training records.
ChildrenRetrieve child records.
EnquiriesRetrieve enquiries and submit new enquiries to a nursery using the enquiries:write scope.
Nursery settingsRetrieve lookup values and available sessions used by nursery integrations.

For detailed routes, query parameters and request/response examples, use the Postman documentation.


API scopes

Your client is assigned scopes that control which areas of the API it can use:

Scope Access
company:readCompany data.
nurseries:readNursery data, rooms, sessions and company nursery lists.
employee:readEmployee data, qualifications and training.
children:readChildren data.
enquiries:readEnquiry data and enquiry lookup values.
enquiries:writeSubmit enquiries.
availability:readNursery availability data.

The scopes assigned to your client are included in the token response. A scope does not provide access to every nursery; access is also limited by your API licence and client permissions.


Common problems

Status What it usually means
400The request format or a parameter is invalid.
401The access token is missing, invalid or expired.
403Your client does not have the required scope or nursery access.
404The requested resource is not available to your client.
422The request failed validation. Check the returned field details.
429Your client has exceeded the permitted request rate.
500The service could not complete the request. Use the correlation ID when contacting support.

API updates

The eyworks Public API is expanded over time. The following capabilities are currently available:

Available from Area Capability
18 August 2026EnquiriesCreate an enquiry for a nursery using POST /nurseries/{guid}/enquiries.
18 August 2026Nursery settingsRetrieve enquiry lookup values and available sessions to support nursery integrations.
18 August 2026Nursery availabilityRetrieve nursery availability using GET /nurseries/{guid}/availability. If no segment is provided, availability is returned using a nursery-level breakdown.
id="Need_help">Need help?

For API licensing or licence agreements, email sales@eyworks.co.uk. For credentials, onboarding or technical questions, email support@eyworks.co.uk.

When reporting a failed request, include the correlation ID from the response. Do not include client secrets, access tokens or refresh tokens.