An API is the starting point for designing a new RAD component. An API consists of a collection of other subsidiary components: derived types and interfaces. An API is versioned so that a client can specify which version of an API to interact with.
The API acts as the name root for all components of the API, defining a namespace which identifies objects to client. APIs are versioned and a single RAD instance is capable of offering multiple major versions of APIs to different clients.