Australian Government - API Design Standard
Design Standards for Whole of Australian Government (WoG) Application Programming Interfaces (API)s.
As government services modernise and increasingly rely more on digital platforms and approaches, new challenges are surfacing in the connectivity, service interoperability and data security aspects of solutions.
These challenges are further magnified when agencies are designing services that are intended to be consumed by other government entities across the Whole of Australian Government (WoG); introducing challenges with data consistency, identity management and alignment to government policy.
Agencies looking to effectively address these challenges require a strategic approach that considers both the current known consumers and their requirements, as well as the unknown consmers in the future will need.
Typically to address this, government departments are expected to create a holistic integration strategy as a critical component of their technology arsenal which streamlines re-use of services, simplifies existing environments and de-risks implementations. A key part of this integration strategy is the standardised design of interfaces between the different systems.
A standardised interface design promotes interoperability between systems, but also allows developers building connections between the systems to be more productive not having to learn a new standard with each new system.
Online resources currently exist that teams, agencies and departments can utilise when looking to building and launch APIs and integrations. There is however a gap in official, ratified standards in the API and integration space and even more so within the Product Management community around APIs in government.
To address this need, in 2019 the Australian Data and Digital Council (ADDC) approved the creation of National API Design Standards following Victoria and other jurisdictions individually progressing API Design Standards for their own jurisdictions’ API developers. The opportunity for a national approach was recognised as mutually beneficial to all participating States, Territories and the Commonwealth.
The broad goals of this National API Design Standard are to:
- Create a technical API design standard to be used across the WoG for cross-jurisdictional data sharing
- Improve overall quality of the APIs being shared, as well as the literacy around APIs and integrations
- Build a cross-jurisdictional working group of API experts who can continue to foster and champion the standard across the Whole of Australian Government.
The mission is to ensure the highest standards are obtained by defining a base level of delivery required to meet the design standard, and only describing expansion when further comment is required.
The audience for this document is API Developers, Solution Architects and Business Analysts that are looking to design a new API or make changes to an existing service in order to improve aspects of usability, readability or security.
This document has been written with a view of being used internally within the Australian Government however it is being released for broader adoption by individuals or organisations that are wanting to build APIs that are interoperable with the WoG standard.
Document Semantics, Formatting, and Naming
OPTIONAL in this document are to be interpreted as described in RFC 2119.
RESTful MUST be written as presented here, representing the acronym as all upper-case letters. This is also true of
XML and other acronyms.
Machine-readable text, such as URLs, HTTP verbs, and source code, are represented using a fixed-width font.
- State of Victoria - email@example.com
- State of New South Wales - firstname.lastname@example.org
- State of Queensland - email@example.com
- State of Tasmania - firstname.lastname@example.org
- State of Western Australia - WAPlatforms@dpc.wa.gov.au
- State of South Australia - email@example.com
- Australian Capital Territory - firstname.lastname@example.org
- Northern Territory - email@example.com
- Commonwealth of Australia - firstname.lastname@example.org