UAE Government API Guidelines-First Version
UAE Government API Guidelines-First Version
contents
1 Introduction ........................................................................................ 5
1.1 Ownership of this document 5
1.2 API Definition and Overview 5
1.3 Purpose 6
1.4 Scope 6
1.5 Key Advantages 6
1.6 Key Terminologies 7
1.7 Definitions, Acronyms and Abbreviations 7
1.8 Audience 7
1.9 UAE API Guidelines’ Stakeholders 8
6 References ...................................................................................... 43
UAE Government API First Guidlines
1.
Introduction
1.1. Ownership
of this document
4
1.Introduction
5
UAE Government API First Guidlines
Application Programming Interfaces (APIs), previously called web services, are standards-based
interfaces that allow applications to expose their functionality to external systems. APIs define how
one application interacts with one another in a structured way to facilitate application integration and
information exchange. Software developers create APIs to share functionality or data from an application
they've developed with anyone who might want to leverage that application’s functionality. APIs are now a
common standard across applications and lead to a service-oriented approach which is an architectural
best practice.
APIs help UAE government entities increase their efficiency APIs expedite the realization
and effectiveness by providing higher public value in less of an interconnected and
time, cost, and effort while ensuring real-time processing, interdependent ecosystem
increased data connectivity, and flexibility. Using APIs, that promotes (intra and
government entities can expand old systems or applications cross-sector) partnerships,
and create new ones with minimal overhead and investment, stimulates co-operation
which, in turn, enables innovation and enhances the overall
and increases information/
public value.
resource sharing between
organizations. APIs allow
you to build reusable
components and develop
a platform so that entities
The growth in API usage is driven by the need to deliver more
customer-oriented functionality and a faster time-to-market. don't have to reinvent
An API-oriented architectural approach facilitates industry- the wheel every time.
wide innovation and increases business agility. APIs are, in essence, the
building blocks of a digital
ecosystem. Understanding
APIs enable software applications to communicate and interact with the value of APIs will
each other and exchange data directly without the need for human help the UAE government
intervention. For any given software or application, an API specifies entities shift to a digital first
the following: approach.
• A mechanism for connecting to the software or application.
• The data and functionality that is made available for this software.
• Specification and standards that need to be followed by other
applications to interact with the application's data and functionality.
6
1.Introduction
1.3. Purpose
The purpose of this document is to provide API guidelines for UAE government entities.
The UAE government aims to adopt an API-first approach for the digital transformation initiatives.
Government entities and vendors can follow the API guidelines outlined in this document for guidance
on API implementation to accelerate the development of government APIs based on best-practices.
This document acts as a comprehensive guide in designing and developing the APIs in government
organizations. This approach will accelerate innovation, ensure responsive and customer-focused
initiatives and capitalize on the power of the community at large for public value creation. This
document is a working document that will be amended over time. The guidelines in this document
contain no explicit technology or protocol restrictions; rather, the document offers best practices-
based guidelines that ensure that UAE digital government APIs are effective, designed correctly,
secure and provide value.
7
UAE Government API First Guidlines
1.4. Scope
This document aims to be a useful
tool in planning and implementing
digital transformation in UAE
government entities and
organizations. It contains a set of
high-level guidelines with design
and implementation guidance,
along with low-level API best
practices to guide government
entities in their development of
APIs.
This document will help ensure
that government services are:
8
1.Introduction
9
UAE Government API First Guidlines
1.6.Key Terminologies The following are the terminologies used in the standard with its description.
Terminology Definitions
API Consumer Any organization or person who uses the provider’s API to access or send data
10
1.Introduction
1.7. Definitions,
Acronyms and Abbreviations
Acronyms Definitions
11
UAE Government API First Guidlines
1.8. Audience
The target audience of this
document is API providers and
consumers who are developing or
planning to develop applications • Executives, Directors and Managers looking to deliver
which use government service interoperable digital services.
APIs such as: • Software Developer or Systems Architect looking for
technical guidance.
• Product Manager on any government service for design
and implementation guidance.
• Business Analyst considering how to best digitize and
design services.
• Policy Advisor on a digital service looking to better
understand how APIs can help fulfill policy goals.
• Content Designer, User Experience Designer, or a
practitioner of any other relevant discipline who wants to
familiarize themselves with the principles outlined here so
they can add their perspective.
12
1.Introduction
UAE Semi-Government
• NGO
• Private Sector
13
UAE Government API First Guidlines
2.
API Fundamentals
14
2.API Fundamentals
Acronyms Definitions
Internal API An API that is used solely within one entity by known internal
applications.
External API An API that is provided by one entity and consumed by an external
party.
Public or Open API An API that is provided to the public and is able to be used by any
party who wants to use it. Public APIs still can have access control
requirements or be for open access by any party.
15
UAE Government API First Guidlines
16
2.API Fundamentals
Recently, with the rise of the digital government and the digital transformation initiatives, many products
and services within the government have created APIs for consumption both internally and externally,
especially to launch mobile applications.
These APIs have been created based on customized data models and customized technology/platform
requirements; in fact, there is significant duplication in terms of APIs built for similar functionality. The
development of these ‘closed’ internal and redundant API ecosystems, while deemed necessary, have led
to increased development and maintenance cost.
Although some entities have been producing APIs for some time, others are taking their first steps in
offering APIs for public use. API standardization can provide significant benefits to support this API
development across UAE government entities, in order to:
• Capture API best practice for • Reduce disruption to • Reduce effort for entities
reference by the API development application developers as by simplifying the process of
community, indicating where government APIs evolve. developing and delivering on
standard adherence is required, their API strategies.
and which areas allow for more
flexibility.
17
UAE Government API First Guidlines
To ensure standardized APIs, the following stand ards must be present and aligned:
API Design Guidelines – address a broad range of design Introducing data standards
considerations leading to a uniform API design language for APIs help UAE
across the UAE government and enable developers to create government entities:
APIs which are easy to consume and well documented. a. Improve data quality and
interoperability.
These are covered in detail in the coming sections of this b. Enable reuse of data
document. elements and metadata,
thereby improving
Data Standards – define the semantics, schemas, and syntax reliability and reducing
of the data (messages) being delivered through APIs. Data cost.
standards provide a common language of communication c. Ensure consistency in
across the government. code sets and standard
Standards help define a frame of reference that two parties lookups.
can use for data exchange and dictate the format and structure d. Improve efficiency of
of data exchange. Standards define entity names, definitions, mapping by providing
data element names, formatting rules, implementation common sets of core data
guidelines, procedures, etc. elements.
18
2.API Fundamentals
19
UAE Government API First Guidlines
2.5. API
⁞ 2.5.1⁝ Consumer-centric Design
Design Principles
Some examples of this could be: • Ensure a low barrier to entry so it is easy to start using the API.
• Provide sandbox APIs so application developers can try out APIs
and develop in parallel.
• Be responsive to feedback and bug reports.
• Provide automated on-boarding processes, as manual processes
can limit take-up.
• Provide prototyping tools and support for development.
• Create an SDK to support an entity’s APIs, including examples.
20
2.API Fundamentals
Additionally, it is strongly
encouraged that application
Good API design includes the following principles: developers start to produce API
consuming applications based
1. Usability – ensure high quality user experience for on the interface specification
consumers. as early as possible. This agile
2. Interoperability – enable exchange of data across or iterative approach helps
organizations without any dependencies on underlying ensure real-world feedback
technologies. is incorporated into the API
3. Reuse – leverage existing standards and taxonomies to design as early as possible.
avoid duplication of efforts. Completeness is not necessarily
4. Independence – avoid dependency on any vendors or the goal, especially in initial
technologies to provide options in APIs. The goal should be to
delivery models and implementation technologies. get early partially complete
5. Extensibility – establish flexibility to extend APIs to new releases out, defining the
stakeholders and business channels. limited capability they offer, to
6. Stability – ensure consistency and transparency of changes enable consuming application
through communications and governance. uptake. Development needs to
7. Transparency – provide clarity on environments and be flexible and agile to adapt
standards supported. to early adopters’ feedback in
8. Loosely coupled – provide flexibility and minimize impact of identification of pitfalls and
changes to operations of other APIs. issues. However early releases
9. Granularity – provide the appropriate level of functionality should be tested and stable so
and not be too monolithic or too specific. as not to impede uptake. The
aim is to try, then adapt, rather
than waiting to release a fully
functional API.
21
UAE Government API First Guidlines
22
2.API Fundamentals
23
UAE Government API First Guidlines
APIs need to be managed as products similar to software products that commercial entities release. API
management needs to be consistent across all the APIs the provider is publishing.
Full lifecycle management of APIs includes development, deployment, releases, and access management.
API management also manages the availability of the API. This can involve leveraging features like
throttling to make sure all consumers can get access to the API within the bounds of the SLA. It can also
include quota management, whereby consuming applications are given limited access (e.g. a set number
of calls per hour) to protect the API from abuse or overuse. It should be possible to use analytics to assess
whether throttling or quotas are needed.
Service operations for APIs covers the actual delivery of the services to the service levels advertised.
It handles management of, and access to, the API and any underlying applications, and looks after the
infrastructure which underpins it. It also includes consumer support and incident management.
24
3. API Management and Operations
Release management is an important aspect of API transition. The aim with API development is to
make small changes and release often.
The release management aspects include:
25
UAE Government API First Guidlines
Lifecycle/Change
3.3.
Management
An API has its own lifecycle, and it needs to be managed through the whole of its lifecycle, from
creation to deprecation. This involves:
⸅ Monitoring usage to make sure an API, or API version, is only retired when the majority
of consuming applications have migrated off it
⸅ Trimming APIs – removing features and functionality which are unused, have never
been used or are not likely to
⸅ Ensuring the API roadmap is up to date and gives a good indication of when major
changes are scheduled to be made to each AP
}
who want to build applications which make use of the API and applications which will ultimately
be integrated with the API. It also covers managing access to the API, including specific, fine
grained control for consuming applications. This allows operations to deploy access policies to
ensure a consuming application’s access to the API is in line with agreed constraints.
26
3. API Management and Operations
27
UAE Government API First Guidlines
Please note that the staging (or pre-production) environment is considered a production environment.
The staging environment should adhere to the same SLA levels as the production environment and
should mirror the specifications of production. The staging environment is essential for final verification
of functionality before moving to production for all Service Consumers.
The test environment should also be stable so that Service Consumer developers can use them to
develop their applications.
APIs need to be developed in • Agile Software Development - Using Agile practices ideally
a collaborative, flexible and suit this form of iterative development as they focus on developing
adaptive way. Once the API small, incremental releases, 'failing fast' (finding out what's wrong
interface specification is agreed, early rather than too late) and frequent delivery of products.
iterative releases with limited • Configuration Management - All the components which make
functionality can be deployed up an instance of the API should be held within version control, so
quickly by the Service Provider that it is possible to rebuild a previous version if necessary. This
instead of waiting for the entire involves:
functionality of the API to be • Version controlling API interface specifications
completed. This approach • Version controlling the associated API code
allows Service Consumers to • Keeping track of dependencies (e.g. external libraries being
start using the API immediately used within the API code)
without having to wait for the final • Making sure access policies for individual consumers are
product. Initial versions of APIs version controlled
can have functionality stubbed out • Being able to reliably recover all the elements of previous
(resources which can be called iterations of APIs and rebuild/redeploy if required
but return sample responses) • DevOps - Following a DevOps approach enables Service
or only offer partial functionality Providers to automate and streamline all development and
as long as the documentation deployment activities. DevOps allows automated build, testing
indicates this. Support for this and deployment of APIs and the associated software whenever an
form of iterative development can update of the code is placed into configuration management.
be enabled though: • Automated testing - To make the incremental release pattern
efficient, it is advisable to develop automated tests in conjunction
with the API code so that testing becomes an intrinsic part of the
build process.
28
3. API Management and Operations
29
UAE Government API First Guidlines
30
3. API Management and Operations
Incident/Event
3.11.
Management
Incident and event management is geared around events picked up through monitoring, and
unplanned incidents, and involves substantial amounts of communication. This includes:
3.12. Analytics
Capturing and analyzing data about an API in operation will pull out information useful to adapting
to changes in demand. It is therefore useful to gather analytical data around:
• Take-up metrics, end user analytics such as location
• Tracking API consumers, their registrations and API usage
• API performance – identifying most commonly used APIs calls so they can be made efficient
• Event behavior (e.g. common patterns of behavior)
• Trace and diagnostics data
From an API take-up/consumption perspective it is useful to capture who, where, when, how, how
often, and what device type is being used. Analysis of this data can then be used to demonstrate
ROI.
Performance metrics are also useful, such as error rate, throughput, response time, transaction
speed, backend performance, cache performance. These values can help identify trends and
bottlenecks.
31
UAE Government API First Guidlines
Backup
3.13.
Procedures
The data should be backed up at the application level and operating system level at regular intervals. The archived
data will be retained for a specified period of time so that it can be recovered in case of any unforeseen issues. Data
backups are taken without bringing the applications down, hence without impacting the running applications. The
backup jobs are run at off peak hours so that the backup process will not impact the performance of the running
applications.
The host-based backup at the operating system level is the full backup of the server and should be done weekly
on the development and test servers. The file system-based backup should be done daily on the development
servers and weekly on the test servers.
The backup strategies for application and database components in Production environment is explained below:
Service Security
Classification Type of information
Categorization
32
3. API Management and Operations
Note:
1. Services by default will be “Public” classified, which implies that the published services are
viewable to all and API key is required for service consumption. In cases where the services are
classified as “Confidential” or “Official Use”, Service Providers shall decide the service Consumers
who are eligible to view their services.
Run time rules and actions need to be implemented to assure the confidentiality using web service level
security. The actions to be applied depend on the sensitivity of the data transferred and transactions
performed in the services. The following table shows the runtime actions based on the above
categorization.
33
UAE Government API First Guidlines
4. Service Level
Agreement
Guidelines
Without robust service level management, it will be hard to engender trust in government APIs, which
will negatively impact uptake. Application developers will need to know how long the API will exist, what
commitment there is to its availability and performance, and what support is offered to those who consume
the API. Without this, API usage will be based on an untrusted model, where application developers
prepare for the API being unavailable. This results in consuming applications using APIs to top up local
caches of data, or to support existing batch processes, missing out on the real time benefits of APIs.
There are several parameters that need to be agreed between the stakeholders for the easy usage of the
published APIs.
〈/〉 We gave here some examples on potential SLA’s that need to be considered to ensure
successful API governance
The SLA’s can be classified as follows:
1} Onboarding SLA’s
2} Service Provider Availability SLA’s
3} Service Performance SLA’s
4} Information Exchange SLA’s
5} Change Management SLA’s
6} Incident Management SLA’s
〈/〉
34
4. Service Level Agreement Guidelines
The onboarding process is clearly defined for both publishing a service and consuming a
service. Some of the steps involved in the process should require action from one or more of
the stakeholders involved as well as provide approvals on certain states of a service.
The below is a sample of the Service Life Cycle State Approval SLA
Table 4 Service Life Cycle States
35
UAE Government API First Guidlines
All Services, Platforms, and Infrastructure should adhere to the SLA’s that must be defined by the
organization. This excludes the regular maintenance windows.
In case of planned maintenance window or any unplanned outage, the Service Provider will be
responsible to notify the service consumers.
The Service Provider needs to ensure that the service is highly available and this availability may vary
depending on the service and the Service Provider entity that is described in the Service Performance
SLA’s section.
Clear guidelines and agreed SLA levels should be set for each environment, including test environments.
These SLA’s shall be defined in the service requirements document and can be agreed upon
and signed off with the stakeholders depending on the nature of the engagement.
API Availability
%99.9 Service Provider
36
•
4. Service Level Agreement Guidelines
If adherence to the aforementioned API performance guidelines cannot be achieved due to application or
software constraints, the Service Provider can consider the following options:
• API Service Caching – If an API returns a set of data that does not change much or has a limited set
of possible returned datasets, then the Service Provider application can cache the API data and return it
from the cache instead of burdening the application on each call. Each API application will have data or
response caching mechanisms that can be used. Any caching must carefully consider caching TTL (“time-
to-live”) values in order to ensure that stale data is not shared with consumers.
• API Publish-Subscribe Model – If an API executes a batch or business process that takes minutes
or even hours, then the publish-subscribe model can be used. The same API will be redesigned to have
2 APIs. The first API will be offered by the Service Provider and, when called, will initiate the request in
the back-end application. A second API will be hosted on the Service Provider or Service Consumer. If the
second API is hosted by the Service Provider, the Service Consumer will invoke the second API after a
certain time after the first API invocation when the API results will be ready. If the second API is hosted by
the Service Consumer, then the Service Provider will simply invoke the second API once the processing of
the first request is complete. The following diagram illustrates how the Publish-Subscribe model works.
Ministry Y Ministry Z
Native Service Y Native Service Z
TOPIC
Virtual Service A
Native Service X
Ministry X
37
UAE Government API First Guidlines
38
4. Service Level Agreement Guidelines
Service Providers The Service Provider may have a need to make one or more of the
following changes to the service hosted in their environment:
39
UAE Government API First Guidlines
Priority Definition
Priority Level 3 — Medium The incident affects a business process so that certain functions are
unavailable to Service Consumers, or the platform is degraded.
Moderate Business Impact There may be a way around this problem.
40
4. Service Level Agreement Guidelines
41
UAE Government API First Guidlines
5. Technical Guidelines
Recommended
5.1.
Protocols
The following protocols are recommended whenever implementing an API
1} REST
2} GraphQL
42
5. Technical Guidelines
1} Client–server – By separating the user interface concerns from the data storage concerns, we
improve the portability of the user interface across multiple platforms and improve scalability by
simplifying the server components.
2} Stateless – Each request from client to server must contain all of the information necessary to
understand the request, and cannot take advantage of any stored context on the server. Session state
is therefore kept entirely on the client.
3} Cacheable – Cache constraints require that the data within a response to a request be implicitly
or explicitly labeled as cacheable or non-cacheable. If a response is cacheable, then a client cache is
given the right to reuse that response data for later, equivalent requests.
4} Uniform interface – By applying the software engineering principle of generality to the component
interface, the overall system architecture is simplified and the visibility of interactions is improved. In
order to obtain a uniform interface, multiple architectural constraints are needed to guide the behavior
of components. REST is defined by four interface constraints: identification of resources; manipulation
of resources through representations; self-descriptive messages; and, hypermedia as the engine of
application state.
5} Layered system – The layered system style allows an architecture to be composed of hierarchical
layers by constraining component behavior such that each component cannot “see” beyond the
immediate layer with which they are interacting.
6} Code on demand (optional) – REST allows client functionality to be extended by downloading and
executing code in the form of applets or scripts. This simplifies clients by reducing the number of
features required to be pre-implemented.
The data should preferably be exchanged in JSON (JavaScript Object Notation) format which is a
lightweight human readable data-interchange format. JSON is a text format that is completely
language independent but uses conventions that are familiar to programmers. JSON stores data in an
array/ordered list of name-value pairs.
43
UAE Government API First Guidlines
Create Query
Operations Read Mutation
Update Subscription
Delete
Data Fetching Fixed data with Multiple API Specific data with single API call
Calls
Development Speed
Slower Rapid
Self Documenting
No Yes
Web Caching
Yes via libraries built on top
File Uploading
Yes No
44
5. Technical Guidelines
45
UAE Government API First Guidlines
Attributes/Feature Guidelines/Recommendations
46
5. Technical Guidelines
Attributes/Feature Guidelines/Recommendations
47
UAE Government API First Guidlines
Attributes/Feature Guidelines/Recommendations
48
5. Technical Guidelines
Attributes/Feature Guidelines/Recommendations
49
UAE Government API First Guidlines
Attributes/Feature Guidelines/Recommendations
All API naming in URLs (including the name of your API, namespaces
and resources) should:
• use nouns rather than verbs
• be short, simple and clearly understandable
Hosting your API • be human-guessable, avoiding technical or specialist terms
where possible
• use hyphens rather than underscores as word separators for
multiword names
For example: [api-name].apis.government.ae
50
5. Technical Guidelines
Attributes/Feature Guidelines/Recommendations
51
UAE Government API First Guidlines
Attributes/Feature Guidelines/Recommendations
Addressing Scheme URI Addressing Scheme in lines with RFC 3986 should be followed
52
5. Technical Guidelines
Attributes/Feature Guidelines/Recommendations
53
UAE Government API First Guidlines
Attributes/Feature Guidelines/Recommendations
Service Providers should consider how the fields will meet user
needs. They can also regularly test the documentation.
For example, to collect personal information as part of the dataset,
before deciding on the response, it is recommended to consider
whether:
Data Fields design • the design can cope with names from cultures which don’t have
first and last names
• the abbreviation DOB makes sense or whether it’s better to spell
out the field to date of birth
• DOB makes sense when combined with DOD (date of death) or
DOJ (date of joining)
Make data available in CSV formats as well as JSON when you want
Publishing bulk data to publish bulk data. This makes sure users can use a wide range
of tools, including off-the-shelf software, to import and analyze this
data
54
5. Technical Guidelines
Attributes/Feature Guidelines/Recommendations
Rate Limiting/Throttling Service Provider should implement API to have control on Rate
Limiting/Throttling the APIs
Metering and Billing Service Provider should implement Open APIs that should support
Metering and Billing
Privacy by Design Privacy by Design approach should be followed when developing APIs
55
UAE Government API First Guidlines
56
5. Technical Guidelines
The exceptions can occur within the service hosted by the Service
Provider. These exceptions/errors should be handled as detailed out
in the section below and appropriate error codes and descriptions
should be sent to the invoking service. Service Providers should
handle these errors appropriately.
57
UAE Government API First Guidlines
58
5. Technical Guidelines
Response – REST
Exception Type Exception Corrective action
services
Service Consumer
Request not meeting Response with
should resend
Business Validation business criteria such appropriate response
the request after
Failure as age, financial status, code and description in
populating the
etc. the body
mandatory fields
Response with
Service Consumer
Technical Validation appropriate response
Invalid request should resend a valid
Failure code and description in
request
the body
Service Consumer
Appropriate HTTP should update the
Incorrect/Invalid
Technical Validation status codes along with authentication
authentication
Failure response code and credentials and Service
credentials
description in the body Consumer should retry
sending the message
Appropriate HTTP
Technical Validation Request schema status codes along with
Failure validation failure response code and
description in the body
59
UAE Government API First Guidlines
5.4. Logging
⁞ 5.4.1⁝ Log Levels
The log levels within the Service Provider is a common logging framework is used to set the type of
messages that shall be logged in the service specific log file. The various log levels are given below.
Designates very severe error events that will presumably lead the
FATAL
application to abort
OFF The highest possible rank and is intended to turn off logging
60
5. Technical Guidelines
An example for a debug message written using the common logging framework would be as follows:
15:05:40:162 29-08-2016 GST - DEBUG – Message sent using logDebug service
61
UAE Government API First Guidlines
Documentation
Description
Requirements
API Introduction A short introduction describing the API
62
5. Technical Guidelines
Documentation
Description
Requirements
One of the most useful things in an API reference is example code. For
each endpoint, you should provide an example request, with example
parameters (if they are available for that endpoint).
The request is usually published as a code snippet using curl,
but it can be useful to show the request in different programming
languages if available.
Example requests and Service Provider should also publish an example response as a code
responses snippet, in the same programming language as the example request.
It should show the exact response a user can expect from the example
request.
Be aware that your examples will not tell service consumers what the
fields mean, for example if the fields are optional or mandatory, or
if they carry any constraints. If this information is not clear from the
example, consider including explanations alongside your example.
The Service Provider should include specific error responses
associated with an endpoint close to the endpoint documentation
Error codes or publish them together at the end of your API reference. Even if
you only expect standard responses such as 400 or 200, you should
interpret their specific meaning to your API.
If the Service Consumer needs to authenticate before they use an
API, Service Providers should include a section explaining the API
Authentication
authentication. For example, the API documentation includes a
separate section on how to get and send an API key.
If access to parts of your API requires authorization, have a section in
your documentation explaining how a user can gain access. You can
Authorization
then link to this section from the endpoints or resources that require
authorization.
If Service Provider API uses rate (or record) limiting, Service Provider
should explain how many requests users can make within a set
period. Even if it’s unlikely a user will meet the maximum number of
Rate limits
requests, you must still explain what will happen if users exceed that
limit, including the type of error message they can expect and how to
correct that error.
Service Provider should tell users how versioning works for API and
version the documentation alongside the API.
Each version of your documentation should include a clear introduction
Versioning information
explaining what makes it different from the version before. You should
include all revision history for your API documentation and make it
easy for users to switch between documentation for different versions.
63
UAE Government API First Guidlines
Documentation
Description
Requirements
Information Handling, Incident
Management and Risk
Management
You’ll still need to tidy up the reference information after it’s been generated and make sure it fits with any
accompanying guidance. Ideally you will have a technical writer to help you do this.
You can use a number of criteria to choose between different auto generation tools. As well as the standard
considerations when choosing new technology, you should also consider if the tool:
OpenAPI (formerly known as Swagger) is commonly used in government for RESTful API reference
documentation. Alternative tools include:
• WADL
• RAML
• I/O Docs
• API Blueprint
• JSON Schema
64
5. Technical Guidelines
1} It will be the responsibility of the API Consumers and API Providers to utilize the credentials
or system details shared between each other only for the intended purpose by authorized users
and systems only.
2} It is recommended to get the customer consensus to use his/her information. This can be
added to the UI used to provide the service to the user. Moreover, the front desk employees
should be educated to inform the user if their information will be accessed on his behalf.
3} It is also recommended to have data confidentiality agreement between the entity and the
employees involved in processing the information shared through the API Consumer and API
Provider
4} The maintenance of the API and the consuming application will be the responsibility of
respective entities and the maintenance of published services will be the responsibility of API
Provider Team.
5} Point of Contacts should be made available by entities for coordination of any activities.
6} Entities will be responsible for providing resources during the development and testing of
services before go-live as well as post go-live.
7} API Provider owns and is responsible for the business process/logic and transformations at
service level.
8} Reports of the service usage will be made available to entities by API Provider.
65
UAE Government API First Guidlines
6. References
66
5. Technical Guidelines
We've adapted these guidelines capitalizing on the work done by other digital governments, including:
67