State Records NSW API documentation
This is documentation for the State Records Authority of NSW API. Source code for the API is available on Github. If you encounter any bugs, or have feature requests, please report them on the issues page.
Built with Ruby on Rails using the Sunspot, Mongoid, and Kaminari gems. Icons from FAMFAMFAM.
General
All API responses return at least XML or JSON. Depending on the method, additional formats (such as MODS) may also be returned. Formats can be specified by adding a dot extension (e.g. /search.xml?q=coal) or a format parameter (e.g. /search?q=coal&format=xml).
Search
/search
Search the catalogue.
- Formats:
- xml (OpenSearch response elements), json
- Parameters:
- q: [query string e.g. unemployment] keyword search
series: [series id e.g. 13660] filter results by series id
entities: [comma-separated list of entities e.g. Item,Series,Function,Activity] return results for selected entities
from: [year e.g. 1940] return results from this year onwards
to: [year e.g. 1980] return results up to this year
location: [location string e.g. Western Sydney] filter results by location
page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
Function
A function is a major area of responsibility, authority or jurisdiction assigned to or assumed by an organisation. Functions derive from mandates usually given in legislation. Functions can be permissive or prescriptive. They constitute the principal themes of business of any organisation.
/functions
Returns a list of functions.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/functions/[:id]
Returns function with identifier :id.
- Formats:
- xml, json
/functions/[:id]/activities
Returns a list of activities comprising a particular function.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/functions/[:id]/agencies
Returns a list of agencies exercising a particular function.
- Formats:
- xml, json, oai_dc (Dublin Core without qualification), eac_cpf (Encoded Archival Context - Corporate Bodies, Persons, and Families)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/functions/[:id]/persons
Returns a list of persons exercising a particular function.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/functions/[:id]/comments
Returns a list of comments in a particular function.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/functions/[:id]/tags
Returns a list of tags in a particular function.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
Activity
An activity is a part of a function. Activities provide more specific functional context for record series than can be providedbe provided by a function.
/activities
Returns a list of activities.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/activities/[:id]
Returns activity with identifier :id.
- Formats:
- xml, json
/activities/[:id]/functions
Returns a list of functions containing a particular activity.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/activities/[:id]/series
Returns a list of series documenting a particular activity.
- Formats:
- xml, json, mods (Library of Congress Metadata Object Description Schema), rdf_zotero, rif (Registry Information Format - Collections and Services)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/activities/[:id]/comments
Returns a list of comments in a particular activity.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/activities/[:id]/tags
Returns a list of tags in a particular activity.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
Agency
An agency is an administrative or business unit which has responsibility for carrying out some designated activity.
/agencies
Returns a list of agencies.
- Formats:
- xml, json, oai_dc (Dublin Core without qualification), eac_cpf (Encoded Archival Context - Corporate Bodies, Persons, and Families)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/agencies/[:id]
Returns agency with identifier :id.
- Formats:
- xml, json, oai_dc (Dublin Core without qualification), eac_cpf (Encoded Archival Context - Corporate Bodies, Persons, and Families)
/agencies/[:id]/preceding
Returns a list of agencies preceding a particular agency.
- Formats:
- xml, json, oai_dc (Dublin Core without qualification), eac_cpf (Encoded Archival Context - Corporate Bodies, Persons, and Families)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/agencies/[:id]/succeeding
Returns a list of agencies succeeding a particular agency.
- Formats:
- xml, json, oai_dc (Dublin Core without qualification), eac_cpf (Encoded Archival Context - Corporate Bodies, Persons, and Families)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/agencies/[:id]/superior
Returns a list of agencies superior to a particular agency.
- Formats:
- xml, json, oai_dc (Dublin Core without qualification), eac_cpf (Encoded Archival Context - Corporate Bodies, Persons, and Families)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/agencies/[:id]/subordinate
Returns a list of agencies subordinate to a particular agency.
- Formats:
- xml, json, oai_dc (Dublin Core without qualification), eac_cpf (Encoded Archival Context - Corporate Bodies, Persons, and Families)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/agencies/[:id]/related
Returns a list of agencies related to a particular agency.
- Formats:
- xml, json, oai_dc (Dublin Core without qualification), eac_cpf (Encoded Archival Context - Corporate Bodies, Persons, and Families)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/agencies/[:id]/functions
Returns a list of functions exercised by a particular agency.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/agencies/[:id]/organisations
Returns a list of organisations controlling a particular agency.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/agencies/[:id]/persons
Returns a list of persons related to a particular agency.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/agencies/[:id]/series_created
Returns a list of series created by a particular agency.
- Formats:
- xml, json, mods (Library of Congress Metadata Object Description Schema), rdf_zotero, rif (Registry Information Format - Collections and Services)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/agencies/[:id]/series_controlled
Returns a list of series controlled by a particular agency.
- Formats:
- xml, json, mods (Library of Congress Metadata Object Description Schema), rdf_zotero, rif (Registry Information Format - Collections and Services)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/agencies/[:id]/comments
Returns a list of comments in a particular agency.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/agencies/[:id]/tags
Returns a list of tags in a particular agency.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
Person
A person is an individual who creates records, usually in an official capacity, but whose records have not been maintained in the records of the associated agency.
/persons
Returns a list of persons.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/persons/[:id]
Returns person with identifier :id.
- Formats:
- xml, json
/persons/[:id]/agencies
Returns a list of agencies related to a particular person.
- Formats:
- xml, json, oai_dc (Dublin Core without qualification), eac_cpf (Encoded Archival Context - Corporate Bodies, Persons, and Families)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/persons/[:id]/ministries
Returns a list of ministries containing a particular person.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/persons/[:id]/portfolios
Returns a list of portfolios held by a particular person.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/persons/[:id]/functions
Returns a list of functions exercised by a particular person.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/persons/[:id]/series
Returns a list of series created by a particular person.
- Formats:
- xml, json, mods (Library of Congress Metadata Object Description Schema), rdf_zotero, rif (Registry Information Format - Collections and Services)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/persons/[:id]/comments
Returns a list of comments in a particular person.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/persons/[:id]/tags
Returns a list of tags in a particular person.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
Organisation
An organisation is a whole government, municipal council, incorporated company, church or other body that is generally regarded as independent and autonomous in the performance of its normal functions.
/organisations
Returns a list of organisations.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/organisations/[:id]
Returns organisation with identifier :id.
- Formats:
- xml, json
/organisations/[:id]/preceding
Returns a list of organisations preceding a particular organisation.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/organisations/[:id]/succeeding
Returns a list of organisations succeeding a particular organisation.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/organisations/[:id]/agencies
Returns a list of agencies controlled by a particular organisation.
- Formats:
- xml, json, oai_dc (Dublin Core without qualification), eac_cpf (Encoded Archival Context - Corporate Bodies, Persons, and Families)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/organisations/[:id]/comments
Returns a list of comments in a particular organisation.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/organisations/[:id]/tags
Returns a list of tags in a particular organisation.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
Ministry
A ministry is the body of ministers who hold warrants from the Head of State as members of the Executive Council. A ministry comprises a number of portfolios. A ministry is often named for the Premier who led it. Coalition ministries are often named after both leaders.
/ministries
Returns a list of ministries.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/ministries/[:id]
Returns ministry with identifier :id.
- Formats:
- xml, json
/ministries/[:id]/portfolios
Returns a list of portfolios in a particular ministry.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
Portfolio
A portfolio is the responsibility, or combination of responsibilities, assigned to a particular minister. Portfolios administer agencies.
/portfolios
Returns a list of portfolios.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/portfolios/[:id]
Returns portfolio with identifier :id.
- Formats:
- xml, json
/portfolios/[:id]/preceding
Returns a list of portfolios preceding a particular portfolio.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/portfolios/[:id]/succeeding
Returns a list of porfolios succeeding a particular portfolio.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/portfolios/[:id]/ministries
Returns a list of ministries containing a particular porfolio.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/portfolios/[:id]/persons
Returns a list of ministers appointed to a particular portfolio.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/portfolios/[:id]/agencies
Returns a list of agencies administered through a particular portfolio.
- Formats:
- xml, json, oai_dc (Dublin Core without qualification), eac_cpf (Encoded Archival Context - Corporate Bodies, Persons, and Families)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/portfolios/[:id]/comments
Returns a list of comments in a particular portfolio.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/portfolios/[:id]/tags
Returns a list of tags in a particular portfolio.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
Series
A record series is a group of (one or more) record items accumulated by an agency or person which have a common identity and system of control, and are generally in the same format.
/series
Returns a list of series.
- Formats:
- xml, json, mods (Library of Congress Metadata Object Description Schema), rdf_zotero, rif (Registry Information Format - Collections and Services)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/series/[:id]
Returns series with identifier :id.
- Formats:
- xml, json, mods (Library of Congress Metadata Object Description Schema), rdf_zotero, rif (Registry Information Format - Collections and Services)
/series/[:id]/persons
Returns a list of persons responsible for creating a particular series.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/series/[:id]/agencies_creating
Returns a list of agencies responsible for creating a particular series.
- Formats:
- xml, json, oai_dc (Dublin Core without qualification), eac_cpf (Encoded Archival Context - Corporate Bodies, Persons, and Families)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/series/[:id]/agencies_controlling
Returns a list of agencies controlling a particular series.
- Formats:
- xml, json, oai_dc (Dublin Core without qualification), eac_cpf (Encoded Archival Context - Corporate Bodies, Persons, and Families)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/series/[:id]/activities
Returns a list of activities documented by a particular series.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/series/[:id]/preceding
Returns a list of series preceding a particular series.
- Formats:
- xml, json, mods (Library of Congress Metadata Object Description Schema), rdf_zotero, rif (Registry Information Format - Collections and Services)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/series/[:id]/succeeding
Returns a list of series succeeding a particular series.
- Formats:
- xml, json, mods (Library of Congress Metadata Object Description Schema), rdf_zotero, rif (Registry Information Format - Collections and Services)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/series/[:id]/related
Returns a list of series related to a particular series.
- Formats:
- xml, json, mods (Library of Congress Metadata Object Description Schema), rdf_zotero, rif (Registry Information Format - Collections and Services)
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/series/[:id]/items
Returns a list of items in a particular series.
- Formats:
- xml, json, mods (Library of Congress Metadata Object Description Schema), rdf_zotero
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/series/[:id]/comments
Returns a list of comments in a particular series.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/series/[:id]/tags
Returns a list of tags in a particular series.
- Formats:
- xml, json
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
Item
A record item is an individual unit within a record series, and the smallest entity. A record item may be in any format: (for example) a file, card, volume, plan or drawing, photograph or videotape. Some record items (such as files) may contain multiple individual documents but these are not normally listed as individual entities. In order to fully understand the significance of a record item it is vital to know what record series it forms part of. There is usually no way to determine the context or content, or format of a record item without learning about the record series.
/items
Returns a list of items.
- Formats:
- xml, json, mods (Library of Congress Metadata Object Description Schema), rdf_zotero
- Parameters:
- page: [integer e.g. 2] return a particular page of results
count: [integer ≤ 200 e.g. 50] increase the number of results per page (default is 25)
/items/[:id]
Returns item with identifier :id.
- Formats:
- xml, json, mods (Library of Congress Metadata Object Description Schema), rdf_zotero
User Contents
Comments
User is able to add a comment to an API by issuing the HTTP POST request to an entity page with the following POST parameters
- Parameters:
- comments: [String e.g. Comment from a user] the desired comment string
auth_token: [String e.g. texRPgrxKPrXhvrevoev] the token key string
Tags
User is able to add a tag to an API by issuing the HTTP POST request to an entity page with the following POST parameters
- Parameters:
- tag: [String e.g. boat, women, tags] the desired tag string, use comma separators to add multiple tags at the same time
auth_token: [String e.g. texRPgrxKPrXhvrevoev] the token key string
To generate an API token key, please sign in and then genearate it at your personal page.
Licensing
Data in this API is released under the Creative Commons Attribution-NonCommercial 3.0 Australia License.

This license allows users to share and remix the data so long as it is attributed to State Records NSW and is used for non-commercial purposes.