{"ok":true,"site":{"host":"publicdata.au","url":"https://publicdata.au/backlog/","type":"live","desc":"Search all 126,914 datasets on Australia's government open-data portals and vote for the ones you want as CSV, Excel, JSON and Parquet. The most voted are built first.","tools":[{"name":"count_rows","kind":"answer","impl":"imperative","description":"Count, sum, average, minimum or maximum rows of a served dataset across the whole table, grouped by up to three fields. For the rows themselves use query_rows.\nField names and values for group_by and where come from list_fields.\nsum and avg need a numeric or true-or-false field. min and max take any field.\nversion can be any date in the version history from get_dataset.\nA version too large for one file is stored as period parts and answered from them. A filter on the period field reads only the parts it can match, and parts names the periods read.\nGroups come back largest first, and truncated means raise limit or narrow where. An unknown field or version returns an error naming it.\nEach call costs two of the 60 queries each address may make in 10 seconds.","title":"Count and sum rows","annotations":{"title":"Count and sum rows","destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"group_by":{"description":"Fields to group by, for example [\"crash_severity\"]. One total when absent.","items":{"type":"string"},"maxItems":3,"type":"array"},"limit":{"default":100,"description":"Groups to return, 1 to 1000. 100 when absent.","maximum":1000,"minimum":1,"type":"integer"},"metric":{"default":"count","description":"count, or sum, avg, min or max of a field written as sum.field_name. count when absent.","type":"string"},"slug":{"description":"Dataset slug from search_datasets","type":"string"},"version":{"type":"string","description":"A version date, YYYY-MM-DD, from get_dataset. The newest version when absent."},"where":{"type":"object","description":"Filters by field name, applied to the whole table. A value may be a scalar for an exact, case-sensitive match, a list of scalars to match any of them, null to match blank or suppressed cells, {\"min\": n, \"max\": n} for an inclusive range, or {\"like\": \"*text*\"} for a pattern where * is the wildcard and case is ignored in ASCII letters. A blank cell never matches a scalar, a list or a range.","additionalProperties":true}},"required":["slug"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/backlog/","pages":["/backlog/","/publishers/","/government/","/agents/","/contribute/","/publishers/stable-urls/"]},{"name":"diff_versions","kind":"answer","impl":"imperative","description":"Compare two consecutive versions of a served dataset row by row on its key fields, to see what a publisher changed between releases. from and to must be adjacent dates in the version history from get_dataset, older first. Any other pair returns a 404 error, so step through a longer span one pair at a time. A dataset with no key, which list_fields shows as an empty key, gets row counts only, and a dataset with one version has nothing to compare. One answer holds the counts of rows added, removed, changed and unchanged, the keys of the rows added, removed and changed, and up to ten changed rows with their old and new values. The call costs nothing against the rate limit.","title":"Compare versions","annotations":{"title":"Compare versions","destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"from":{"description":"Older version date, YYYY-MM-DD","type":"string"},"slug":{"description":"Dataset slug from search_datasets","type":"string"},"to":{"description":"Newer version date, YYYY-MM-DD","type":"string"}},"required":["slug","from","to"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/backlog/","pages":["/backlog/","/publishers/","/government/","/agents/","/contribute/","/publishers/stable-urls/"]},{"name":"get_dataset","kind":"answer","impl":"imperative","description":"Read a served dataset's data package and full version history: licence, attribution, whole-table files and the version dates diff_versions and the version parameter take. It carries no rows. To answer from the rows use query_rows or count_rows, and for field names use list_fields.\nslug is lowercase letters, digits and hyphens, the part after /d/ in a dataset page URL, such as au-road-deaths.\nThe whole history comes back in one answer, with no paging. It needs no key or sign-in, and costs nothing against the rate limit. A slug that is not served returns a 404 error.","title":"Read a dataset","annotations":{"title":"Read a dataset","destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"slug":{"description":"Dataset slug from search_datasets","type":"string"}},"required":["slug"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/backlog/","pages":["/backlog/","/publishers/","/government/","/agents/","/contribute/","/publishers/stable-urls/"]},{"name":"list_backlog","kind":"answer","impl":"imperative","description":"List the datasets people have asked publicdata.au to build, most votes first. Use it to see what is wanted or under way, or to check that a vote counted.\nTo add a vote use upvote_dataset. To read a dataset that is already served use search_datasets.\nVotes on catalogue records that no entry has claimed yet come back apart, under the vote key search_catalogue uses.\nThe whole backlog comes back in one answer, with no paging, and the call costs nothing against the rate limit.","title":"List the build backlog","annotations":{"title":"List the build backlog","destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"inputSchema":{"type":"object","properties":{},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/backlog/","pages":["/backlog/","/publishers/","/government/","/agents/","/contribute/","/publishers/stable-urls/"]},{"name":"list_fields","kind":"answer","impl":"imperative","description":"List a served dataset's fields, with their types, descriptions, ranges and values, before querying it. Call it before query_rows or count_rows unless you already know the exact names and values, because where matches values exactly and an unknown field is an error. It also names the key fields diff_versions compares on and the partition fields list_partitions accepts.\nslug is lowercase letters, digits and hyphens, the part after /d/ in a dataset page URL, such as au-road-deaths.\nThe answer describes the newest version, in one page. The call costs nothing against the rate limit. A slug that is not served or not loaded for queries returns an error.","title":"List a dataset's fields","annotations":{"title":"List a dataset's fields","destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"slug":{"description":"Dataset slug from search_datasets","type":"string"}},"required":["slug"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/backlog/","pages":["/backlog/","/publishers/","/government/","/agents/","/contribute/","/publishers/stable-urls/"]},{"name":"list_partitions","kind":"answer","impl":"imperative","description":"List the download files that split a served dataset's newest version by one field, such as one file per year. Use it to hand someone a slice of the data as a file. It gives file links and no rows, so to answer a question use query_rows or count_rows instead, and for the whole table as one file use get_dataset. field must be one of the partition_by fields that list_fields names, and any other field returns a 404 error. Every value comes back in one answer, with no paging. The call costs nothing against the rate limit.","title":"List partition files","annotations":{"title":"List partition files","destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"field":{"description":"A partition field named in the data package, for example crash_year or loc_local_government_area","type":"string"},"slug":{"description":"Dataset slug from search_datasets","type":"string"}},"required":["slug","field"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/backlog/","pages":["/backlog/","/publishers/","/government/","/agents/","/contribute/","/publishers/stable-urls/"]},{"name":"query_rows","kind":"answer","impl":"imperative","description":"Read individual rows of a served dataset, filtered across the whole table. For totals and breakdowns use count_rows, and for files use get_dataset or list_partitions.\nField names and values for where, select and order come from list_fields.\nFilters hold at most 90 values per call, and a list value cannot contain a comma.\nversion can be any date in the version history from get_dataset.\nA version too large for one file is stored as period parts and answered from them, in period order. A filter on the period field reads only the parts it can match, and parts names the periods read.\nOne page holds up to limit rows, and offset steps through the rest until next_offset is null. An unknown field or version returns an error naming it.\nEach call costs two of the 60 queries each address may make in 10 seconds.","title":"Query rows","annotations":{"title":"Query rows","destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"limit":{"default":50,"description":"Rows to return, 1 to 500. 50 when absent.","maximum":500,"minimum":1,"type":"integer"},"offset":{"default":0,"description":"Rows to skip. next_offset in each answer gives the next page.","minimum":0,"type":"integer"},"order":{"type":"string","description":"field.asc or field.desc, comma-separated. When absent, rows come in the order of the file they are read from. For the newest versions that is the version's own data.parquet, which keeps the publisher's order unless the dataset sorted it. Any other version is read from the Parquet file the answer names in file, and when that file is sorted the answer names its sort in order, which ties follow too."},"select":{"description":"Fields to return. Every field when absent.","items":{"type":"string"},"type":"array"},"slug":{"description":"Dataset slug from search_datasets","type":"string"},"version":{"type":"string","description":"A version date, YYYY-MM-DD, from get_dataset. The newest version when absent."},"where":{"type":"object","description":"Filters by field name, applied to the whole table. A value may be a scalar for an exact, case-sensitive match, a list of scalars to match any of them, null to match blank or suppressed cells, {\"min\": n, \"max\": n} for an inclusive range, or {\"like\": \"*text*\"} for a pattern where * is the wildcard and case is ignored in ASCII letters. A blank cell never matches a scalar, a list or a range.","additionalProperties":true}},"required":["slug"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/backlog/","pages":["/backlog/","/publishers/","/government/","/agents/","/contribute/","/publishers/stable-urls/"]},{"name":"search_catalogue","kind":"answer","impl":"imperative","description":"Search every dataset listed on Australia's government portals, including the many publicdata.au does not serve yet. Its records describe data held elsewhere, which cannot be queried here.\nUse it when search_datasets finds nothing, to find where a dataset is published, or to pick one for upvote_dataset.\nquery matches every word against the title, summary and publisher, as search_datasets does.\nA page holds 20 records, those that can take a vote first. Pass next_offset as offset for the next page, up to 5000.\nEach call costs three of the 60 queries each address may make in 10 seconds.","title":"Search government portals","annotations":{"title":"Search government portals","destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"jurisdiction":{"description":"One government. All when absent.","enum":["cth","nsw","vic","qld","wa","sa","tas","act","nt"],"type":"string"},"offset":{"default":0,"description":"Rows to skip. next_offset in each answer gives the next page.","maximum":5000,"minimum":0,"type":"integer"},"query":{"description":"Words from a title, description or publisher","type":"string"},"votable_only":{"default":false,"description":"Leave out records that cannot take a vote","type":"boolean"}},"required":["query"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/backlog/","pages":["/backlog/","/publishers/","/government/","/agents/","/contribute/","/publishers/stable-urls/"]},{"name":"search_datasets","kind":"answer","impl":"imperative","description":"Find the slug of a served dataset. Start here for any question about Australian government data, since the other tools read only the datasets this finds.\nEvery word in query must match the title, summary, publisher, keywords or a field name. A word matches its plural and other endings but never as a prefix, so bus does not find business.\nUp to 50 matches come back in one answer, with no paging. If nothing matches, try fewer or broader words, then search_catalogue.\nEach call costs one of the 60 queries each address may make in 10 seconds.","title":"Search datasets","annotations":{"title":"Search datasets","destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"query":{"description":"Words from a title, publisher or field name","type":"string"}},"required":["query"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/backlog/","pages":["/backlog/","/publishers/","/government/","/agents/","/contribute/","/publishers/stable-urls/"]},{"name":"upvote_dataset","kind":"act","impl":"imperative","description":"Add one anonymous vote for a government dataset that publicdata.au does not serve yet, so it is built sooner. To read a served dataset use search_datasets, and to see the votes so far use list_backlog.\nslug is a vote key from search_catalogue, such as act-3u5a-ve4j, or a list_backlog slug.\nA dataset that is served, being built or closed returns an error saying it is not open for votes.\nNo identity is recorded, so a vote cannot be withdrawn, and a second vote from the same caller on the same day adds nothing. The answer gives the dataset's vote total after this call. The call costs nothing against the rate limit.","title":"Vote for a dataset","annotations":{"title":"Vote for a dataset","destructiveHint":false,"idempotentHint":true,"openWorldHint":false,"readOnlyHint":false},"inputSchema":{"type":"object","properties":{"slug":{"description":"The vote key of a search_catalogue row, or a slug from /backlog.json","type":"string"}},"required":["slug"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/backlog/","pages":["/backlog/","/publishers/","/government/","/agents/","/contribute/","/publishers/stable-urls/"]},{"name":"find_dataset_page","kind":"act","impl":"declarative","description":"Search every dataset on Australia's government open-data portals by title, publisher or topic and open the results page. Datasets served here are marked.","inputSchema":{"type":"object","properties":{"q":{"type":"string","description":"Search every government dataset"}}},"__source":"spec","__declarative":true,"page":"/backlog/","pages":["/backlog/","/publishers/","/government/","/agents/","/contribute/","/publishers/stable-urls/"]},{"name":"request_dataset","kind":"act","impl":"declarative","description":"Vote for a government dataset by its portal URL. A URL the catalogue holds becomes a vote for that dataset; the answer says so or explains why it cannot take one. No identity is recorded.","inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"https://data.gov.au/data/dataset/…"}},"required":["url"]},"__source":"spec","__declarative":true,"page":"/backlog/","pages":["/backlog/"]}],"favicon":"/favicons/publicdata.au.png","apiSurface":"spec","category":"Developer Tools","toolCount":12}}