SCHADS warnings
Needs: Roster, Read
Returns SCHADS award warnings as the roster shows them: short shifts, overtime and weekly hours, daily hours, broken shifts and rest between shifts. Only shifts that have warnings are returned. Use it after creating or changing shifts, or to review a week.
Note: At most 100 shifts with warnings are listed. A
noteasks you to narrow the range or filters when there are more.
curl -X GET "https://app.imploy.com.au/api/integrations/v1/shifts/warnings?refs=%5B%22null%22%5D&from=example_string&to=example_string&staff_id=123&client_id=123&site_id=123" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN"
import requests
import json
url = "https://app.imploy.com.au/api/integrations/v1/shifts/warnings?refs=%5B%22null%22%5D&from=example_string&to=example_string&staff_id=123&client_id=123&site_id=123"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
}
response = requests.get(url, headers=headers)
print(response.json())
const response = await fetch("https://app.imploy.com.au/api/integrations/v1/shifts/warnings?refs=%5B%22null%22%5D&from=example_string&to=example_string&staff_id=123&client_id=123&site_id=123", {
method: "GET",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
}
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://app.imploy.com.au/api/integrations/v1/shifts/warnings?refs=%5B%22null%22%5D&from=example_string&to=example_string&staff_id=123&client_id=123&site_id=123", nil)
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://app.imploy.com.au/api/integrations/v1/shifts/warnings?refs=%5B%22null%22%5D&from=example_string&to=example_string&staff_id=123&client_id=123&site_id=123')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri)
request['Content-Type'] = 'application/json'
request['Authorization'] = 'Bearer YOUR_API_TOKEN'
response = http.request(request)
puts response.body
{
"shifts_checked": 64,
"shifts_with_warnings": 1,
"data": [
{
"ref": "a:123",
"start": "2026-03-02 09:00",
"end": "2026-03-02 11:00",
"warnings": [
"..."
]
}
]
}
{
"message": "Invalid or expired access token."
}
{
"message": "Access token does not permit this action."
}
{
"message": "Too many requests."
}
/shifts/warnings
Target server for requests. Edit to use your own host.
An organisation access token that starts with imp_at_. Send it as Authorization: Bearer imp_at_XXXX.
imp_at_. Send it as Authorization: Bearer imp_at_XXXX.Check these shifts (up to 100), comma separated.
Or check a period, YYYY-MM-DD. Needed when refs is not sent.
End date, up to 31 days after from. Defaults to 7 days.
Only this staff member.
Only this client.
Only this site.
Request Preview
Response
Response will appear here after sending the request
Authentication
Bearer token. An organisation access token that starts with imp_at_. Send it as Authorization: Bearer imp_at_XXXX.
Query Parameters
Check these shifts (up to 100), comma separated.
Or check a period, YYYY-MM-DD. Needed when refs is not sent.
End date, up to 31 days after from. Defaults to 7 days.
Only this staff member.
Only this client.
Only this site.
Responses
OK