Apiman Organizations API
The Organizations API from Apiman — 57 operation(s) for organizations.
The Organizations API from Apiman — 57 operation(s) for organizations.
openapi: 3.0.1
info:
title: API Manager REST Actions Organizations API
description: The API Manager REST API is used by the API Manager UI to get stuff done. You can use it to automate any API Management task you wish. For example, create new Organizations, Plans, Clients, and APIs.
version: 3.1.0-SNAPSHOT
servers:
- url: /apiman
tags:
- name: Organizations
paths:
/organizations/{organizationId}/apis:
get:
tags:
- Organizations
summary: List APIs
operationId: listApis
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
responses:
'200':
description: If the list of APIs is successfully returned.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ApiSummaryBean'
'404':
description: If the Organization does not exist.
post:
tags:
- Organizations
summary: Create API
operationId: createApi
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NewApiBean'
required: true
responses:
'200':
description: If the API is successfully created.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiBeanDto'
'404':
description: If the Organization does not exist.
/organizations/{organizationId}/apis/{apiId}/versions/{version}/policies:
get:
tags:
- Organizations
summary: List All API Policies
operationId: listApiPolicies_1
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: apiId
in: path
description: The API ID.
required: true
schema:
type: string
- name: version
in: path
description: The API version.
required: true
schema:
type: string
responses:
'200':
description: If the list of Policies is successfully returned.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/PolicySummaryBean'
'404':
description: If the API does not exist.
post:
tags:
- Organizations
summary: Add API Policy
operationId: createApiPolicy
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: apiId
in: path
description: The API ID.
required: true
schema:
type: string
- name: version
in: path
description: The API version.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NewPolicyBean'
responses:
'200':
description: Full details about the newly added Policy
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyBean'
'404':
description: If the API does not exist.
/organizations/{organizationId}/apis/{apiId}/versions:
get:
tags:
- Organizations
summary: List API Versions
operationId: listApiVersions_1
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: apiId
in: path
description: The API ID.
required: true
schema:
type: string
responses:
'200':
description: If the list of API versions is successfully returned.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ApiVersionSummaryBean'
post:
tags:
- Organizations
summary: Create API Version
operationId: createApiVersion
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: apiId
in: path
description: The API ID.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NewApiVersionBean'
responses:
'200':
description: If the API version is created successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiVersionBeanDto'
'404':
description: If the API does not exist.
'409':
description: If the API version already exists.
/organizations/{organizationId}/clients:
get:
tags:
- Organizations
summary: List Clients
operationId: listClients
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
responses:
'200':
description: If the list of Clients is successfully returned.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ClientSummaryBean'
'404':
description: If the Organization does not exist.
post:
tags:
- Organizations
summary: Create Client
description: Use this endpoint to create a new Client.It is important to also create an initial version of the Client (e.g. 1.0). This can either be done by including the 'initialVersion' property in the request, or by immediately following up with a call to Create Client Version If the former is done, then a first Client version will be created automatically by this endpoint.
operationId: createClient
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NewClientBean'
responses:
'200':
description: If the Client is successfully created.
content:
application/json:
schema:
$ref: '#/components/schemas/ClientBean'
'404':
description: If the Organization does not exist.
/organizations/{organizationId}/clients/{clientId}/versions/{version}/policies:
get:
tags:
- Organizations
summary: List All Client Policies
operationId: listClientPolicies
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: clientId
in: path
description: The Client ID.
required: true
schema:
type: string
- name: version
in: path
description: The Client version.
required: true
schema:
type: string
responses:
'200':
description: If the list of Policies is successfully returned.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/PolicySummaryBean'
'404':
description: If the Client does not exist.
post:
tags:
- Organizations
summary: Add Client Policy
operationId: createClientPolicy
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: clientId
in: path
description: The Client ID.
required: true
schema:
type: string
- name: version
in: path
description: The Client version.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NewPolicyBean'
responses:
'200':
description: If the Policy is successfully added.
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyBean'
'404':
description: If the Client does not exist.
/organizations/{organizationId}/clients/{clientId}/versions:
get:
tags:
- Organizations
summary: List Client Versions
operationId: listClientVersions
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: clientId
in: path
description: The Client ID.
required: true
schema:
type: string
responses:
'200':
description: If the list of Client versions is successfully returned.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ClientVersionSummaryBean'
post:
tags:
- Organizations
summary: Create Client Version
operationId: createClientVersion
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: clientId
in: path
description: The Client ID.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NewClientVersionBean'
responses:
'200':
description: If the Client version is created successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/ClientVersionBean'
'404':
description: If the Client does not exist.
'409':
description: If the Client version already exists.
/organizations/{organizationId}/clients/{clientId}/versions/{version}/contracts:
get:
tags:
- Organizations
summary: List All Contracts for a Client
operationId: getClientVersionContracts
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: clientId
in: path
description: The Client ID.
required: true
schema:
type: string
- name: version
in: path
description: The Client version.
required: true
schema:
type: string
responses:
'200':
description: If the list of Contracts is successfully returned.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ContractSummaryBean'
'404':
description: If the Client is not found.
post:
tags:
- Organizations
summary: Create an API Contract
description: Create a Contract between the Client and an API. In order to create a Contract, the caller must specify the Organization, ID, and Version of the API.Additionally, the caller must specify the ID of the plan it wants to use for the contract with the API.
operationId: createContract
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: clientId
in: path
description: The Client ID.
required: true
schema:
type: string
- name: version
in: path
description: The Client version.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NewContractBean'
responses:
'200':
description: If the Contract is successfully created.
content:
application/json:
schema:
$ref: '#/components/schemas/ContractBean'
'404':
description: If the Client version does not exist.
delete:
tags:
- Organizations
summary: Break All Contracts
operationId: deleteAllContracts
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: clientId
in: path
description: The Client ID.
required: true
schema:
type: string
- name: version
in: path
description: The Client version.
required: true
schema:
type: string
responses:
'200':
description: If the operation is successful.
'404':
description: If the Client does not exist.
/organizations:
post:
tags:
- Organizations
summary: Create Organization
description: Create a new Organization. This can be considered a type of namespace. APIs, Clients and Plans are defined within an organization. Using other API calls, you can add users to an organization and assign them fine-grained permissions
operationId: createOrg
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NewOrganizationBean'
responses:
'200':
description: If the Organization was successfully created.
content:
application/json:
schema:
$ref: '#/components/schemas/OrganizationBean'
/organizations/{organizationId}/plans:
get:
tags:
- Organizations
summary: List Plans
operationId: listPlans
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
responses:
'200':
description: If the list of Plans is successfully returned.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/PlanSummaryBean'
'404':
description: If the Organization does not exist.
post:
tags:
- Organizations
summary: Create Plan
operationId: createPlan
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NewPlanBean'
responses:
'200':
description: If the Plan is successfully created.
content:
application/json:
schema:
$ref: '#/components/schemas/PlanBean'
'404':
description: If the Organization does not exist.
/organizations/{organizationId}/plans/{planId}/versions/{version}/policies:
get:
tags:
- Organizations
summary: List All Plan Policies
operationId: listPlanPolicies_1
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: planId
in: path
description: The Plan ID.
required: true
schema:
type: string
- name: version
in: path
description: The Plan version.
required: true
schema:
type: string
responses:
'200':
description: If the list of Policies is successfully returned.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/PolicySummaryBean'
'404':
description: If the Plan does not exist.
post:
tags:
- Organizations
summary: Add Plan Policy
operationId: createPlanPolicy
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: planId
in: path
description: The Plan ID.
required: true
schema:
type: string
- name: version
in: path
description: The Plan version.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NewPolicyBean'
responses:
'200':
description: If the Policy is successfully added.
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyBean'
'404':
description: If the Plan does not exist.
/organizations/{organizationId}/plans/{planId}/versions:
get:
tags:
- Organizations
summary: List Plan Versions
operationId: listPlanVersions
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: planId
in: path
description: The Plan ID.
required: true
schema:
type: string
responses:
'200':
description: If the list of Plan versions is successfully returned.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/PlanVersionSummaryBean'
post:
tags:
- Organizations
summary: Create Plan Version
operationId: createPlanVersion
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: planId
in: path
description: The Plan ID.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NewPlanVersionBean'
responses:
'200':
description: If the Plan version is created successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/PlanVersionBean'
'404':
description: If the Plan does not exist.
'409':
description: If the Plan version already exists.
/organizations/{organizationId}/apis/{apiId}:
get:
tags:
- Organizations
summary: Get API By ID
operationId: getApi
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: apiId
in: path
description: The API ID.
required: true
schema:
type: string
responses:
'200':
description: If the API is successfully returned.
content:
application/json:
schema:
$ref: '#/components/schemas/ApiBeanDto'
'404':
description: If the API does not exist.
put:
tags:
- Organizations
summary: Update API
operationId: updateApi
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: apiId
in: path
description: The API ID.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateApiBean'
responses:
'204':
description: If the API is updated successfully.
'404':
description: If the API does not exist.
delete:
tags:
- Organizations
summary: Delete API
operationId: deleteApi
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: apiId
in: path
description: The API ID.
required: true
schema:
type: string
responses:
'204':
description: If the API is updated successfully.
'404':
description: If the API does not exist.
'409':
description: If the API cannot be deleted.
/organizations/{organizationId}/apis/{apiId}/versions/{version}/definition:
get:
tags:
- Organizations
summary: Get API Definition
operationId: getApiDefinition_2
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: apiId
in: path
description: The API ID.
required: true
schema:
type: string
- name: version
in: path
description: The API version.
required: true
schema:
type: string
responses:
'200':
description: If the API definition is successfully returned.
'404':
description: If the API version does not exist.
put:
tags:
- Organizations
summary: Update API Definition
operationId: updateApiDefinition
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: apiId
in: path
description: The API ID.
required: true
schema:
type: string
- name: version
in: path
description: The API version.
required: true
schema:
type: string
responses:
'204':
description: If the API definition was successfully updated.
'404':
description: If the API does not exist.
post:
tags:
- Organizations
summary: Update API Definition from URL
operationId: updateApiDefinitionFromURL
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: apiId
in: path
description: The API ID.
required: true
schema:
type: string
- name: version
in: path
description: The API version.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NewApiDefinitionBean'
responses:
'204':
description: If the API definition was successfully updated.
'404':
description: If the API does not exist.
delete:
tags:
- Organizations
summary: Remove API Definition
operationId: deleteApiDefinition
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: apiId
in: path
description: The API ID.
required: true
schema:
type: string
- name: version
in: path
description: The API version.
required: true
schema:
type: string
responses:
'204':
description: If the API definition was successfully deleted.
'404':
description: If the API does not exist.
/organizations/{organizationId}/apis/{apiId}/image:
delete:
tags:
- Organizations
summary: Delete API Image
operationId: deleteApiImage
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: apiId
in: path
description: The API ID.
required: true
schema:
type: string
responses:
'204':
description: If the API is updated successfully.
'404':
description: If the API does not exist.
/organizations/{organizationId}/apis/{apiId}/versions/{version}/policies/{policyId}:
get:
tags:
- Organizations
summary: Get API Policy
operationId: getApiPolicy
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: apiId
in: path
description: The API ID.
required: true
schema:
type: string
- name: version
in: path
description: The API version.
required: true
schema:
type: string
- name: policyId
in: path
description: The Policy ID.
required: true
schema:
type: integer
format: int64
responses:
'200':
description: If the Policy is successfully returned.
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyBean'
'404':
description: If the API does not exist.
put:
tags:
- Organizations
summary: Update API Policy
operationId: updateApiPolicy
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: apiId
in: path
description: The API ID.
required: true
schema:
type: string
- name: version
in: path
description: The API version.
required: true
schema:
type: string
- name: policyId
in: path
description: The Policy ID.
required: true
schema:
type: integer
format: int64
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdatePolicyBean'
responses:
'204':
description: If the Policy was successfully updated.
'404':
description: If the Policy does not exist.
delete:
tags:
- Organizations
summary: Remove API Policy
operationId: deleteApiPolicy
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: apiId
in: path
description: The API ID.
required: true
schema:
type: string
- name: version
in: path
description: The API version.
required: true
schema:
type: string
- name: policyId
in: path
description: The Policy ID.
required: true
schema:
type: integer
format: int64
responses:
'204':
description: If the Policy was successfully deleted.
'404':
description: If the Policy does not exist.
/organizations/{organizationId}/clients/{clientId}:
get:
tags:
- Organizations
summary: Get Client By ID
description: Use this endpoint to retrieve information about a single Client by ID. This only returns information about the Client, not any particular version of the client.
operationId: getClient
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: clientId
in: path
description: The Client ID.
required: true
schema:
type: string
responses:
'200':
description: If the Client is successfully returned.
content:
application/json:
schema:
$ref: '#/components/schemas/ClientBean'
'404':
description: If the Client does not exist.
put:
tags:
- Organizations
summary: Update Client
operationId: updateClient
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: clientId
in: path
description: The Client ID.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClientBean'
responses:
'204':
description: If the Client is updated successfully.
'404':
description: If the Client does not exist.
delete:
tags:
- Organizations
summary: Delete a client
operationId: deleteClient
parameters:
- name: organizationId
in: path
description: The Organization ID the client exists within
required: true
schema:
type: string
- name: clientId
in: path
description: The ClientApp ID to delete
required: true
schema:
type: string
responses:
'204':
description: If the Organization was successfully deleted
'409':
description: If the delete preconditions have not been met (i.e. sub-elements are still active, such as still-registered ClientVersions).
/organizations/{organizationId}/clients/{clientId}/versions/{version}/policies/{policyId}:
get:
tags:
- Organizations
summary: Get Client Policy
operationId: getClientPolicy
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: clientId
in: path
description: The Client ID.
required: true
schema:
type: string
- name: version
in: path
description: The Client version.
required: true
schema:
type: string
- name: policyId
in: path
description: The Policy ID.
required: true
schema:
type: integer
format: int64
responses:
'200':
description: If the Policy is successfully returned.
content:
application/json:
schema:
$ref: '#/components/schemas/PolicyBean'
'404':
description: If the Client does not exist.
put:
tags:
- Organizations
summary: Update Client Policy
operationId: updateClientPolicy
parameters:
- name: organizationId
in: path
description: The Organization ID.
required: true
schema:
type: string
- name: clientId
in: path
description: The Client ID.
required: true
schema:
type: string
- name: version
in: path
description: The Client version.
required: true
schema:
type: string
- name: policyId
in: path
description: The Policy ID.
required: true
schema:
type: integer
# --- truncated at 32 KB (109 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/apiman/refs/heads/main/openapi/apiman-organizations-api-openapi.yml