What are APIs?
API stands for ‘application programing interface’ and within the web development context it usually refers to a set of specifications for how web commands will ‘communicate’ with each other. APIs are a structured way to represent data that an application has stored in its database. For example, a website page might request information from a customer resource (e.g. a road rule or a dataset) and return the results. Another example, this time from the API , is using the ABN Lookup to include ABN information and search in a website or other application.
The API design standard
The National API Design are part of , which is a joint initiative between the Digital Transformation and the Australian Taxation . API standards help connect websites, databases and other software — which is essential for service unification. They also streamline API development, because developers can reference best practice API design and implement APIs in line with the standards. Importantly, the National API Design also represent a whole-of-government approach, which delivers many benefits such as consolidation across government and reduced costs.
The standards focus on HTTP REST (Representational State Transfer). REST was chosen as the most widely used design standard around the world for data transfer to and from the internet.
The National API Design Standards are broken into 17 sections:
— a quick introduction to the standards, the goals, and contact details for state API teams
Getting — overview information on when and how to apply the standards, including templates
WoG API — requirements across documentation, stability and design maturity
Naming — conventions covering message formats, URI components, field names, link relation names, request headers and managing dates
API — major and minor versioning, minor and patch documentation and end-of-life policy
API — request headers, HTTP request methods, request payload formats and idempotency
Query — pagination, filtering and sorting
API — response headers, HTTP response codes and response payload
Error — error response payload, input validation and error samples
API — including API design, transport security, authentication and authorisation, error handling, audit logs and gateway security features
— including hypermedia linked data, hypermedia compliant API, and link relation type
There’s also a template that developers can to get started and the standards are also on .
Implementation rules for the API standards
The National API Design Standards can be applied across three categories:
System-level APIs — it’s recommended that these APIs follow the standards
Process-level APIs — these APIs should follow the standards
Experience-level APIs — these APIs must follow the standards
Creating the API design standards
In the 6 December 2019 meeting of the Australian Data and Digital , ministers agreed to move forward with national standards to enable a common method of API development and interoperability between different IT systems.
According to an IT News article on the , they built on Victoria’s work on API standards. Victoria launched its whole-of-government API in April last year (see our blog on Victorian Government APIs).
Salsa Digital’s take
APIs are a key tool for digital transformation in government. They have the power to help consolidate government services, and standardisation will make this consolidation easier and provide a shared framework to build on. APIs also form part of Australia’s commitment around sharing, using and reusing government data, and are important to the open data and open government movements.