Canteen license revenue as included in the NSW Department of Education’s Annual Report, and as included in individual NSW government school Annual Reports.
Data Notes:
-
The choice of method of operation of school canteens must be made in consultation with parent organisations in determining the best outcome for the school and its community.
-
A standard canteen license agreement provides a set fee over a committed time period. Whilst the licensee administers the canteen, the principal maintains control over the agreement including the types of food sold.
-
For calendar years 2020, 2021 and 2022, fee waivers provided to external canteen operators (due to Covid-19)were reported as canteen license revenue.
Data Source:
- Financial Controlling, Finance Directorate, NSW Department of Education
- Data.NSW
CKAN Data API
Access resource data via a web API with powerful query support. Further information in the main CKAN Data API and DataStore documentation.
Code examples:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "1538fff8-c436-46fa-be20-5700c96104d3",
"limit": 5,
"q": "jones"
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({
resource_id: '1538fff8-c436-46fa-be20-5700c96104d3',
limit: 5,
q: 'jones'
})
})
await resp.json()
$json = @'
{
"resource_id": "1538fff8-c436-46fa-be20-5700c96104d3",
"limit": 5,
"q": "jones"
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
(using the ckanapi client library)
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="1538fff8-c436-46fa-be20-5700c96104d3",
limit=5,
q="jones",
)
print(result['records'])library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id = '1538fff8-c436-46fa-be20-5700c96104d3',
limit = 5,
q = 'jones'))
req_perform %>%
resp_body_json
Get results with either "watershed" or "survey" as subject and "active" as its stage:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "1538fff8-c436-46fa-be20-5700c96104d3",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({resource_id: '1538fff8-c436-46fa-be20-5700c96104d3', filters: {
subject: ['watershed', 'survey'],
stage: 'active'
}})})
await resp.json()
$json = @'
{
"resource_id": "1538fff8-c436-46fa-be20-5700c96104d3",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="1538fff8-c436-46fa-be20-5700c96104d3",
filters={
"subject": ["watershed", "survey"],
"stage": "active",
},
)
print(result['records'])
library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id='1538fff8-c436-46fa-be20-5700c96104d3',
filters = list(
subject = list("watershed", "survey"),
stage = "active")))
req_perform %>%
resp_body_json
Some API endpoints may be accessed using a GET query string.
Query example (first 5 results) Query example (results containing 'jones')CKAN Data API
Access resource data via a web API with powerful query support. Further information in the main CKAN Data API and DataStore documentation.
Code examples:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "c167de29-9da6-4632-863e-c60410e25cb3",
"limit": 5,
"q": "jones"
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({
resource_id: 'c167de29-9da6-4632-863e-c60410e25cb3',
limit: 5,
q: 'jones'
})
})
await resp.json()
$json = @'
{
"resource_id": "c167de29-9da6-4632-863e-c60410e25cb3",
"limit": 5,
"q": "jones"
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
(using the ckanapi client library)
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="c167de29-9da6-4632-863e-c60410e25cb3",
limit=5,
q="jones",
)
print(result['records'])library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id = 'c167de29-9da6-4632-863e-c60410e25cb3',
limit = 5,
q = 'jones'))
req_perform %>%
resp_body_json
Get results with either "watershed" or "survey" as subject and "active" as its stage:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "c167de29-9da6-4632-863e-c60410e25cb3",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({resource_id: 'c167de29-9da6-4632-863e-c60410e25cb3', filters: {
subject: ['watershed', 'survey'],
stage: 'active'
}})})
await resp.json()
$json = @'
{
"resource_id": "c167de29-9da6-4632-863e-c60410e25cb3",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="c167de29-9da6-4632-863e-c60410e25cb3",
filters={
"subject": ["watershed", "survey"],
"stage": "active",
},
)
print(result['records'])
library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id='c167de29-9da6-4632-863e-c60410e25cb3',
filters = list(
subject = list("watershed", "survey"),
stage = "active")))
req_perform %>%
resp_body_json
Some API endpoints may be accessed using a GET query string.
Query example (first 5 results) Query example (results containing 'jones')CKAN Data API
Access resource data via a web API with powerful query support. Further information in the main CKAN Data API and DataStore documentation.
Code examples:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "1afe85b7-d5cd-4d26-a46a-8471f60ff508",
"limit": 5,
"q": "jones"
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({
resource_id: '1afe85b7-d5cd-4d26-a46a-8471f60ff508',
limit: 5,
q: 'jones'
})
})
await resp.json()
$json = @'
{
"resource_id": "1afe85b7-d5cd-4d26-a46a-8471f60ff508",
"limit": 5,
"q": "jones"
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
(using the ckanapi client library)
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="1afe85b7-d5cd-4d26-a46a-8471f60ff508",
limit=5,
q="jones",
)
print(result['records'])library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id = '1afe85b7-d5cd-4d26-a46a-8471f60ff508',
limit = 5,
q = 'jones'))
req_perform %>%
resp_body_json
Get results with either "watershed" or "survey" as subject and "active" as its stage:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "1afe85b7-d5cd-4d26-a46a-8471f60ff508",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({resource_id: '1afe85b7-d5cd-4d26-a46a-8471f60ff508', filters: {
subject: ['watershed', 'survey'],
stage: 'active'
}})})
await resp.json()
$json = @'
{
"resource_id": "1afe85b7-d5cd-4d26-a46a-8471f60ff508",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="1afe85b7-d5cd-4d26-a46a-8471f60ff508",
filters={
"subject": ["watershed", "survey"],
"stage": "active",
},
)
print(result['records'])
library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id='1afe85b7-d5cd-4d26-a46a-8471f60ff508',
filters = list(
subject = list("watershed", "survey"),
stage = "active")))
req_perform %>%
resp_body_json
Some API endpoints may be accessed using a GET query string.
Query example (first 5 results) Query example (results containing 'jones')CKAN Data API
Access resource data via a web API with powerful query support. Further information in the main CKAN Data API and DataStore documentation.
Code examples:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "6554b728-0c35-4419-936c-f82dc8dd3600",
"limit": 5,
"q": "jones"
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({
resource_id: '6554b728-0c35-4419-936c-f82dc8dd3600',
limit: 5,
q: 'jones'
})
})
await resp.json()
$json = @'
{
"resource_id": "6554b728-0c35-4419-936c-f82dc8dd3600",
"limit": 5,
"q": "jones"
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
(using the ckanapi client library)
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="6554b728-0c35-4419-936c-f82dc8dd3600",
limit=5,
q="jones",
)
print(result['records'])library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id = '6554b728-0c35-4419-936c-f82dc8dd3600',
limit = 5,
q = 'jones'))
req_perform %>%
resp_body_json
Get results with either "watershed" or "survey" as subject and "active" as its stage:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "6554b728-0c35-4419-936c-f82dc8dd3600",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({resource_id: '6554b728-0c35-4419-936c-f82dc8dd3600', filters: {
subject: ['watershed', 'survey'],
stage: 'active'
}})})
await resp.json()
$json = @'
{
"resource_id": "6554b728-0c35-4419-936c-f82dc8dd3600",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="6554b728-0c35-4419-936c-f82dc8dd3600",
filters={
"subject": ["watershed", "survey"],
"stage": "active",
},
)
print(result['records'])
library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id='6554b728-0c35-4419-936c-f82dc8dd3600',
filters = list(
subject = list("watershed", "survey"),
stage = "active")))
req_perform %>%
resp_body_json
Some API endpoints may be accessed using a GET query string.
Query example (first 5 results) Query example (results containing 'jones')CKAN Data API
Access resource data via a web API with powerful query support. Further information in the main CKAN Data API and DataStore documentation.
Code examples:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "f8d28727-beff-4e91-89a6-668d2352a0dd",
"limit": 5,
"q": "jones"
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({
resource_id: 'f8d28727-beff-4e91-89a6-668d2352a0dd',
limit: 5,
q: 'jones'
})
})
await resp.json()
$json = @'
{
"resource_id": "f8d28727-beff-4e91-89a6-668d2352a0dd",
"limit": 5,
"q": "jones"
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
(using the ckanapi client library)
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="f8d28727-beff-4e91-89a6-668d2352a0dd",
limit=5,
q="jones",
)
print(result['records'])library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id = 'f8d28727-beff-4e91-89a6-668d2352a0dd',
limit = 5,
q = 'jones'))
req_perform %>%
resp_body_json
Get results with either "watershed" or "survey" as subject and "active" as its stage:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "f8d28727-beff-4e91-89a6-668d2352a0dd",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({resource_id: 'f8d28727-beff-4e91-89a6-668d2352a0dd', filters: {
subject: ['watershed', 'survey'],
stage: 'active'
}})})
await resp.json()
$json = @'
{
"resource_id": "f8d28727-beff-4e91-89a6-668d2352a0dd",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="f8d28727-beff-4e91-89a6-668d2352a0dd",
filters={
"subject": ["watershed", "survey"],
"stage": "active",
},
)
print(result['records'])
library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id='f8d28727-beff-4e91-89a6-668d2352a0dd',
filters = list(
subject = list("watershed", "survey"),
stage = "active")))
req_perform %>%
resp_body_json
Some API endpoints may be accessed using a GET query string.
Query example (first 5 results) Query example (results containing 'jones')CKAN Data API
Access resource data via a web API with powerful query support. Further information in the main CKAN Data API and DataStore documentation.
Code examples:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "03392aff-7578-4327-b459-410f955814e1",
"limit": 5,
"q": "jones"
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({
resource_id: '03392aff-7578-4327-b459-410f955814e1',
limit: 5,
q: 'jones'
})
})
await resp.json()
$json = @'
{
"resource_id": "03392aff-7578-4327-b459-410f955814e1",
"limit": 5,
"q": "jones"
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
(using the ckanapi client library)
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="03392aff-7578-4327-b459-410f955814e1",
limit=5,
q="jones",
)
print(result['records'])library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id = '03392aff-7578-4327-b459-410f955814e1',
limit = 5,
q = 'jones'))
req_perform %>%
resp_body_json
Get results with either "watershed" or "survey" as subject and "active" as its stage:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "03392aff-7578-4327-b459-410f955814e1",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({resource_id: '03392aff-7578-4327-b459-410f955814e1', filters: {
subject: ['watershed', 'survey'],
stage: 'active'
}})})
await resp.json()
$json = @'
{
"resource_id": "03392aff-7578-4327-b459-410f955814e1",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="03392aff-7578-4327-b459-410f955814e1",
filters={
"subject": ["watershed", "survey"],
"stage": "active",
},
)
print(result['records'])
library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id='03392aff-7578-4327-b459-410f955814e1',
filters = list(
subject = list("watershed", "survey"),
stage = "active")))
req_perform %>%
resp_body_json
Some API endpoints may be accessed using a GET query string.
Query example (first 5 results) Query example (results containing 'jones')CKAN Data API
Access resource data via a web API with powerful query support. Further information in the main CKAN Data API and DataStore documentation.
Code examples:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "d2b28f1b-1578-46ac-80c2-97a5b157fe7c",
"limit": 5,
"q": "jones"
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({
resource_id: 'd2b28f1b-1578-46ac-80c2-97a5b157fe7c',
limit: 5,
q: 'jones'
})
})
await resp.json()
$json = @'
{
"resource_id": "d2b28f1b-1578-46ac-80c2-97a5b157fe7c",
"limit": 5,
"q": "jones"
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
(using the ckanapi client library)
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="d2b28f1b-1578-46ac-80c2-97a5b157fe7c",
limit=5,
q="jones",
)
print(result['records'])library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id = 'd2b28f1b-1578-46ac-80c2-97a5b157fe7c',
limit = 5,
q = 'jones'))
req_perform %>%
resp_body_json
Get results with either "watershed" or "survey" as subject and "active" as its stage:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "d2b28f1b-1578-46ac-80c2-97a5b157fe7c",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({resource_id: 'd2b28f1b-1578-46ac-80c2-97a5b157fe7c', filters: {
subject: ['watershed', 'survey'],
stage: 'active'
}})})
await resp.json()
$json = @'
{
"resource_id": "d2b28f1b-1578-46ac-80c2-97a5b157fe7c",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="d2b28f1b-1578-46ac-80c2-97a5b157fe7c",
filters={
"subject": ["watershed", "survey"],
"stage": "active",
},
)
print(result['records'])
library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id='d2b28f1b-1578-46ac-80c2-97a5b157fe7c',
filters = list(
subject = list("watershed", "survey"),
stage = "active")))
req_perform %>%
resp_body_json
Some API endpoints may be accessed using a GET query string.
Query example (first 5 results) Query example (results containing 'jones')CKAN Data API
Access resource data via a web API with powerful query support. Further information in the main CKAN Data API and DataStore documentation.
Code examples:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "54aef9c0-437d-41c4-9ce4-ee138983b502",
"limit": 5,
"q": "jones"
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({
resource_id: '54aef9c0-437d-41c4-9ce4-ee138983b502',
limit: 5,
q: 'jones'
})
})
await resp.json()
$json = @'
{
"resource_id": "54aef9c0-437d-41c4-9ce4-ee138983b502",
"limit": 5,
"q": "jones"
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
(using the ckanapi client library)
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="54aef9c0-437d-41c4-9ce4-ee138983b502",
limit=5,
q="jones",
)
print(result['records'])library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id = '54aef9c0-437d-41c4-9ce4-ee138983b502',
limit = 5,
q = 'jones'))
req_perform %>%
resp_body_json
Get results with either "watershed" or "survey" as subject and "active" as its stage:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "54aef9c0-437d-41c4-9ce4-ee138983b502",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({resource_id: '54aef9c0-437d-41c4-9ce4-ee138983b502', filters: {
subject: ['watershed', 'survey'],
stage: 'active'
}})})
await resp.json()
$json = @'
{
"resource_id": "54aef9c0-437d-41c4-9ce4-ee138983b502",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="54aef9c0-437d-41c4-9ce4-ee138983b502",
filters={
"subject": ["watershed", "survey"],
"stage": "active",
},
)
print(result['records'])
library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id='54aef9c0-437d-41c4-9ce4-ee138983b502',
filters = list(
subject = list("watershed", "survey"),
stage = "active")))
req_perform %>%
resp_body_json
Some API endpoints may be accessed using a GET query string.
Query example (first 5 results) Query example (results containing 'jones')CKAN Data API
Access resource data via a web API with powerful query support. Further information in the main CKAN Data API and DataStore documentation.
Code examples:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "1af1ec3c-e1d0-4b84-8e6e-814dcd9f5058",
"limit": 5,
"q": "jones"
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({
resource_id: '1af1ec3c-e1d0-4b84-8e6e-814dcd9f5058',
limit: 5,
q: 'jones'
})
})
await resp.json()
$json = @'
{
"resource_id": "1af1ec3c-e1d0-4b84-8e6e-814dcd9f5058",
"limit": 5,
"q": "jones"
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
(using the ckanapi client library)
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="1af1ec3c-e1d0-4b84-8e6e-814dcd9f5058",
limit=5,
q="jones",
)
print(result['records'])library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id = '1af1ec3c-e1d0-4b84-8e6e-814dcd9f5058',
limit = 5,
q = 'jones'))
req_perform %>%
resp_body_json
Get results with either "watershed" or "survey" as subject and "active" as its stage:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "1af1ec3c-e1d0-4b84-8e6e-814dcd9f5058",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({resource_id: '1af1ec3c-e1d0-4b84-8e6e-814dcd9f5058', filters: {
subject: ['watershed', 'survey'],
stage: 'active'
}})})
await resp.json()
$json = @'
{
"resource_id": "1af1ec3c-e1d0-4b84-8e6e-814dcd9f5058",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="1af1ec3c-e1d0-4b84-8e6e-814dcd9f5058",
filters={
"subject": ["watershed", "survey"],
"stage": "active",
},
)
print(result['records'])
library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id='1af1ec3c-e1d0-4b84-8e6e-814dcd9f5058',
filters = list(
subject = list("watershed", "survey"),
stage = "active")))
req_perform %>%
resp_body_json
Some API endpoints may be accessed using a GET query string.
Query example (first 5 results) Query example (results containing 'jones')CKAN Data API
Access resource data via a web API with powerful query support. Further information in the main CKAN Data API and DataStore documentation.
Code examples:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "c9a7e749-d0b7-4f19-b14d-0394ead56e21",
"limit": 5,
"q": "jones"
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({
resource_id: 'c9a7e749-d0b7-4f19-b14d-0394ead56e21',
limit: 5,
q: 'jones'
})
})
await resp.json()
$json = @'
{
"resource_id": "c9a7e749-d0b7-4f19-b14d-0394ead56e21",
"limit": 5,
"q": "jones"
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
(using the ckanapi client library)
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="c9a7e749-d0b7-4f19-b14d-0394ead56e21",
limit=5,
q="jones",
)
print(result['records'])library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id = 'c9a7e749-d0b7-4f19-b14d-0394ead56e21',
limit = 5,
q = 'jones'))
req_perform %>%
resp_body_json
Get results with either "watershed" or "survey" as subject and "active" as its stage:
curl https://data.nsw.gov.au/data/en/api/action/datastore_search \
-H"Authorization:$API_TOKEN" -d '
{
"resource_id": "c9a7e749-d0b7-4f19-b14d-0394ead56e21",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}'
const resp = await fetch(`https://data.nsw.gov.au/data/en/api/action/datastore_search`, {
method: 'POST',
headers: {
'content-type': 'application/json',
authorization: API_TOKEN
},
body: JSON.stringify({resource_id: 'c9a7e749-d0b7-4f19-b14d-0394ead56e21', filters: {
subject: ['watershed', 'survey'],
stage: 'active'
}})})
await resp.json()
$json = @'
{
"resource_id": "c9a7e749-d0b7-4f19-b14d-0394ead56e21",
"filters": {
"subject": ["watershed", "survey"],
"stage": "active"
}
}
'@
$response = Invoke-RestMethod https://data.nsw.gov.au/data/en/api/action/datastore_search`
-Method Post -Body $json -Headers @{"Authorization"="$API_TOKEN"}
$response.result.records
from ckanapi import RemoteCKAN
rc = RemoteCKAN('https://data.nsw.gov.au/data/en/', apikey=API_TOKEN)
result = rc.action.datastore_search(
resource_id="c9a7e749-d0b7-4f19-b14d-0394ead56e21",
filters={
"subject": ["watershed", "survey"],
"stage": "active",
},
)
print(result['records'])
library(httr2)
req <- request("https://data.nsw.gov.au/data/en/api/action/datastore_search")
result <- req %>%
req_headers(Authorization = API_TOKEN) %>%
req_body_json(list(
resource_id='c9a7e749-d0b7-4f19-b14d-0394ead56e21',
filters = list(
subject = list("watershed", "survey"),
stage = "active")))
req_perform %>%
resp_body_json
Some API endpoints may be accessed using a GET query string.
Query example (first 5 results) Query example (results containing 'jones')This resource view is not available at the moment. Click here for more information.
Embed resource view
You can copy and paste the embed code into a CMS or blog software that supports raw HTML
<iframe title="Data viewer" width="700" height="400" src="https://data.nsw.gov.au/data/en/dataset/nsw-education-nsw-public-schools-income-from-licensed-canteens/resource/1538fff8-c436-46fa-be20-5700c96104d3/view/0d0f587e-6301-49bb-87d2-b0cbde56e765" frameBorder="0"></iframe>
| Field | Value |
|---|---|
| Title | NSW public schools’ revenue from licensed canteens (2014-2023) |
| Date Published | 12/02/2017 |
| Last Updated | 14/10/2025 |
| Publisher/Agency | NSW Department of Education |
| Licence | Creative Commons Attribution |
| Update Frequency | Annually |
| Contact Point |
NSW Department of Education Data Services <data.services@det.nsw.edu.au> |
| Temporal Coverage | 01/01/2014 - 31/12/2023 |
| Geospatial Coverage |
|
| Data Portal | Data.NSW |