APIs Service: Overview

The APIs service provides a REST interface and a set of operations for managing APIs in the Akana API Platform. This API includes operations to support complete API lifecycle management, including creating and managing APIs and API versions, managing API OAuth details, managing legal agreements and the API Board, API monitoring and documentation, and relationships between APIs and apps.

If you want to generate a list of APIs for a specific user, that operation is part of the Users service: GET /api/users/{UserID}/apis.

Note: Many of these operations take some sort of ID in one or more path parameters. For more information about these IDs and how to find the applicable values, see IDs on the Platform.

URL: https://{hostname}/api/apis

This overview includes two sections:

APIs Service: Full List of Operations

Action Endpoint Description
add API Administrator POST /api/apis/{APIID}/administrators?UserID={UserID} is deprecated; use POST /api/groups/{GroupID}/members Adds a new Administrator for the specified API.
add API implementation POST /api/apis/versions/{APIVersionID}/implementations Adds an implementation for the specified API version.
create API POST /api/apis with specific headers Defines an API from scratch, based on an existing service, or based on an API description document.
create API version POST /api/apis/{APIID}/versions Adds a new API version on the platform; from scratch, based on an existing service, or based on an API description document.
create new legal agreement POST /api/apis/versions/{APIVersionID}/legals Adds information about a new legal agreement for the specified API version.
delete legal agreement document DELETE /api/apis/versions/{APIVersionID}/legals/{LegalDocumentID} Deletes the association between a specific legal agreement document and an API version.
delete API DELETE /api/apis/{APIID} Deletes the specified API, including all API versions.
delete API implementation DELETE /api/apis/versions/{APIVersionID}/implementations/{ImplName} Deletes the specified implementation for the specified API version.
delete API version DELETE /api/apis/versions/{APIVersionID} Deletes the specified API version.
execute workflow action POST /api/apis/versions/{ApiVersionID}/action Executes a workflow action associated with a specific API version.
export API GET /api/apis/{APIID}/package Exports information about an API to an export file that can be imported to another platform instance.
export API version GET /api/apis/versions/{APIVersionID}/package Exports information about an API version to an export file that can be imported to another platform instance.
export metrics GET /api/apis/versions/{APIVersionID}/metrics/export Exports a summary of metric information for the specified API version, in the form of a CSV file.
export usage logs GET /api/apis/versions/{APIVersionID}/txlogs/export Exports the transaction log for the specified API version to a CSV file.
find API implementations GET /api/apis/versions/implementations Returns information about API implementations, based on a provided APIID, APIVersionID, Service Key, or implementation code.
get API GET /api/apis/{APIID} Returns information about an API. With optional parameter, also returns the settings for the API.
get API Administrators GET /api/apis/{APIID}/admins is deprecated; use GET /api/groups/{GroupID}/members Returns a list of Administrators for the specified API.
get API auto-connect settings GET /api/apis/versions/{APIVersionID}/autosettings Returns the auto-connect settings for the specified API version.
get API document GET /api/apis/versions/{APIVersionID}/definition/{Specification} or GET /api/apis/versions/{APIVersionID}/definition/{Specification} Returns the generated API description document for the specified API version. With the optional IncludeDocId parameter, returns the generated API description document in the specified format, such as Swagger.
get API implementation GET /api/apis/versions/{APIVersionID}/implementations/{ImplCode} Returns information about the specified implementation for the specified API version.
get API implementation debug options GET /api/apis/versions/{ApiVersionID}/implementations/{ImplCode}/debug Returns information about the debug mode setting for the specified API implementation.
get API implementation deployment suggestions GET /api/apis/versions/{APIVersionID}/implementations/{ImplCode}/deploymentsuggestions Returns information about suggested deployment zones for an API version (virtual service) based on the API definition and deployment zone definitions.
get API implementation policies GET /api/apis/versions/{ApiVersionID}/implementations/{ImplCode}/policies Returns information about the policies assigned to the specified implementation for the specified API version, including policies assigned to individual operations in the implementation.

get API implementation target policies

Valid in version: 2020.2.0

GET /api/apis/versions/{ApiVersionID}/implementations/{ImplCode}/target-policies Returns information about the policies assigned to the specified implementation for the specified API version.
get API implementations GET /api/apis/services Returns a list of valid current services matching the query parameter provided, for selection when creating an API from an existing service.
get API licenses GET /api/apis/versions/{APIVersionID}/licenses Returns information about the licenses that apply to the specified API version.
get API scope visible to user GET /api/apis/versions/{APIVersionID}/scope Returns information about the current user's visibility of the API, based on an aggregate of all the visibility scopes assigned to all the groups that the user is a member of, for the specified API version.
get API settings GET /api/apis/{APIID}/settings Returns a list of settings for the specified API.
get API version GET /api/apis/versions/{APIVersionID} Returns information about the specified API version.
get API version connection environments GET /api/apis/versions/{APIVersionID}/contracts/environments Returns information about the implementations (previously called environments) for the specified API version.
get API version design GET /api/apis/versions/{APIVersionID}/design Returns information about the API design for the specified API version, in the form of a Swagger document.
get API version governing workflow GET /api/apis/versions/{APIVersionID}/governingworkflow Returns information about the workflow governing the specified API version.
get API versions GET /api/apis/{APIID}/versions Returns a list of versions associated with the specified API, as an RSS channel.
get API version settings GET /api/apis/versions/{APIVersionID}/settings Returns a list of settings for the specified API version.
get avatar GET /api/apis/{APIID}/avatars/{AvatarVersionID}.png Retrieves the specified avatar version associated with the specified resource. The avatar might be the current one or an earlier one.
get Board GET /api/apis/{APIID}/board Returns a list of Forum entries for the specified API.
get connected apps GET /api/apis/versions/{APIVersionID}/connectedapps Returns a list of apps that are connected to the specified API version.
get contract versions GET /api/apis/versions/{APIVersionID}/contracts Returns information about contracts for the specified API version.
get default avatar GET /api/apis/{APIID}/avatar Returns the default (current) avatar for the specified resource.
get followers GET /api/apis/{APIID}/followers Returns information about the users who are following the specified API.
get legals GET /api/apis/versions/{APIVersionID}/legals Retrieves a summary of information about active legal documents for the specified API version in RSS format.
get legals list GET /api/apis/versions/{APIVersionID}/legals (with custom headers) Retrieves a summary of information about active legal documents for the specified API version. The response is in JSON format.
get license report GET /api/apis/versions/{APIVersionID}/licensereport Returns the report definition relating to licenses for the specified API version, for the specified ReportType.
get metrics GET /api/apis/versions/{APIVersionID}/metrics Returns a set of metric information for the specified API version, in JSON or XML format, that can be used to create a chart.
get metrics for operation GET /api/apis/versions/{APIVersionID}/environments/{Environment}/operations/{OperationName}/metrics Returns a set of metric information for the specified operation in the specified environment that can be used to create a chart.
get operation resources GET /api/apis/versions/{APIVersionID}/resources Returns information about operation-specific scope mapping for an API version.
get private viewer scope GET /api/apis/versions/{APIVersionID}/viewers/{ViewerID}/scope Returns information about scope visibility for a specific API version, for a specific group that might visibility of the API.
get private viewers GET /api/apis/versions/{APIVersionID}/viewers Returns a list of viewers (groups) that can view the specified API.
get ranges GET /api/apis/versions/{APIVersionID}/metrics/ranges Returns a range of metric info for a specified API.
get rating GET /api/apis/versions/{ID}/ratings/{UserID} Returns a specific user's rating for a resource.
get rating summary GET /api/apis/versions/{ID}/ratings/summary Retrieves a summary of the ratings for a resource.
get service asset GET /api/apis/versions/{ApiVersionID}/implementations/{ImplCode}/services/{ServiceID} Returns information about the service for a specific API version implementation.
get service endpoints GET /api/apis/versions/{ApiVersionID}/implementations/{ImplCode}/services/{ServiceID}/endpoints Returns information about one or more endpoints (physical service or virtual service) for a specific API version, implementation, service.
get Swagger API document Do not use GET /api/apis/versions/{APIVersionID}/swagger/{SwaggerPath}. Instead, use GET /api/apis/versions/{APIVersionID}/definition/{Specification} to return the API description format, such as Swagger. Returns the Swagger version 1.1 API document for the specified API version, showing the details for each operation, in JSON or XML format.
get Swagger resource document GET /api/apis/versions/{APIVersionID}/swagger Returns the automatically-generated Swagger version 1.1 resource document for the specified API version, showing the path to each resource.
get transaction record GET /api/apis/versions/{APIVersionID}/txlogs/{TransactionID} Returns information about a specific transaction for an API version.
get transaction logs GET /api/apis/versions/{APIVersionID}/txlogs Returns up to 1000 transaction logs for the specified API version. If no count parameters specified, returns 100 transactions.
get transaction logs for operation GET /api/apis/versions/{APIVersionID}/environments/{Environment}/operations/{OperationName}/txlogs Returns transaction logs for the specified operation in the specified environment.
get version board GET /api/apis/{APIVersionID}/board Returns a list of Forum entries for the specified API version.
invite private viewer POST /api/apis/versions/{APIVersionID}/viewers/{ViewerID} Invites a group to connect to a Private API. When the group is connected, group members can view the API.
invite private viewer with scope POST /api/apis/versions/{APIVersionID}/viewers Invites a group to have visibility of an API version, and also specifies visibility permissions—one or more specific licenses, or unlimited visibility.
list all API versions GET /api/apis/versions Returns information about API versions for all APIs, in the form of a JSON or XML object.
list APIs GET /api/apis Returns a list of all APIs on the platform. With an optional parameter, lists APIs owned by a specific business organization.
list API summaries GET /api/apis Returns information about APIs on the platform. With the optional query parameter, returns information about the APIs associated with the specified business organization.
list API versions GET /api/apis/versions Returns information about API versions for all APIs, in the form of an RSS channel.
list contracts GET /api/apis/versions/{APIVersionID}/contracts Returns information about contracts for the specified API version, in the form of a JSON object.
modify API implementation deployments PUT /api/apis/versions/{APIVersionID}/implementations/{ImplCode}/deployments Modifies an existing deployment of an implementation (virtual service) for a specific API version.
modify API implementation policies PUT /api/apis/versions/{ApiVersionID}/implementations/{ImplCode}/policies Modifies the policy assignments for the specified implementation for the specified API version.

modify API implementation target policies

Valid in version: 2020.2.0

PUT /api/apis/versions/{ApiVersionID}/implementations/{ImplCode}/target-policies Modifies the policy assignments for the specified implementation for the specified API version.
modify API version design PUT /api/apis/versions/{APIVersionID}/design Updates an API version by providing an update to the API description.
modify extension properties PUT /api/apis/versions/{APIVersionID}/extensions Updates the Lifecycle Manager extension properties for the specified API version.
modify legal details PUT /api/apis/versions/{APIVersionID}/legals/{LegalDocumentID}/details Modifies information about a legal document for the specified API (name or description).
modify legal state PUT /api/apis/versions/{APIVersionID}/legals/{LegalDocumentID}/state Modifies the State of a legal document associated with a specified API version.
remove API Administrator DELETE /api/apis/{APIID}/administrators/{UserID} is deprecated; use DELETE /api/groups/{GroupID}/members/{UserID} Removes the specified user from the Administrator role for the specified API.
save API auto-connect settings PUT /api/apis/versions/{APIVersionID}/autosettings Adds or updates the auto-connect settings for the specified API version.
save API OAuth details

PUT /api/apis/versions/{APIVersionID}/oauthdetails

(with content-type application/vnd.soa.v2019+json)

Adds or modifies the OAuth details for the specified API version. Supports multiple OAuth Providers.
save operation resources PUT /api/apis/versions/{APIVersionID}/resources Adds or updates information about operation-specific scope mapping for an API version.
save private viewer scope PUT /api/apis/versions/{APIVersionID}/viewers/{ViewerID} Saves private viewer scope for an API.
save service endpoints PUT /api/apis/versions/{ApiVersionID}/implementations/{ImplCode}/services/{ServiceID}/endpoints Modifies information about one or more physical service endpoints for a specific API version, implementation, service.
uninvite private viewer DELETE /api/apis/versions/{APIVersionID}/viewers/{ViewerID} Removes the connection between a viewer (group) and a private API. The viewer (group) will no longer have access to the Private API and cannot see it once the connection is removed.
update API implementation debug options PUT /api/apis/versions/{ApiVersionID}/implementations/{ImplCode}/debug Changes the debug mode setting for the specified API implementation.
update API implementation info PUT /api/apis/versions/{APIVersionID}/implementations/{ImplCode}/info Updates information about the specified implementation for the specified API version.
update API version info PUT api/apis/versions/{ApiVersionID}/info Updates information about an API or API version.
update rating PUT apis/versions/{ID}/ratings/{UserID} Adds or updates a specific user's rating for a resource. If the rating doesn't exist, this operation adds it; if it already exists, the operation updates it.

APIs Service: Operation Categories

The operations in the APIs service can be divided into the logical groupings listed below. Each of these groups addresses adding, changing, retrieving, or deleting various resources relating to APIs in the Akana API Platform.

API Administrators

These operations allow you to add, update, and remove members from the API Administrator group.

API Definition

These operations allow you to add, update, and delete an API or API version.

Browse/Get API

These operations allow you to retrieve information about one or more APIs or API versions.

API OAuth Details

This operation allows you to either store or update an API's OAuth settings.

API Monitoring

These operations allow you to monitor and report on an API's metrics and to export the reporting information.

API Documentation

These operations allow you to manage Swagger documents, used for automatic generation of reference documentation for your API.

API Legal Agreements

These operations allow you to add, modify, retrieve, or delete legal agreements associated with your API.

For more information about managing legal agreements for your API, see Managing Legal Agreements on the Platform.

API Board

These operations allow you to retrieve information about the Board for an API or API version.

API/App Relationships

These operations allow you to retrieve information about your API's relationships with apps.

Export

These operations allow you to export information about the API.

Private APIs

These operations allow you to retrieve information about viewers who can see your Private API.

API Followers

These operations allow you to retrieve information about users who are following your API.

API Licenses

These operations allow you to retrieve information about licenses associated with the API, if the API is using the Licenses feature.

API Ratings

These operations allow you to add, update, or view an API's user-defined rating or to view an overall rating summary.

API Scopes

These operations allow you to manage scopes associated with the API, if the API is using the Licenses feature.

Images/Avatars

These operations allow you to retrieve information about the avatar associated with your API.

API Workflow

These operations allow you to manage the workflow associated with your API.