est.api.portal.gravitee-rest-api-portal-rest.3.6.3.source-code.openapi.yaml Maven / Gradle / Ivy
openapi: 3.0.0
info:
title: Gravitee.io Portal Rest API
description: API dedicated to the devportal part of Gravitee
termsOfService: terms
contact:
name: The Gravitee Team
url: https://gravitee.io
email: [email protected]
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0
version: "3.0.0"
servers:
- url: http://localhost:8083/portal/environments/{envId}
description: The portal API for a given environment
variables:
envId:
default: DEFAULT
description: ID of the environment
tags:
- name: Analytics
description: All about application analytics
- name: Api
description: All about APIs
- name: Application
description: All about applications
- name: Group
description: All about groups
- name: Portal
description: All about portal configurations
- name: Subscription
description: All about subscriptions
- name: User
description: All about the current user
- name: Users
description: All about the portal users
security:
- BasicAuth: []
- CookieAuth: []
paths:
/apis:
get:
tags:
- Api
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
- $ref: '#/components/parameters/apiContextPathQueryParam'
- $ref: '#/components/parameters/apiLabelQueryParam'
- $ref: '#/components/parameters/apiVersionQueryParam'
- $ref: '#/components/parameters/apiNameQueryParam'
- $ref: '#/components/parameters/apiCategoryQueryParam'
- $ref: '#/components/parameters/apiFilterQueryParam'
- $ref: '#/components/parameters/apiFilterExcludedQueryParam'
- $ref: '#/components/parameters/apiPromotedQueryParam'
summary: List APIs
description: |
List public APIs for anonymous requests.
List all the APIs the current user is allowed to category for authenticated requests.
The list can be filtered according to query parameters.
By default the list is sorted by alphabetic order.
If a **cat** query param is sent, a specific sorting can be applied. Please refer to **cat** description for detail.
operationId: getApis
security: []
responses:
200:
description: List accessible APIs for current user
content:
application/json:
schema:
$ref: '#/components/schemas/ApisResponse'
500:
$ref: '#/components/responses/InternalServerError'
/apis/_search:
post:
tags:
- Api
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
- $ref: '#/components/parameters/apiQueryParam'
summary: Search APIs with a query
description: |
Same as `/apis` but with a search query as a parameter. Search for API using the search engine.
Supports pagination.
operationId: searchApis
security: []
responses:
200:
description: Search accessible APIs for current user
content:
application/json:
schema:
$ref: '#/components/schemas/ApisResponse'
500:
$ref: '#/components/responses/InternalServerError'
/apis/{apiId}:
parameters:
- $ref: '#/components/parameters/apiIdParam'
get:
tags:
- Api
parameters:
- $ref: '#/components/parameters/apiIncludeParam'
summary: Get the API definition
description: |
Get the detail of an API.
This API has to be accessible by the current user, otherwise a 404 will be returned.
operationId: getApiByApiId
security: []
responses:
200:
description: API definition
content:
application/json:
schema:
$ref: '#/components/schemas/Api'
404:
$ref: '#/components/responses/APINotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/apis/{apiId}/informations:
parameters:
- $ref: '#/components/parameters/apiIdParam'
get:
tags:
- Portal
summary: Get the api dynamic informations to display.
operationId: getApiInformations
description: |
Get api informations.
security: []
responses:
200:
description: List of api informations
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ApiInformation'
500:
$ref: '#/components/responses/InternalServerError'
/apis/{apiId}/links:
parameters:
- $ref: '#/components/parameters/apiIdParam'
get:
tags:
- Api
summary: Get the API links from Aside SYSTEM_FOLDER.
operationId: getApiLinks
description: |
Get all the links (internal and external) to be displayed in the detail of the API.
security: []
responses:
200:
description: List of Links
content:
application/json:
schema:
$ref: '#/components/schemas/LinksResponse'
500:
$ref: '#/components/responses/InternalServerError'
/apis/{apiId}/metrics:
parameters:
- $ref: '#/components/parameters/apiIdParam'
get:
tags:
- Api
summary: Get API metrics
description: |
Get some metrics about an API :
* number of subscribers
* number of hits during the last 7 days
* health ratio over the last week
This API has to be accessible by the current user, otherwise a 404 will be returned.
operationId: getApiMetricsByApiId
security: []
responses:
200:
description: API metrics
content:
application/json:
schema:
$ref: '#/components/schemas/ApiMetrics'
404:
$ref: '#/components/responses/APINotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/apis/{apiId}/pages:
parameters:
- $ref: '#/components/parameters/apiIdParam'
get:
tags:
- Api
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
- $ref: '#/components/parameters/homePageQueryParam'
- $ref: '#/components/parameters/parentPageQueryParam'
summary: List API pages
description: |
List all documentation pages of an API.
This API has to be accessible by the current user, otherwise a 404 will be returned.
operationId: getPagesByApiId
security: []
responses:
200:
$ref: '#/components/responses/PagesSuccess'
404:
$ref: '#/components/responses/APINotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/apis/{apiId}/pages/{pageId}:
parameters:
- $ref: '#/components/parameters/apiIdParam'
- $ref: '#/components/parameters/pageIdParam'
get:
tags:
- Api
parameters:
- $ref: '#/components/parameters/pageIncludeParam'
summary: Get an API page
description: |
Get an API page.
This API has to be accessible by the current user, otherwise a 404 will be returned.
operationId: getPageByApiIdAndPageId
security: []
responses:
200:
$ref: '#/components/responses/PageSuccess'
404:
description: API or Page not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/apis/{apiId}/pages/{pageId}/content:
parameters:
- $ref: '#/components/parameters/apiIdParam'
- $ref: '#/components/parameters/pageIdParam'
get:
tags:
- Api
summary: Get the content of an API page.
description: |
Get the content of a specific API documentation page.
This API has to be accessible by the current user, otherwise a 404 will be returned.
operationId: getPageContentByApiIdAndPageId
security: []
responses:
200:
description: The content of the api documentation page.
content:
text/plain:
schema:
type: string
404:
description: API or Page not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/apis/{apiId}/picture:
parameters:
- $ref: '#/components/parameters/apiIdParam'
get:
tags:
- Api
summary: Get the API's picture
description: |
Get the API's picture.
This API has to be accessible by the current user, otherwise a 404 will be returned.
operationId: getPictureByApiId
security: []
responses:
200:
$ref: '#/components/responses/PictureSuccess'
404:
$ref: '#/components/responses/APINotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/apis/{apiId}/background:
parameters:
- $ref: '#/components/parameters/apiIdParam'
get:
tags:
- Api
summary: Get the API's background
description: |
Get the API's background.
This API has to be accessible by the current user, otherwise a 404 will be returned.
operationId: getBackgroundByApiId
security: []
responses:
200:
$ref: '#/components/responses/PictureSuccess'
404:
$ref: '#/components/responses/APINotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/apis/{apiId}/plans:
parameters:
- $ref: '#/components/parameters/apiIdParam'
get:
tags:
- Api
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
summary: List plans for an API
description: |
List plans for an API.
This API has to be accessible by the current user, otherwise a 404 will be returned.
operationId: getApiPlansByApiId
security: []
responses:
200:
description: List accessible plans for current user
content:
application/json:
schema:
$ref: '#/components/schemas/PlansResponse'
404:
$ref: '#/components/responses/APINotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/apis/{apiId}/ratings:
parameters:
- $ref: '#/components/parameters/apiIdParam'
get:
tags:
- Api
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
- $ref: '#/components/parameters/mineQueryParam'
- $ref: '#/components/parameters/ratingOrderQueryParam'
summary: List ratings for an API
description: |
List ratings for an API.
This API has to be accessible by the current user, otherwise a 404 will be returned.
operationId: getApiRatingsByApiId
security: []
responses:
200:
description: List of ratings
content:
application/json:
schema:
$ref: '#/components/schemas/RatingsResponse'
404:
$ref: '#/components/responses/APINotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
post:
tags:
- Api
summary: Create a rating for an API
description: |
Create a rating for an API.
This API has to be accessible by the current user, otherwise a 404 will be returned.
The current must have API_RATING[CREATE] permission to create a rating.
operationId: createApiRating
requestBody:
description: Use to add a rating to an api
content:
application/json:
schema:
$ref: '#/components/schemas/RatingInput'
responses:
201:
description: Created Rating
content:
application/json:
schema:
$ref: '#/components/schemas/Rating'
400:
description: Rating for this api and this user already exists.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
403:
description: Rating service is not activated or user does not have sufficient rights to access this resource.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
404:
$ref: '#/components/responses/APINotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/apis/{apiId}/ratings/{ratingId}:
parameters:
- $ref: '#/components/parameters/apiIdParam'
- $ref: '#/components/parameters/ratingIdParam'
put:
tags:
- Api
summary: Update a rating for an API
description: |
Update a rating for an API.
This API has to be accessible by the current user, otherwise a 404 will be returned.
The current must have API_RATING[CREATE] permission to update a rating.
operationId: updateApiRating
requestBody:
description: Use to update a rating to an api
content:
application/json:
schema:
$ref: '#/components/schemas/RatingInput'
responses:
200:
description: Updated Rating
content:
application/json:
schema:
$ref: '#/components/schemas/Rating'
403:
description: Rating service is not activated or user does not have sufficient rights to access this resource.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
404:
description: API or Rating not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
delete:
tags:
- Api
summary: Delete a rating for an API
description: |
Delete a rating for an API.
This API has to be accessible by the current user, otherwise a 404 will be returned.
The current must have API_RATING[DELETE] permission to delete a rating.
operationId: deleteApiRating
responses:
204:
description: Deleted Rating
403:
description: Rating service is not activated or user does not have sufficient rights to access this resource.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
404:
description: API or Rating not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/apis/{apiId}/ratings/{ratingId}/answers:
parameters:
- $ref: '#/components/parameters/apiIdParam'
- $ref: '#/components/parameters/ratingIdParam'
post:
tags:
- Api
summary: Create an answer to rating
description: |
Create an answer to rating of API.
This API has to be accessible by the current user, otherwise a 404 will be returned.
The current must have API_RATING_ANSWER[CREATE] permission to create an answer.
operationId: createApiRatingAnswer
requestBody:
description: Use to create an answer
content:
application/json:
schema:
$ref: '#/components/schemas/RatingAnswerInput'
responses:
200:
description: Updated Rating with answer
content:
application/json:
schema:
$ref: '#/components/schemas/Rating'
403:
description: Rating service is not activated or user does not have sufficient rights to access this resource.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
404:
description: API or Rating not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/apis/{apiId}/ratings/{ratingId}/answers/{answerId}:
parameters:
- $ref: '#/components/parameters/apiIdParam'
- $ref: '#/components/parameters/ratingIdParam'
- $ref: '#/components/parameters/answerIdParam'
delete:
tags:
- Api
summary: Delete an answer rating for an API
description: |
Delete an answer rating for an API.
This API has to be accessible by the current user, otherwise a 404 will be returned.
The current must have API_RATING_ANSWER[DELETE] permission to delete a rating.
operationId: deleteApiRatingAnswer
responses:
204:
description: Deleted Rating Answer
403:
description: Rating service is not activated or user does not have sufficient rights to access this resource.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
404:
description: API, Rating or Answer not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/apis/{apiId}/subscribers:
parameters:
- $ref: '#/components/parameters/apiIdParam'
get:
tags:
- Api
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
- $ref: '#/components/parameters/subscriptionStatusesQueryParam'
summary: List applications that subscribred to an API
description: |
If the current user is the owner of the API, all connected applications will be returned. Filtered by status. Ordered by number of hits.
Else only applications that current is allowed to access will.
This API has to be accessible by the current user, otherwise a 404 will be returned.
operationId: getSubscriberApplicationsByApiId
security: []
responses:
200:
description: List accessible applications for current user
content:
application/json:
schema:
$ref: '#/components/schemas/ApplicationsResponse'
404:
$ref: '#/components/responses/APINotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/apis/{apiId}/media/{mediaHash}:
parameters:
- $ref: '#/components/parameters/apiIdParam'
- $ref: '#/components/parameters/mediaHashParam'
get:
tags:
- Api
summary: Get the api media.
operationId: getApiMedia
description: |
Get api media.
security: []
responses:
200:
$ref: '#/components/responses/MediaSuccess'
404:
$ref: '#/components/responses/APINotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/applications:
get:
tags:
- Application
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
- $ref: '#/components/parameters/forSubscriptionParam'
- $ref: '#/components/parameters/applicationOrderQueryParam'
summary: List all the applications accessible to authenticated user. Default order is by *name* ASC.
description: |
List all the applications accessible to authenticated user.
User must have MANAGEMENT_APPLICATION[READ] and PORTAL_APPLICATION[READ] permission.
operationId: getApplications
responses:
200:
description: List of Applications.
content:
application/json:
schema:
$ref: '#/components/schemas/ApplicationsResponse'
403:
$ref: '#/components/responses/PermissionError'
500:
$ref: '#/components/responses/InternalServerError'
post:
tags:
- Application
requestBody:
description: Use to create an application.
content:
application/json:
schema:
$ref: '#/components/schemas/ApplicationInput'
summary: Create an application
description: |
Create an application.
User must have MANAGEMENT_APPLICATION[CREATE] permission.
operationId: createApplication
responses:
201:
description: Created application.
content:
application/json:
schema:
$ref: '#/components/schemas/Application'
400:
description: Bad Request if body is empty.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
403:
$ref: '#/components/responses/PermissionError'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
get:
tags:
- Application
summary: Get an application.
description: |
Get an application.
User must have the APPLICATION_DEFINITION[READ] permission.
operationId: getApplicationByApplicationId
responses:
200:
description: One application.
content:
application/json:
schema:
$ref: '#/components/schemas/Application'
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
put:
tags:
- Application
requestBody:
description: Use to update an application.
content:
application/json:
schema:
$ref: '#/components/schemas/Application'
summary: Update an application.
description: |
Update an application.
User must have APPLICATION_DEFINITION[UPDATE] permission.
operationId: updateApplicationByApplicationId
responses:
200:
description: Updated application.
content:
application/json:
schema:
$ref: '#/components/schemas/Application'
400:
description: Bad Request if body is empty.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
delete:
tags:
- Application
summary: Delete an application
description: |
Delete an application.
User must have the APPLICATION_DEFINITION[DELETE] permission.
operationId: deleteApplicationByApplicationId
responses:
204:
description: No-Content
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}/picture:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
get:
tags:
- Application
summary: Get the application's picture
description: |
Get the application's picture.
User must have APPLICATION_DEFINITION[READ] permission.
operationId: getApplicationPictureByApplicationId
responses:
200:
$ref: '#/components/responses/PictureSuccess'
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}/background:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
get:
tags:
- Application
summary: Get the application's background
description: |
Get the application's background.
User must have APPLICATION_DEFINITION[READ] permission.
operationId: getApplicationBackgroundByApplicationId
responses:
200:
$ref: '#/components/responses/PictureSuccess'
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}/notifications:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
get:
tags:
- Application
summary: Get application notifications
description: |
Get application notifications.
User must have APPLICATION_NOTIFICATION[READ] permission to get notifications.
operationId: getNotificationsByApplicationId
responses:
200:
description: List of notifications configured
content:
application/json:
schema:
description: List of notifications configured on the application.
type: array
items:
type: string
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
put:
tags:
- Application
requestBody:
description: Use to update application notifications.
content:
application/json:
schema:
description: List of notifications configured on the application.
$ref: '#/components/schemas/NotificationInput'
summary: Update notifications for an application.
description: |
Update notifications for an application.
User must have APPLICATION_NOTIFICATION[UPDATE] permission to update notifications.
operationId: updateApplicationNotifications
responses:
200:
description: Updated application notifications.
content:
application/json:
schema:
type: array
items:
type: string
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}/members:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
get:
tags:
- Application
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
summary: List application members
description: |
List application members.
User must have the APPLICATION_MEMBER[READ] permission.
operationId: getMembersByApplicationId
responses:
200:
description: List of members
content:
application/json:
schema:
$ref: '#/components/schemas/MembersResponse'
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
post:
tags:
- Application
requestBody:
description: Use to create a member.
content:
application/json:
schema:
$ref: '#/components/schemas/MemberInput'
summary: Create an application member
description: |
Create an application member.
User must have the APPLICATION_MEMBER[CREATE] permission.
operationId: createApplicationMember
responses:
201:
description: Created member
content:
application/json:
schema:
$ref: '#/components/schemas/Member'
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}/members/_transfer_ownership:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
post:
tags:
- Application
requestBody:
description: Use to transfer ownership of an application.
content:
application/json:
schema:
$ref: '#/components/schemas/TransferOwnershipInput'
summary: Transfer the ownership of the application
description: |
Transfer the ownership of the application.
User must have the APPLICATION_MEMBER[UPDATE] permission.
operationId: transferMemberOwnership
responses:
204:
description: No-Content
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}/members/{memberId}:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
- $ref: '#/components/parameters/memberIdParam'
get:
tags:
- Application
summary: Get an application member
description: |
Get an application member.
User must have the APPLICATION_MEMBER[READ] permission.
operationId: getApplicationMemberByApplicationIdAndMemberId
responses:
200:
description: A member
content:
application/json:
schema:
$ref: '#/components/schemas/Member'
403:
$ref: '#/components/responses/PermissionError'
404:
description: Application or Member not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
put:
tags:
- Application
requestBody:
description: Use to update a member.
content:
application/json:
schema:
$ref: '#/components/schemas/MemberInput'
summary: Update an application member.
description: |
Update an application member.
User must have the APPLICATION_MEMBER[UPDATE] permission.
operationId: updateApplicationMemberByApplicationIdAndMemberId
responses:
200:
description: Updated member.
content:
application/json:
schema:
$ref: '#/components/schemas/Member'
403:
$ref: '#/components/responses/PermissionError'
404:
description: Application or Member not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
delete:
tags:
- Application
summary: Remove an application member
description: |
Remove an application member.
User must have the APPLICATION_MEMBER[DELETE] permission.
operationId: deleteApplicationMember
responses:
204:
description: No-Content
403:
$ref: '#/components/responses/PermissionError'
404:
description: Application or Member not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}/metadata:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
get:
tags:
- Application
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
summary: List application metadata
description: |
List application metadata.
User must have the APPLICATION_METADATA[READ] permission.
operationId: getMetadataByApplicationId
responses:
200:
description: List of metadata
content:
application/json:
schema:
$ref: '#/components/schemas/ReferenceMetadataResponse'
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
post:
tags:
- Application
requestBody:
description: Use to create a metadata.
content:
application/json:
schema:
$ref: '#/components/schemas/ReferenceMetadataInput'
summary: Create an application metadata
description: |
Create an application metadata.
User must have the APPLICATION_METADATA[CREATE] permission.
operationId: createApplicationMetadata
responses:
201:
description: Created metadata
content:
application/json:
schema:
$ref: '#/components/schemas/ReferenceMetadata'
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}/metadata/{metadataId}:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
- $ref: '#/components/parameters/metadataIdParam'
get:
tags:
- Application
summary: Get an application metadata
description: |
Get an application metadata.
User must have the APPLICATION_METADATA[READ] permission.
operationId: getApplicationMetadataByApplicationIdAndMetadataId
responses:
200:
description: A metadata
content:
application/json:
schema:
$ref: '#/components/schemas/ReferenceMetadata'
403:
$ref: '#/components/responses/PermissionError'
404:
description: Application or Metadata not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
put:
tags:
- Application
requestBody:
description: Use to update a metadata.
content:
application/json:
schema:
$ref: '#/components/schemas/ReferenceMetadataInput'
summary: Update an application metadata.
description: |
Update an application metadata.
User must have the APPLICATION_METADATA[UPDATE] permission.
operationId: updateApplicationMetadataByApplicationIdAndMetadataId
responses:
200:
description: Updated metadata.
content:
application/json:
schema:
$ref: '#/components/schemas/ReferenceMetadata'
403:
$ref: '#/components/responses/PermissionError'
404:
description: Application or Metadata not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
delete:
tags:
- Application
summary: Remove an application metadata
description: |
Remove an application metadata.
User must have the APPLICATION_METADATA[DELETE] permission.
operationId: deleteApplicationMetadata
responses:
204:
description: No-Content
403:
$ref: '#/components/responses/PermissionError'
404:
description: Application or Metadata not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}/analytics:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
get:
tags:
- Application
- Analytics
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
- $ref: '#/components/parameters/fromQueryParam'
- $ref: '#/components/parameters/toQueryParam'
- $ref: '#/components/parameters/intervalQueryParam'
- $ref: '#/components/parameters/queryQueryParam'
- $ref: '#/components/parameters/fieldQueryParam'
- $ref: '#/components/parameters/analyticTypeQueryParam'
- $ref: '#/components/parameters/analyticRangeQueryParam'
- $ref: '#/components/parameters/analyticAggregationQueryParam'
- $ref: '#/components/parameters/analyticOrderQueryParam'
summary: Get Application analytics
description: |
Get the application analytics.
User must have the APPLICATION_ANALYTICS[READ] permission.
operationId: getApplicationAnalytics
responses:
200:
description: Analytics
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/DateHistoAnalytics'
- $ref: '#/components/schemas/GroupByAnalytics'
- $ref: '#/components/schemas/CountAnalytics'
400:
description: Invalid query params.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}/configuration:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
get:
tags:
- Application
summary: Get the application type configuration.
operationId: getApplicationType
description: |
Get application type.
security: []
responses:
200:
description: Application type configuration
content:
application/json:
schema:
$ref: '#/components/schemas/ApplicationType'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}/logs:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
get:
tags:
- Application
- Analytics
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
- $ref: '#/components/parameters/fromQueryParam'
- $ref: '#/components/parameters/toQueryParam'
- $ref: '#/components/parameters/queryQueryParam'
- $ref: '#/components/parameters/fieldQueryParam'
- $ref: '#/components/parameters/logOrderQueryParam'
summary: Get Application logs
description: |
Get the application logs.
User must have the APPLICATION_LOG[READ] permission.
operationId: getApplicationLogs
responses:
200:
description: List of logs
content:
application/json:
schema:
$ref: '#/components/schemas/LogsResponse'
400:
description: Invalid query params.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}/logs/_export:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
post:
tags:
- Application
- Analytics
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
- $ref: '#/components/parameters/fromQueryParam'
- $ref: '#/components/parameters/toQueryParam'
- $ref: '#/components/parameters/queryQueryParam'
- $ref: '#/components/parameters/fieldQueryParam'
- $ref: '#/components/parameters/logOrderQueryParam'
summary: Export application logs as CSV
description: |
Export application logs as CSV.
User must have the APPLICATION_LOG[READ] permission.
operationId: exportApplicationLogsByApplicationId
responses:
200:
description: CSV export of the logs
content:
text/plain:
schema:
type: string
400:
description: Invalid query params.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}/logs/{logId}:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
- $ref: '#/components/parameters/logIdParam'
get:
tags:
- Application
- Analytics
parameters:
- $ref: '#/components/parameters/logTimestampQueryParam'
summary: Get a specific log of an application
description: |
Get a specific log of an application.
User must have the APPLICATION_LOG[READ] permission.
operationId: getApplicationLogByApplicationIdAndLogId
responses:
200:
description: A log
content:
application/json:
schema:
$ref: '#/components/schemas/Log'
403:
$ref: '#/components/responses/PermissionError'
404:
description: Application or Log not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}/_renew_secret:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
post:
tags:
- Application
summary: Renew the client secret for an OAuth2 application
description: |
Renew the client secret for an OAuth2 application.
User must have the APPLICATION_DEFINITION[UPDATE] permission.
operationId: renewApplicationSecret
responses:
200:
description: Updated application with a new secret.
content:
application/json:
schema:
$ref: '#/components/schemas/Application'
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/applications/{applicationId}/subscribers:
parameters:
- $ref: '#/components/parameters/applicationIdParam'
get:
tags:
- Application
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
- $ref: '#/components/parameters/subscriptionStatusesQueryParam'
summary: List APIs that subscribed with an application
description: |
Lists API that current user is allowed to access. May be filtered by status. Ordered by nimber of hits.
This application has to be accessible by the current user, otherwise a 404 will be returned.
operationId: getSubscriberApisByApplicationId
security: []
responses:
200:
description: List accessible APIs for current user
content:
application/json:
schema:
$ref: '#/components/schemas/ApisResponse'
404:
$ref: '#/components/responses/ApplicationNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/groups:
get:
tags:
- Group
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
summary: List groups
description: |
List all groups
User must have the MANAGEMENT_GROUP[READ] permission.
operationId: getGroups
responses:
200:
description: List of groups
content:
application/json:
schema:
$ref: '#/components/schemas/GroupsResponse'
500:
$ref: '#/components/responses/InternalServerError'
/groups/{groupId}/members:
parameters:
- $ref: '#/components/parameters/groupIdParam'
get:
tags:
- Group
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
summary: List group members
description: |
List group members that have a Application role.
User must have the MANAGEMENT_GROUP[READ] permission.
operationId: getMembersByGroupId
responses:
200:
description: List of members
content:
application/json:
schema:
$ref: '#/components/schemas/MembersResponse'
403:
$ref: '#/components/responses/PermissionError'
404:
$ref: '#/components/responses/GroupNotFoundError'
500:
$ref: '#/components/responses/InternalServerError'
/media/{mediaHash}:
parameters:
- $ref: '#/components/parameters/mediaHashParam'
get:
tags:
- Portal
summary: Get the media of the portal.
operationId: getPortalMedia
description: |
Get portal media.
security: []
responses:
200:
$ref: '#/components/responses/MediaSuccess'
500:
$ref: '#/components/responses/InternalServerError'
/pages:
get:
tags:
- Portal
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
- $ref: '#/components/parameters/homePageQueryParam'
- $ref: '#/components/parameters/parentPageQueryParam'
summary: List portal pages
description: |
List all portal documentation pages
operationId: getPages
security: []
responses:
200:
$ref: '#/components/responses/PagesSuccess'
500:
$ref: '#/components/responses/InternalServerError'
/pages/{pageId}:
parameters:
- $ref: '#/components/parameters/pageIdParam'
get:
tags:
- Portal
parameters:
- $ref: '#/components/parameters/pageIncludeParam'
summary: Get a portal page
description: |
Get a specific portal documentation page.
operationId: getPageByPageId
security: []
responses:
200:
$ref: '#/components/responses/PageSuccess'
404:
description: Page not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/pages/{pageId}/content:
parameters:
- $ref: '#/components/parameters/pageIdParam'
get:
tags:
- Portal
summary: Get the content of a portal page.
description: |
Get the contentn of a specific portal documentation page.
operationId: getPageContentByPageId
security: []
responses:
200:
description: The content of the portal documentation page.
content:
text/plain:
schema:
type: string
404:
description: Page not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/applications/hooks:
get:
tags:
- Application
summary: Get the application's hooks list.
operationId: getHooks
description: |
Get application's hooks that can be used in the portal.
security: []
responses:
200:
description: List of hooks
content:
application/json:
schema:
description: List of hooks
type: array
items:
$ref: '#/components/schemas/Hook'
500:
$ref: '#/components/responses/InternalServerError'
/subscriptions:
get:
tags:
- Subscription
parameters:
- $ref: '#/components/parameters/apiIdQueryParam'
- $ref: '#/components/parameters/applicationIdQueryParam'
- $ref: '#/components/parameters/subscriptionStatusesQueryParam'
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
description: |
List all ACCEPTED, PAUSED & PENDING subscriptions, filtered by api and/or by application. At least an api or an application must be provided.
User must have the APPLICATION_SUBSCRIPTION[READ] permission to list subscription with application query param.\
User must have the API_SUBSCRIPTION[READ] permission to list subscription with api query param.
operationId: getSubscriptions
responses:
200:
description: List of Subscriptions
content:
application/json:
schema:
$ref: '#/components/schemas/SubscriptionsResponse'
400:
description: At least an api or an application must be provided.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
403:
$ref: '#/components/responses/PermissionError'
500:
$ref: '#/components/responses/InternalServerError'
post:
tags:
- Subscription
requestBody:
description: Use to create a subscription.
content:
application/json:
schema:
$ref: '#/components/schemas/SubscriptionInput'
summary: Create a subscription.
description: |
Create a new subscription.
User must have APPLICATION_SUBSCRIPTION[CREATE] permission.
operationId: createSubscription
responses:
200:
description: Created subscription.
content:
application/json:
schema:
$ref: '#/components/schemas/Subscription'
400:
description: Input must not be null.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
403:
$ref: '#/components/responses/PermissionError'
500:
$ref: '#/components/responses/InternalServerError'
/subscriptions/{subscriptionId}:
parameters:
- $ref: '#/components/parameters/subscriptionIdParam'
get:
tags:
- Subscription
parameters:
- $ref: '#/components/parameters/subscriptionIncludeQueryParam'
summary: Get a subscription.
description: |
Get a subscription.
User must have API_SUBSCRIPTION[CREATE] or APPLICATION_SUBSCRIPTION[CREATE] permission.
operationId: getSubscriptionById
responses:
200:
description: One subscription.
content:
application/json:
schema:
$ref: '#/components/schemas/Subscription'
403:
$ref: '#/components/responses/PermissionError'
404:
description: Subscription not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/subscriptions/{subscriptionId}/_close:
parameters:
- $ref: '#/components/parameters/subscriptionIdParam'
post:
tags:
- Subscription
summary: Close a subscription
description: |
Close a subscription.
User must have APPLICATION_SUBSCRIPTION[DELETE] permission.
operationId: closeSubscription
responses:
204:
description: No-Content
403:
$ref: '#/components/responses/PermissionError'
404:
description: Subscription not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/subscriptions/{subscriptionId}/keys/_renew:
parameters:
- $ref: '#/components/parameters/subscriptionIdParam'
post:
tags:
- Subscription
requestBody:
description: Use to renew keys of a subscription.
content:
application/json:
schema:
type: array
items:
type: string
summary: Renew a key subscription.
description: |
Renew a key subscription.
User must have API_SUBSCRIPTION[UPDATE] or APPLICATION_SUBSCRIPTION[UPDATE] permission.
operationId: renewKeySubscription
responses:
201:
description: Renewed Key.
content:
application/json:
schema:
$ref: '#/components/schemas/Key'
403:
$ref: '#/components/responses/PermissionError'
404:
description: Subscription not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/subscriptions/{subscriptionId}/keys/{keyId}/_revoke:
parameters:
- $ref: '#/components/parameters/subscriptionIdParam'
- name: keyId
in: path
required: true
schema:
type: string
post:
tags:
- Subscription
summary: Revoke a key subscription.
description: |
Revoke a key subscription.
User must have API_SUBSCRIPTION[UPDATE] or APPLICATION_SUBSCRIPTION[UPDATE] permission.
operationId: revokeKeySubscription
responses:
204:
description: No-Content
403:
$ref: '#/components/responses/PermissionError'
404:
description: Subscription or Key not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/users/registration:
post:
tags:
- Users
summary: Register a new user.
description: |
Register a new user for the portal. As a result, an email is sent with an activation link.
User registration must be enabled.\
A SMTP server must have been configured.
operationId: registerNewUser
requestBody:
description: Used to register a new User.
content:
application/json:
schema:
$ref: '#/components/schemas/RegisterUserInput'
responses:
200:
description: User successfully registered
content:
application/json:
schema:
$ref: '#/components/schemas/User'
500:
$ref: '#/components/responses/InternalServerError'
/users/registration/_finalize:
post:
tags:
- Users
summary: Finalize user registration.
description: |
Create a new user for the portal.
User registration must be enabled.
operationId: finalizeUserRegistration
requestBody:
description: Used to finalize a user registration.
content:
application/json:
schema:
$ref: '#/components/schemas/FinalizeRegistrationInput'
responses:
200:
description: User successfully created.
content:
application/json:
schema:
$ref: '#/components/schemas/User'
500:
$ref: '#/components/responses/InternalServerError'
/users/_reset_password:
post:
tags:
- Users
summary: Reset a user's password
description: |
Send an email with a link so the user with this email can provide a new password.
The user must be internally managed and active.
operationId: resetUserPassword
requestBody:
description: Use to reset a user's password.
content:
application/json:
schema:
$ref: '#/components/schemas/ResetUserPasswordInput'
responses:
204:
description: The user whose password has been reset.
400:
description: Input must not be null or no active and internally managed user has been found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/users/_change_password:
post:
tags:
- Users
summary: Change a user's password after a reset requests
description: |
Perform the password update for a user
operationId: changeUserPassword
requestBody:
description: Use to change a user's password.
content:
application/json:
schema:
$ref: '#/components/schemas/ChangeUserPasswordInput'
responses:
200:
description: The user whose password has been change.
content:
application/json:
schema:
$ref: '#/components/schemas/User'
400:
description: Input must not be null or no active and internally managed user has been found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/users/_search:
post:
tags:
- Users
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
- $ref: '#/components/parameters/usersQueryParam'
summary: List platform users.
description: |
List platform users from identity providers.
User must have the MANAGEMENT_USERS[READ] permission.
operationId: getUsers
responses:
200:
description: List of platform users
content:
application/json:
schema:
$ref: '#/components/schemas/UsersResponse'
403:
$ref: '#/components/responses/PermissionError'
500:
$ref: '#/components/responses/InternalServerError'
/users/{userId}/avatar:
parameters:
- $ref: '#/components/parameters/userIdParam'
get:
tags:
- Users
summary: Retrieve a user's avatar
description: |
Retrieve a user's avatar.
operationId: getUserAvatar
responses:
200:
$ref: '#/components/responses/PictureSuccess'
500:
$ref: '#/components/responses/InternalServerError'
/user:
get:
tags:
- User
summary: Get the authenticated user
description: |
Get information about the authenticated user.
operationId: getCurrentUser
responses:
200:
description: The current user
content:
application/json:
schema:
$ref: '#/components/schemas/User'
500:
$ref: '#/components/responses/InternalServerError'
put:
tags:
- User
requestBody:
description: Use to update a user.
content:
application/json:
schema:
$ref: '#/components/schemas/UserInput'
summary: Modify current user information.
description: |
Modify current user information.
Only the current user can modify his/her information.
operationId: updateCurrentUser
responses:
200:
description: Updated user
content:
application/json:
schema:
$ref: '#/components/schemas/User'
400:
description: Input must not be null.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
403:
description: Not allowed to modify another user.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/user/notifications:
get:
tags:
- User
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
summary: Retrieve user's notifications
description: |
Retrieve current user's notifications.
operationId: getCurrentUserNotifications
responses:
200:
description: List of notifications
content:
application/json:
schema:
$ref: '#/components/schemas/PortalNotificationsResponse'
500:
$ref: '#/components/responses/InternalServerError'
delete:
tags:
- User
summary: Delete all notifications of the current user
description: |
Delete all notifications of the current user.
operationId: deleteAllCurrentUserNotifications
responses:
204:
description: No-Content
500:
$ref: '#/components/responses/InternalServerError'
/user/notifications/{notificationId}:
parameters:
- $ref: '#/components/parameters/notificationIdParam'
delete:
tags:
- User
summary: Delete a specific notification of the current user
description: |
Delete a specific notification of the current user.
operationId: deleteCurrentUserNotificationByNotificationId
responses:
204:
description: No-Content
404:
description: Notification not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/user/avatar:
get:
tags:
- User
summary: Retrieve user's avatar
description: |
Retrieve user's avatar.
operationId: getCurrentUserAvatar
responses:
200:
$ref: '#/components/responses/PictureSuccess'
500:
$ref: '#/components/responses/InternalServerError'
/permissions:
get:
tags:
- Permissions
parameters:
- $ref: '#/components/parameters/apiIdQueryParam'
- $ref: '#/components/parameters/applicationIdQueryParam'
summary: Retrieve user's permissions
description: |
Retrieve user's permissions.
operationId: getCurrentUserPermissions
responses:
200:
description: List of user's permissions
content:
application/json:
schema:
$ref: '#/components/schemas/PermissionsResponse'
403:
$ref: '#/components/responses/PermissionError'
500:
$ref: '#/components/responses/InternalServerError'
/tickets:
post:
tags:
- Portal
requestBody:
description: a new ticket to create
content:
application/json:
schema:
$ref: '#/components/schemas/TicketInput'
summary: Create a ticket.
description: |
Create a ticket. This ticket can aim :
* a specific application
* a specific API
* the gravitee portal
User must be authenticated to use this service.
operationId: createTicket
responses:
201:
description: Created
500:
$ref: '#/components/responses/InternalServerError'
get:
tags:
- Portal
parameters:
- $ref: '#/components/parameters/apiIdQueryParam'
- $ref: '#/components/parameters/applicationIdQueryParam'
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
- $ref: '#/components/parameters/orderQueryParam'
description: |
List all tickets written by current user
operationId: getTickets
responses:
200:
description: List of Tickets
content:
application/json:
schema:
$ref: '#/components/schemas/TicketsResponse'
500:
$ref: '#/components/responses/InternalServerError'
/categories:
get:
tags:
- Portal
parameters:
- $ref: '#/components/parameters/pageNumberParam'
- $ref: '#/components/parameters/pageSizeParam'
summary: Get a Category list
description: |
Get all categories of the platform.
operationId: getCategories
security: []
responses:
200:
description: List of Categories
content:
application/json:
schema:
$ref: '#/components/schemas/CategoriesResponse'
500:
$ref: '#/components/responses/InternalServerError'
/categories/{categoryId}:
parameters:
- $ref: '#/components/parameters/categoryIdParam'
get:
tags:
- Portal
summary: Get a Category
description: |
Get a specific category.
operationId: getCategoryByCategoryId
security: []
responses:
200:
description: One Category
content:
application/json:
schema:
$ref: '#/components/schemas/Category'
404:
description: Category not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/categories/{categoryId}/picture:
parameters:
- $ref: '#/components/parameters/categoryIdParam'
get:
tags:
- Portal
summary: Get picture of a Category
description: |
Get the picture of a category.
operationId: getPictureByCategoryId
security: []
responses:
200:
$ref: '#/components/responses/PictureSuccess'
404:
description: Category not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/categories/{categoryId}/background:
parameters:
- $ref: '#/components/parameters/categoryIdParam'
get:
tags:
- Portal
summary: Get background of a Category
description: |
Get the background of a category.
operationId: getBackgroundByCategoryId
security: []
responses:
200:
$ref: '#/components/responses/PictureSuccess'
404:
description: Category not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/theme:
get:
tags:
- Portal
summary: Get portal theme.
operationId: getPortalTheme
description: |
Get portal theme.
security: []
responses:
200:
description: Portal configuration
content:
application/json:
schema:
$ref: '#/components/schemas/ThemeResponse'
404:
description: Theme not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/configuration:
get:
tags:
- Portal
summary: Get portal configuration.
operationId: getPortalConfiguration
description: |
Get all the portal configuration from the platform settings.
security: []
responses:
200:
description: Portal configuration
content:
application/json:
schema:
$ref: '#/components/schemas/ConfigurationResponse'
500:
$ref: '#/components/responses/InternalServerError'
/configuration/identities:
get:
tags:
- Portal
summary: Get the identity provider list.
operationId: getPortalIdentityProviders
description: |
Get all the identity providers that can used in the portal.
security: []
responses:
200:
description: List of identity providers
content:
application/json:
schema:
$ref: '#/components/schemas/ConfigurationIdentitiesResponse'
500:
$ref: '#/components/responses/InternalServerError'
/configuration/identities/{identityProviderId}:
parameters:
- $ref: '#/components/parameters/identityProviderIdParam'
get:
tags:
- Portal
summary: Get an identity provider.
operationId: getPortalIdentityProvider
description: |
Get a specific identity provider by its id.
security: []
responses:
200:
description: An identity provider
content:
application/json:
schema:
$ref: '#/components/schemas/IdentityProvider'
500:
$ref: '#/components/responses/InternalServerError'
/configuration/links:
get:
tags:
- Portal
summary: Get the portal links for header and footer.
operationId: getPortalLinks
description: |
Get all the links (internal and external) to be displayed in the header and in the footer of the portal.
security: []
responses:
200:
description: List of Links
content:
application/json:
schema:
$ref: '#/components/schemas/LinksResponse'
500:
$ref: '#/components/responses/InternalServerError'
/configuration/applications/types:
get:
tags:
- Portal
summary: Get the application types list.
operationId: getEnabledApplicationTypes
description: |
Get enabled application types.
security: []
responses:
200:
description: List of enabled application types
content:
application/json:
schema:
$ref: '#/components/schemas/ConfigurationApplicationTypesResponse'
500:
$ref: '#/components/responses/InternalServerError'
/configuration/applications/roles:
get:
tags:
- Portal
summary: Get the application roles list.
operationId: getApplicationRoles
description: |
Get application roles.
security: []
responses:
200:
description: List of application roles
content:
application/json:
schema:
$ref: '#/components/schemas/ConfigurationApplicationRolesResponse'
500:
$ref: '#/components/responses/InternalServerError'
/configuration/users/custom-fields:
get:
tags:
- Users
summary: List all the Custom User Fields.
description: |
Provide the list of custom user fields asked to the new users.
operationId: listCustomUserFields
responses:
200:
description: The list of custom user fields
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/CustomUserFields'
500:
$ref: '#/components/responses/InternalServerError'
/info:
get:
tags:
- Portal
summary: Get portal information.
operationId: getPortalInformation
description: |
Get some information about the portal (version, ...).
security: []
responses:
200:
description: API information
content:
application/json:
schema:
$ref: '#/components/schemas/Info'
500:
$ref: '#/components/responses/InternalServerError'
/dashboards:
get:
tags:
- Portal
summary: Get a Dashboards list
description: |
Get all dashboards of the platform.
operationId: getDashboards
security: []
responses:
200:
description: List of Dashboards
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Dashboard'
500:
$ref: '#/components/responses/InternalServerError'
/auth/login:
post:
tags:
- Authentication
operationId: login
description: |
Used to get a Gravitee token. This token is mandatory for all the secured resources of the Portal API.
parameters:
- name: Authorization
in: header
required: true
description: Basic authentication.
schema:
type: string
responses:
200:
$ref: '#/components/responses/AuthSuccess'
401:
$ref: '#/components/responses/UnauthorizedError'
500:
$ref: '#/components/responses/InternalServerError'
/auth/logout:
post:
tags:
- Authentication
operationId: logout
description: |
User need to be authenticated to logout.
responses:
200:
description: An empty cookie
headers:
set-cookie:
description: Empty cookie
schema:
type: string
example: Auth-Graviteeio-APIM=;Path=/;Expires=Thu, 01-Jan-1970 00:00:00 GMT;Max-Age=0;HttpOnly
500:
$ref: '#/components/responses/InternalServerError'
/auth/oauth2/{identity}:
post:
tags:
- Authentication
security: []
parameters:
- $ref: '#/components/parameters/authIdentityParam'
operationId: exchangeAuthorizationCode
description: |
Used to get a gravitee token from an Authorization code (PayloadInput.code). Portal API authenticates the user with the specified IDP ({identity} path param).
requestBody:
description: OAuth2 payload for authentication.
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PayloadInput'
responses:
200:
$ref: '#/components/responses/AuthSuccess'
401:
$ref: '#/components/responses/UnauthorizedError'
404:
description: Identity not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
/auth/oauth2/{identity}/_exchange:
post:
tags:
- Authentication
security: []
parameters:
- $ref: '#/components/parameters/authIdentityParam'
- name: token
in: query
required: true
schema:
type: string
operationId: tokenExchange
description: |
Used to get a gravitee token from a IdentityProvider token. Portal API authenticates the user with the specified IDP ({identity} path param).
responses:
200:
$ref: '#/components/responses/AuthSuccess'
401:
$ref: '#/components/responses/UnauthorizedError'
404:
description: Identity not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
500:
$ref: '#/components/responses/InternalServerError'
components:
requestBodies:
pictureUpdateInputBody:
description: Use to update a picture.
content:
'image/*':
schema:
type: string
format: binary
parameters:
##############
# Path Param #
##############
apiIdParam:
name: apiId
in: path
required: true
description: Id of an API.
schema:
type: string
applicationIdParam:
name: applicationId
in: path
required: true
description: Id of an application.
schema:
type: string
groupIdParam:
name: groupId
in: path
required: true
description: Id of a group.
schema:
type: string
logIdParam:
name: logId
in: path
required: true
description: Id of a log.
schema:
type: string
memberIdParam:
name: memberId
in: path
required: true
description: Id of a member.
schema:
type: string
metadataIdParam:
name: metadataId
in: path
required: true
description: Id of an application metadata.
schema:
type: string
notificationIdParam:
name: notificationId
in: path
required: true
description: Id of a notification.
schema:
type: string
pageIdParam:
name: pageId
in: path
required: true
description: Id of a documentation page.
schema:
type: string
subscriptionIdParam:
name: subscriptionId
in: path
required: true
description: Id of a subscription.
schema:
type: string
categoryIdParam:
name: categoryId
in: path
required: true
description: Id of a Category.
schema:
type: string
authIdentityParam:
name: identity
in: path
required: true
schema:
type: string
identityProviderIdParam:
name: identityProviderId
in: path
required: true
description: Id of an identity provider.
schema:
type: string
ratingIdParam:
name: ratingId
in: path
required: true
description: Id of an rating
schema:
type: string
answerIdParam:
name: answerId
in: path
required: true
description: Id of an rating answer
schema:
type: string
userIdParam:
name: userId
in: path
required: true
description: Id of a user
schema:
type: string
mediaHashParam:
name: mediaHash
in: path
required: true
description: Hash of media
schema:
type: string
###############
# Query Param #
###############
#Common
apiIdQueryParam:
name: apiId
in: query
required: false
description: Id of an api.
schema:
type: string
applicationIdQueryParam:
name: applicationId
in: query
required: false
description: Id of an application.
schema:
type: string
mineQueryParam:
name: mine
in: query
required: false
description: If true, returns only connected user data.
schema:
type: boolean
#Pagination
pageNumberParam:
name: page
in: query
required: false
description: The page number for pagination.
schema:
type: integer
default: 1
pageSizeParam:
name: size
in: query
required: false
description: |
The number of items per page for pagination.
If the size is 0, the response contains only metadata and returns the values as for a non-paged resource.
If the size is -1, the response contains all datas.
schema:
type: integer
default: 10
#Apis filtering
apiContextPathQueryParam:
name: context-path
in: query
required: false
description: The context-path of an API.
schema:
type: string
apiLabelQueryParam:
name: label
in: query
required: false
description: One of the labels of an API.
schema:
type: string
apiVersionQueryParam:
name: version
in: query
required: false
description: The version of an API.
schema:
type: string
apiNameQueryParam:
name: name
in: query
required: false
description: The name of an API.
schema:
type: string
apiCategoryQueryParam:
name: category
in: query
required: false
description: One of the category linked with an API.
schema:
type: string
apiFilterQueryParam:
name: filter
in: query
required: false
description: |
Name of a FILTER. A filter is used to pre-select some APIs. It can be combined with others query params.
- FEATURED : top APIs. Sorted by specific order.
- MINE : APIs subscribed by the current user. Sorted by alphabetical order.
- STARRED: Rated APIs. Sorted by Ratings DESC, nb of ratings DESC, alphabetic order.
- TRENDINGS: Subscribed APIs. Sorted by number of subscriptions DESC, alphabetic order.
schema:
$ref: '#/components/schemas/FilterApiQuery'
apiFilterExcludedQueryParam:
name: -filter
in: query
required: false
description: |
Name of a FILTER to exclude. Excluded filter has priority over filter. A filter is used to pre-select some APIs. It can be combined with others query params.
- FEATURED : not in top APIs. Sorted by specific order.
- MINE : APIs not subscribed by the current user. Sorted by alphabetical order.
- STARRED: not rated APIs. Sorted by Ratings DESC, nb of ratings DESC, alphabetic order.
- TRENDINGS: not subscribed APIs. Sorted by number of subscriptions DESC, alphabetic order.
schema:
$ref: '#/components/schemas/FilterApiQuery'
apiPromotedQueryParam:
name: promoted
in: query
required: false
description: |
Allow to filter on promoted APIs or not.
- If absent, no effect on the result
- If *false*, removes the promoted API of the list
- If *true*, returns only the promoted API of the list
A promoted API is either the highlighted API of a category (if it exists) or the first API in the list.
schema:
type: boolean
apiQueryParam:
name: q
in: query
required: true
description: query string to be used in the search engine
schema:
type: string
apiIncludeParam:
name: include
in: query
required: false
description: Comma-separated list of related objects to include in the response.
schema:
type: array
items:
type: string
enum:
- pages
- plans
ratingOrderQueryParam:
name: order
in: query
required: false
description: |
A list of "field" elements.
By default, sort is ASC. If *field* starts with '-', the order sort is DESC.\
Currently, only **value**, **date** and **answers** are supported.
example: "order=value"
schema:
type: string
#Applications filtering
forSubscriptionParam:
name: forSubscription
in: query
required: false
description: If true, only return applications with APPLICATION_SUBSCRIPTION[CREATE] permission.
schema:
type: boolean
applicationOrderQueryParam:
name: order
in: query
required: false
description: |
A list of "field" elements or *nbSubscriptions*.
By default, sort is ASC. If *field* starts with '-', the order sort is DESC.\
Currently, only **name** and **nbSubscriptions** are supported.
example: "order=-nbSubscriptions"
schema:
type: string
#Pages filtering
homePageQueryParam:
name: homepage
in: query
required: false
description: If true, only the documentation homepage of the portal is returned.
schema:
type: boolean
parentPageQueryParam:
name: parent
in: query
required: false
description: The name of the parent documentation page. If not null, only this page and its children are returned.
schema:
type: string
pageIncludeParam:
name: include
in: query
required: false
description: Comma-separated list of related objects to include in the response.
schema:
type: array
items:
type: string
enum:
- content
#Analytics & logs filtering
fromQueryParam:
name: from
in: query
required: false
description: Lower bound of timestamp for filtering.
schema:
type: integer
format: int64
toQueryParam:
name: to
in: query
required: false
description: Upper bound of timestamp for filtering. Must be greater than *from* query param.
schema:
type: integer
format: int64
queryQueryParam:
name: query
in: query
required: false
description: Query used for filtering.
schema:
type: string
fieldQueryParam:
name: field
in: query
required: false
description: Field used for filtering. **required** when type is **GROUP_BY**.
schema:
type: string
intervalQueryParam:
name: interval
in: query
required: false
description: Interval for time search. Must be >= 1 000 and <= 1 000 000 000.
schema:
type: integer
minimum: 1000
maximum: 1000000000
analyticTypeQueryParam:
name: type
in: query
required: false
description: |
Type of analytics that is expected :
- GROUP_BY :
Used to group total hits by a specific field (Application, Status, Path, ...).\
Query params :
- from
- to
- interval
- query
- field
- order
- ranges
- DATE_HISTO :
Used to retrieve total hits per range of time, on a specific time interval.\
Query params :
- from
- to
- interval
- query
- aggs
- COUNT :
Used to retrieve total hits, on a specific time interval.\
Query params :
- from
- to
- interval
- query
- STATS :
Used to retrieve stats data, on a specific time interval.\
Query params :
- from
- to
- query
schema:
type: string
enum:
- GROUP_BY
- DATE_HISTO
- COUNT
- STATS
analyticRangeQueryParam:
name: ranges
in: query
required: false
description: |
Used with GROUP_BY type only.
A semicolon separated list of "from:to" elements. **/!\\ Different from *from* and *to* query params**
example: "ranges=100:199;200:299;300;599"
schema:
type: string
analyticAggregationQueryParam:
name: aggs
in: query
required: false
description: |
Used with DATE_HISTO type only.
A semicolon separated list of "type:field" elements. **/!\\ Different from *type* and *field* query params**\
Type can be **FIELD**, **AVG**, **MIN**, **MAX**
example: "aggs=avg:response-time;avg:api-response-time"
schema:
type: string
analyticOrderQueryParam:
name: order
in: query
required: false
description: |
Used with GROUP_BY type only.
A colon separated list of "type:field" elements. **/!\\ Different from *type* and *field* query params**\
By default, sort is ASC. If *type* starts with '-', the order sort is DESC.\
Currently, only **AVG** is supported.
example: "order=-avg:response-time"
schema:
type: string
orderQueryParam:
name: order
in: query
required: false
description: |
Used to sort result.
By default, sort is ASC. If *type* starts with '-', the order sort is DESC
example: "order=-created_at"
schema:
type: string
logOrderQueryParam:
name: order
in: query
required: false
description: Order used to sort the result list.
schema:
type: string
enum:
- ASC
- DESC
default: ASC
logTimestampQueryParam:
name: timestamp
in: query
required: false
description: Used to select the right index
schema:
type: integer
format: int64
#Subscriptions filtering
subscriptionStatusesQueryParam:
name: statuses
in: query
required: false
description: status of subscription.
schema:
type: array
items:
type: string
enum:
- ACCEPTED
- CLOSED
- PAUSED
- PENDING
- REJECTED
subscriptionIncludeQueryParam:
name: include
in: query
required: false
description: Comma-separated list of related objects to include in the response.
schema:
type: array
items:
type: string
enum:
- keys
#Users filtering
usersQueryParam:
name: q
in: query
required: false
description: query string to be used in the search engine
schema:
type: string
schemas:
#####################
# Responses Objects #
#####################
ErrorResponse:
properties:
errors:
description: List of errors
type: array
items:
$ref: '#/components/schemas/Error'
ApisResponse:
properties:
data:
description: List of API.
type: array
items:
$ref: '#/components/schemas/Api'
metadata:
$ref: '#/components/schemas/MetadataMap'
links:
$ref: '#/components/schemas/Links'
ApplicationsResponse:
properties:
data:
description: List of applications.
type: array
items:
$ref: '#/components/schemas/Application'
metadata:
$ref: '#/components/schemas/MetadataMap'
links:
$ref: '#/components/schemas/Links'
GroupsResponse:
properties:
data:
description: List of groups.
type: array
items:
$ref: '#/components/schemas/Group'
metadata:
$ref: '#/components/schemas/MetadataMap'
links:
$ref: '#/components/schemas/Links'
PagesResponse:
properties:
data:
description: List of pages.
type: array
items:
$ref: '#/components/schemas/Page'
metadata:
$ref: '#/components/schemas/MetadataMap'
links:
$ref: '#/components/schemas/Links'
RatingsResponse:
properties:
data:
description: List of ratings.
type: array
items:
$ref: '#/components/schemas/Rating'
metadata:
$ref: '#/components/schemas/MetadataMap'
links:
$ref: '#/components/schemas/Links'
PlansResponse:
properties:
data:
description: List of data.
type: array
items:
$ref: '#/components/schemas/Plan'
metadata:
$ref: '#/components/schemas/MetadataMap'
links:
$ref: '#/components/schemas/Links'
MembersResponse:
properties:
data:
description: List of members.
type: array
items:
$ref: '#/components/schemas/Member'
metadata:
$ref: '#/components/schemas/MetadataMap'
links:
$ref: '#/components/schemas/Links'
ReferenceMetadataResponse:
properties:
data:
description: List of application metadata.
type: array
items:
$ref: '#/components/schemas/ReferenceMetadata'
metadata:
$ref: '#/components/schemas/MetadataMap'
links:
$ref: '#/components/schemas/Links'
UsersResponse:
properties:
data:
description: List of users.
type: array
items:
$ref: '#/components/schemas/User'
metadata:
$ref: '#/components/schemas/MetadataMap'
links:
$ref: '#/components/schemas/Links'
CategoriesResponse:
properties:
data:
description: List of categories.
type: array
items:
$ref: '#/components/schemas/Category'
metadata:
$ref: '#/components/schemas/MetadataMap'
links:
$ref: '#/components/schemas/Links'
PortalNotificationsResponse:
properties:
data:
description: List of portal notifications.
type: array
items:
$ref: '#/components/schemas/PortalNotification'
metadata:
$ref: '#/components/schemas/MetadataMap'
links:
$ref: '#/components/schemas/Links'
LogsResponse:
properties:
data:
description: List of logs.
type: array
items:
$ref: '#/components/schemas/Log'
metadata:
$ref: '#/components/schemas/MetadataMap'
links:
$ref: '#/components/schemas/Links'
SubscriptionsResponse:
properties:
data:
description: List of subscriptions.
type: array
items:
$ref: '#/components/schemas/Subscription'
metadata:
$ref: '#/components/schemas/MetadataMap'
links:
$ref: '#/components/schemas/Links'
TicketsResponse:
properties:
data:
description: List of tickets.
type: array
items:
$ref: '#/components/schemas/Ticket'
metadata:
$ref: '#/components/schemas/MetadataMap'
links:
$ref: '#/components/schemas/Links'
ConfigurationIdentitiesResponse:
properties:
data:
description: List of identity providers
type: array
items:
$ref: '#/components/schemas/IdentityProvider'
metadata:
$ref: '#/components/schemas/MetadataMap'
links:
$ref: '#/components/schemas/Links'
ConfigurationApplicationTypesResponse:
properties:
data:
description: List of application types
type: array
items:
$ref: '#/components/schemas/ApplicationType'
ConfigurationApplicationRolesResponse:
properties:
data:
description: List of application roles
type: array
items:
$ref: '#/components/schemas/ApplicationRole'
LinksResponse:
properties:
slots:
description: |
Map of CategorizedLinks. Keys of the map can be:
* aside
* header
* topfooter
* footer
additionalProperties:
type: array
items:
$ref: '#/components/schemas/CategorizedLinks'
PermissionsResponse:
description: Map of Permissions.
properties:
METADATA:
type: array
items:
type: string
DOCUMENTATION:
type: array
items:
type: string
DEFINITION:
type: array
items:
type: string
PLAN:
type: array
items:
type: string
SUBSCRIPTION:
type: array
items:
type: string
MEMBER:
type: array
items:
type: string
ANALYTICS:
type: array
items:
type: string
EVENT:
type: array
items:
type: string
HEALTH:
type: array
items:
type: string
LOG:
type: array
items:
type: string
GATEWAY_DEFINITION:
type: array
items:
type: string
AUDIT:
type: array
items:
type: string
RATING:
type: array
items:
type: string
RATING_ANSWER:
type: array
items:
type: string
NOTIFICATION:
type: array
items:
type: string
MESSAGE:
type: array
items:
type: string
ALERT:
type: array
items:
type: string
RESPONSE_TEMPLATES:
type: array
items:
type: string
REVIEWS:
type: array
items:
type: string
QUALITY_RULE:
type: array
items:
type: string
#####################
# Resources Objects #
#####################
Error:
properties:
status:
description: Status HTTP of the error
type: string
message:
description: Message of the error
type: string
code:
description: Technical code of the error
type: string
parameters:
description: Parameters
type: object
additionalProperties:
type: string
Api:
description: |
Describes an API.
required:
- id
- name
- version
- description
- owner
properties:
id:
description: Unique identifier of an API.
type: string
name:
description: Name of the API.
type: string
version:
description: Version of the API.
type: string
description:
description: Description of the API.
type: string
draft:
type: boolean
description: Whether or not the API is in draft.
public:
type: boolean
description: Whether or not the API is public.
running:
type: boolean
description: Whether or not the API is running.
entrypoints:
description: List of all the avaible endpoints to call the API.
type: array
items:
type: string
labels:
description: List of labels linked to this API.
type: array
items:
type: string
owner:
$ref: '#/components/schemas/User'
updated_at:
description: Last update date and time.
type: string
format: date-time
categories:
description: List of categories this API belongs to.
type: array
items:
type: string
rating_summary:
$ref: '#/components/schemas/RatingSummary'
_links:
$ref: '#/components/schemas/ApiLinks'
###################
# may be included #
###################
pages:
description: |
Only returned with */apis/{apiId}*.
Need *include* query param to contain 'pages'.
The documentation pages of this API. Same as */apis/{apiId}/pages*.
type: array
items:
$ref: '#/components/schemas/Page'
plans:
description: |
Only returned with */apis/{apiId}*.
Need *include* query param to contain 'plans'.
The plans of this API. Same as */apis/{apiId}/plans*.
type: array
items:
$ref: '#/components/schemas/Plan'
ApiInformation:
properties:
name:
type: string
description: Name of api information
value:
type: string
description: Value of api information
ApiMetrics:
properties:
subscribers:
type: number
description: Number of applications that have subscribed to this API.
hits:
type: number
description: Number of calls on this API, during last 7 days.
health:
type: number
description: Healthcheck ratio over the last 7 days. It's a decimal number between 0 and 1.
example: 0.9876
Group:
required:
- id
- name
properties:
id:
description: Unique identifier of a group.
type: string
name:
description: Name of the group.
type: string
Page:
required:
- id
- name
- type
- order
properties:
id:
description: Unique identifier of a page.
type: string
name:
description: Name of the page.
type: string
type:
description: Type of documentation.
type: string
enum:
- SWAGGER
- MARKDOWN
- FOLDER
- ROOT
- LINK
order:
description: Order of the documentation page in its folder.
type: integer
parent:
description: Parent page. MAY be null.
type: string
updated_at:
description: Last update date and time.
type: string
format: date-time
configuration:
$ref: '#/components/schemas/PageConfiguration'
media:
description: list of media hash, attached to this page
type: array
items:
$ref: '#/components/schemas/PageMedia'
metadata:
description: Array of metadata about the page. This array is filled when the page has been fetched from a distant source (GitHub, GitLab, etc...).
type: array
items:
$ref: '#/components/schemas/Metadata'
_links:
$ref: '#/components/schemas/PageLinks'
###################
# may be included #
###################
content:
description: |
Only returned with */apis/{apiId}/pages/{pageId}* and */pages/{pageId}*.
Need *include* query param to contain 'content'.
The content of the page.
type: string
contentRevisionId:
description:
The page revision used to fill the content.
$ref: '#/components/schemas/PageRevisionId'
PageMedia:
required:
- name
- link
- type
properties:
name:
description: the name of the media.
type: string
link:
description: link to download the media.
type: string
type:
description: type of the media.
type: string
Plan:
required:
- id
- name
- security
- type
- description
- validation
- order
- comment_required
properties:
id:
description: Unique identifier of a plan.
type: string
name:
description: Name of the plan.
type: string
security:
description: Security used with this plan.
type: string
enum:
- API_KEY
- KEY_LESS
- JWT
- OAUTH2
description:
description: Description of the plan.
type: string
characteristics:
description: List of additionnal terms to describe the plan.
type: array
items:
type: string
validation:
description: Type of validation for subscription requests.
type: string
enum:
- AUTO
- MANUAL
order:
description: Priority order
type: integer
comment_required:
description: True if a comment is required when a subscription is created.
type: boolean
comment_question:
description: Content of the message sent to a user creating a subscription.
type: string
general_conditions:
description: The page reference with general conditions of use for the API.
type: string
Rating:
required:
- id
- title
- value
- comment
properties:
id:
description: Unique identifier of a rating.
type: string
title:
description: Title of a rating.
type: string
value:
description: Value of the rating. Integer between 1 and 5.
type: integer
author:
$ref: '#/components/schemas/User'
date:
description: Date and time of the rating.
type: string
format: date-time
comment:
description: Comment left by the author to explain the rating.
type: string
answers:
description: Array of answers.
type: array
items:
$ref: '#/components/schemas/RatingAnswer'
Application:
properties:
id:
description: Unique identifier of an application.
type: string
name:
description: Name of the application.
type: string
description:
description: Description of the application.
type: string
applicationType:
description: Type of the application (Web, Mobile, ...).
type: string
hasClientId:
description: True if the application has client id.
type: boolean
owner:
$ref: '#/components/schemas/User'
created_at:
description: Creation date and time of the application.
type: string
format: date-time
updated_at:
description: Last update date and time of the application.
type: string
format: date-time
groups:
description: Array of groups associated to the application.
type: array
items:
$ref: '#/components/schemas/Group'
picture:
description: |
Picture of the application. This attribute is only used to update a picture.\
To get the application picture, use /application/{applicationId}/picture.
type: string
writeOnly: true
background:
description: |
Background of the application. This attribute is only used to update a picture.\
To get the application picture, use /application/{applicationId}/background.
type: string
writeOnly: true
settings:
$ref: '#/components/schemas/ApplicationSettings'
_links:
$ref: '#/components/schemas/ApplicationLinks'
PortalNotification:
properties:
id:
description: Unique identifier of a portal notification.
type: string
title:
description: Title of the portal notification.
type: string
message:
description: Content of the notification.
type: string
created_at:
description: Creation date and time of the notification.
type: string
format: date-time
Member:
properties:
id:
description: Unique identifier of a member (user).
type: string
user:
$ref: '#/components/schemas/User'
created_at:
description: Creation date and time of the member.
type: string
format: date-time
updated_at:
description: Last update date and time of the member.
type: string
format: date-time
role:
description: Role of the member. (OWNER, USER, ...).
type: string
ReferenceMetadata:
required:
- key
- name
properties:
key:
description: Unique identifier of a metadata.
type: string
name:
description: Name of the metadata.
type: string
application:
description: Id of the application to which the metadata refers.
type: string
format:
description: format of the metadata value.
$ref: '#/components/schemas/ReferenceMetadataFormatType'
value:
description: value of the metadata. Supports freemarker syntax.
type: string
defaultValue:
description: default value of the metadata.
type: string
DateHistoAnalytics:
properties:
timestamp:
$ref: '#/components/schemas/Timerange'
values:
description: List of data buckets.
type: array
items:
$ref: '#/components/schemas/Bucket'
GroupByAnalytics:
properties:
values:
description: Total hits by terms.
type: object
additionalProperties:
type: integer
format: int64
metadata:
$ref: '#/components/schemas/MetadataMap'
CountAnalytics:
properties:
name:
type: string
hits:
type: integer
format: int64
Log:
properties:
id:
description: Unique identifier of a log.
type: string
timestamp:
description: Instant of the log.
type: integer
format: int64
transactionId:
description: Request identifier.
type: string
path:
description: Path of the request.
type: string
method:
$ref: '#/components/schemas/HttpMethod'
status:
description: HTTP status code of the request.
type: integer
responseTime:
description: Request duration.
type: integer
format: int64
requestContentLength:
description: Request content length.
type: integer
format: int64
responseContentLength:
description: Response content length.
type: integer
format: int64
plan:
description: Plan used by the request.
type: string
api:
description: API called by the request.
type: string
request:
$ref: '#/components/schemas/Request'
response:
$ref: '#/components/schemas/Response'
metadata:
$ref: '#/components/schemas/MetadataMap'
host:
description: API Gateway host.
type: string
user:
description: User identifier.
type: string
securityType:
description: Security type of the request.
type: string
securityToken:
description: Token used by the request.
type: string
Subscription:
required:
- id
- api
- application
- plan
- status
properties:
id:
description: Unique identifier of a subscription.
type: string
api:
description: Subscribed API.
type: string
application:
description: Subscribing application.
type: string
plan:
description: Subscribed plan.
type: string
request:
description: Comment of the user when asking for a subscription.
type: string
reason:
description: Reason of the user when processing (accepting/rejecting) a subscription.
type: string
created_at:
description: Creation date and time of the subscription.
type: string
format: date-time
processed_at:
description: Date and time when the subscription request was processed.
type: string
format: date-time
start_at:
description: Start date and time of the subscription.
type: string
format: date-time
end_at:
description: Expiration date and time of the subscription.
type: string
format: date-time
paused_at:
description: Paused date and time of the subscription.
type: string
format: date-time
closed_at:
description: Closed date and time of the subscription.
type: string
format: date-time
subscribed_by:
description: The user who subscribed.
type: string
status:
description: Status of the subscription.
type: string
enum:
- PENDING
- ACCEPTED
- CLOSED
- REJECTED
- PAUSED
###################
# may be included #
###################
keys:
description: |
Only returned with */subscriptions/{subscriptionId}*.
Need *include* query param to contain 'keys'.
List of APIKeys of the subscription.
type: array
items:
$ref: '#/components/schemas/Key'
Ticket:
properties:
id:
description: Unique identifier of a ticket.
type: string
api:
description: Concerned API.
type: string
application:
description: Concerned application.
type: string
subject:
description: Subject of the ticket.
type: string
content:
description: Content of the ticket.
type: string
created_at:
description: Creation date and time of the ticket.
type: string
format: date-time
from_user:
description: User identifier of the ticket creator.
type: string
User:
properties:
id:
description: Unique identifier of a user.
type: string
reference:
description: Unique reference if user comes from external source. Use for search only.
type: string
first_name:
type: string
last_name:
type: string
display_name:
type: string
email:
type: string
editable_profile:
description: True if the user can edit the MyAccount information
type: boolean
default: false
permissions:
description: Map of Permissions.
type: object
properties:
APPLICATION:
type: array
items:
type: string
USER:
type: array
items:
type: string
customFields:
type: object
description: Values for CustomUserFields
additionalProperties: true
config:
$ref: '#/components/schemas/UserConfig'
_links:
$ref: '#/components/schemas/UserLinks'
UserConfig:
properties:
management_url:
description: The URL of the Gravitee management UI
type: string
Token:
properties:
token_type:
type: string
enum:
- BEARER
token:
type: string
state:
type: string
access_token:
type: string
id_token:
type: string
Category:
properties:
id:
description: Unique identifier of a category.
type: string
name:
type: string
description:
type: string
order:
type: integer
page:
description: id of the page used for category documentation.
type: string
total_apis:
type: integer
format: int64
_links:
$ref: '#/components/schemas/CategoryLinks'
Dashboard:
properties:
id:
description: Unique identifier of a dashboard.
type: string
name:
type: string
definition:
type: string
Info:
properties:
name:
description: Name of the API.
type: string
version:
description: Version of the API.
type: string
IdentityProvider:
properties:
id:
description: Unique identifier of an identity provider.
type: string
name:
description: Name of the identity provider.
type: string
description:
description: Description of the identity provider.
type: string
client_id:
description: ClientId of the identity provider.
type: string
email_required:
description: true, if an email is required for this identity provider.
type: boolean
type:
$ref: '#/components/schemas/IdentityProviderType'
authorizationEndpoint:
description: Authorization endpoint of the provider.
type: string
tokenIntrospectionEndpoint:
description: Token introspection endpoint of the provider. (Gravitee.io AM and OpenId Connect only)
type: string
userLogoutEndpoint:
description: User logout endpoint of the provider. (Gravitee.io AM and OpenId Connect only)
type: string
color:
description: color to display for this provider. (Gravitee.io AM and OpenId Connect only)
type: string
display:
description: Display style of the provider. (Google only)
type: string
requiredUrlParams:
description: Required URL params of the provider. (Google only)
type: array
items:
type: string
optionalUrlParams:
description: Optionnal URL params of the provider. (Github and Google only)
type: array
items:
type: string
scopes:
description: Scope list of the provider.
type: array
items:
type: string
ApplicationRole:
properties:
id:
description: Unique identifier of an application role.
type: string
name:
description: Name of an application role.
type: string
default:
description: is default role ?
type: boolean
system:
description: is system role ?
type: boolean
ApplicationType:
properties:
id:
description: Unique identifier of an application type.
type: string
name:
description: Name of an application type.
type: string
description:
description: description of an application type.
type: string
requires_redirect_uris:
description: if true, application type require redirect uri
type: boolean
allowed_grant_types:
description: List of allowed grant types
type: array
items:
$ref: '#/components/schemas/ApplicationGrantType'
mandatory_grant_types:
description: List of mandatory grant types
type: array
items:
$ref: '#/components/schemas/ApplicationGrantType'
default_grant_types:
description: List of default grant types
type: array
items:
$ref: '#/components/schemas/ApplicationGrantType'
ApplicationGrantType:
properties:
type:
description: type of grant type
type: string
name:
description: name of grant type
type: string
Hook:
properties:
id:
description: Unique identifier of an identity provider.
type: string
label:
description: Label of the hook.
type: string
description:
description: Description of the hook.
type: string
category:
description: Category of the hook.
type: string
ThemeResponse:
properties:
definition:
description: The definition of custom theme.
type: object
_links:
$ref: '#/components/schemas/ThemeLinks'
ConfigurationResponse:
properties:
portal:
$ref: '#/components/schemas/ConfigurationPortal'
authentication:
$ref: '#/components/schemas/ConfigurationAuthentication'
scheduler:
$ref: '#/components/schemas/ConfigurationScheduler'
documentation:
$ref: '#/components/schemas/ConfigurationDocumentation'
plan:
$ref: '#/components/schemas/ConfigurationPlan'
apiReview:
$ref: '#/components/schemas/Enabled'
analytics:
$ref: '#/components/schemas/ConfigurationAnalytics'
application:
$ref: '#/components/schemas/ConfigurationApplication'
recaptcha:
$ref: '#/components/schemas/ConfigurationReCaptcha'
ConfigurationPortal:
properties:
title:
description: The portal Title
type: string
entrypoint:
description: Default entrypoint of the gateway.
type: string
apikeyHeader:
description: Api-key Header. Used by portal to display the CURL command.
type: string
support:
$ref: '#/components/schemas/Enabled'
applicationCreation:
$ref: '#/components/schemas/Enabled'
userCreation:
$ref: '#/components/schemas/Enabled'
apis:
$ref: '#/components/schemas/ConfigurationPortalApis'
analytics:
$ref: '#/components/schemas/ConfigurationPortalAnalytics'
rating:
$ref: '#/components/schemas/ConfigurationPortalRating'
uploadMedia:
$ref: '#/components/schemas/ConfigurationPortalMedia'
ConfigurationPortalApis:
properties:
tilesMode:
$ref: '#/components/schemas/Enabled'
categoryMode:
$ref: '#/components/schemas/Enabled'
apiHeaderShowTags:
$ref: '#/components/schemas/Enabled'
apiHeaderShowCategories:
$ref: '#/components/schemas/Enabled'
ConfigurationPortalAnalytics:
properties:
enabled:
description: true if Google analytics is activated
type: boolean
trackingId:
description: Tracking ID for Google analytics.
type: string
ConfigurationPortalRating:
properties:
enabled:
description: true if rating service is activated
type: boolean
comment:
$ref: '#/components/schemas/ConfigurationPortalRatingComment'
ConfigurationPortalRatingComment:
properties:
mandatory:
description: true if a comment is required to post a rating.
type: boolean
ConfigurationPortalMedia:
properties:
enabled:
description: true if uploading images is allowed
type: boolean
maxSizeInBytes:
description: Maximum size of uploaded images (in bytes)
type: integer
ConfigurationAuthentication:
properties:
forceLogin:
$ref: '#/components/schemas/Enabled'
localLogin:
$ref: '#/components/schemas/Enabled'
ConfigurationScheduler:
properties:
notificationsInSeconds:
description: Number of seconds for notification scheduler.
type: integer
ConfigurationDocumentation:
properties:
url:
description: URL of the main documentation.
type: string
ConfigurationPlan:
properties:
security:
$ref: '#/components/schemas/ConfigurationPlanSecurity'
ConfigurationPlanSecurity:
properties:
apikey:
$ref: '#/components/schemas/Enabled'
oauth2:
$ref: '#/components/schemas/Enabled'
keyless:
$ref: '#/components/schemas/Enabled'
jwt:
$ref: '#/components/schemas/Enabled'
ConfigurationAnalytics:
properties:
clientTimeout:
description: HTTP Client Timeout
type: integer
format: int64
ConfigurationApplication:
properties:
registration:
$ref: '#/components/schemas/Enabled'
types:
$ref: '#/components/schemas/ConfigurationApplicationTypes'
ConfigurationApplicationTypes:
properties:
simple:
$ref: '#/components/schemas/Enabled'
browser:
$ref: '#/components/schemas/Enabled'
web:
$ref: '#/components/schemas/Enabled'
native:
$ref: '#/components/schemas/Enabled'
backend_to_backend:
$ref: '#/components/schemas/Enabled'
ConfigurationReCaptcha:
properties:
enabled:
description: flag indication if recaptcha is enabled or not
type: boolean
siteKey:
description: reCaptcha site key
type: string
CategorizedLinks:
properties:
root:
type: boolean
description: true if the links of this category are in system folder and not in a subfolder.
category:
type: string
description: name of the group of links
links:
type: array
items:
$ref: '#/components/schemas/Link'
Link:
properties:
name:
type: string
description: Name of the link.
resourceRef:
type: string
description: target of the link. Can be either a URL id resourceType is 'external' or a UUID if resourceType is 'page' or 'category'.
resourceType:
type: string
description: the type of the link.
enum:
- external
- page
- category
folder:
type: boolean
description: true if resourceType is 'page' and resourceRef is the id of a folder.
#################
# Input Objects #
#################
RatingInput:
properties:
title:
type: string
value:
type: integer
minimum: 0
maximum: 5
comment:
type: string
RatingAnswerInput:
required:
- comment
properties:
comment:
type: string
ApplicationInput:
properties:
name:
type: string
description:
type: string
picture:
type: string
groups:
type: array
items:
type: string
settings:
$ref: '#/components/schemas/ApplicationSettings'
background:
type: string
MemberInput:
properties:
user:
type: string
description: User's technical identifier.
reference:
type: string
description: User's reference for user providing from an identity provider.
role:
type: string
description: Role's name
ReferenceMetadataInput:
properties:
name:
description: Name of the metadata.
type: string
format:
description: format of the metadata value.
$ref: '#/components/schemas/ReferenceMetadataFormatType'
value:
description: value of the metadata. Supports freemarker syntax.
type: string
defaultValue:
description: default value of the metadata.
type: string
SubscriptionInput:
properties:
application:
description: Id of the application which subscribe
type: string
plan:
description: Id of the plan to which the application subscribe
type: string
request:
description: A request message to the api owner why a user want to subscribe
type: string
general_conditions_accepted:
description: Specify if the general conditions have been accepted by the API subscriber
type: boolean
general_conditions_content_revision:
description: Page revision of the general conditions visualized and accepted by the API subscriber
$ref: '#/components/schemas/PageRevisionId'
TransferOwnershipInput:
properties:
new_primary_owner_id:
description: User identifier of the new Primary Owner of the application.
type: string
new_primary_owner_reference:
description: User reference of the new Primary Owner of the application.
type: string
primary_owner_newrole:
description: New role to be affected to the current PrimaryOwner.
type: string
PayloadInput:
properties:
client_id:
type: string
minLength: 1
redirect_uri:
type: string
minLength: 1
code:
type: string
minLength: 1
grant_type:
type: string
minLength: 1
code_verifier:
type: string
state:
type: string
TicketInput:
required:
- subject
- content
properties:
subject:
description: Subject of the ticket.
type: string
content:
description: Description of the ticket.
type: string
application:
description: Application identifier concerned by the ticket.
type: string
api:
description: Api identifer concerned by the ticket.
type: string
copy_to_sender:
description: True if the author of the ticket wants to receive a copy of the ticket.
type: boolean
RegisterUserInput:
required:
- email
properties:
email:
description: Valid email of the new user.
type: string
firstname:
description: First name of the new user.
type: string
lastname:
description: Last name of the new user.
type: string
confirmation_page_url:
description: URL of the confirmation page to be used in the 'User Registration' email.
type: string
customFields:
type: object
description: Values for CustomUserFields
additionalProperties: true
ChangeUserPasswordInput:
required:
- token
- password
- firstname
- lastname
properties:
token:
description: Token of the user to be validated.
type: string
password:
description: Password of the user.
type: string
format: password
firstname:
description: First name of the user.
type: string
lastname:
description: Last name of the user.
type: string
FinalizeRegistrationInput:
required:
- token
- password
- firstname
- lastname
properties:
token:
description: Token of the registered user to be validated.
type: string
password:
description: Password of the registered user.
type: string
firstname:
description: First name of the registered user.
type: string
lastname:
description: Last name of the registered user.
type: string
UserInput:
required:
- id
properties:
id:
description: Unique identifier of a user.
type: string
avatar:
description: Avatar of the user.
type: string
writeOnly: true
first_name:
description: Firstname of the user.
type: string
writeOnly: true
last_name:
description: Lastname of the user.
type: string
writeOnly: true
email:
description: Email of the user.
type: string
writeOnly: true
customFields:
type: object
description: Values for CustomUserFields
additionalProperties: true
ResetUserPasswordInput:
required:
- username
properties:
username:
description: Username of the user.
type: string
reset_page_url:
description: URL of the password reset page to be used in the 'Password reset' email.
type: string
NotificationInput:
properties:
hooks:
type: array
items:
type: string
#######################
# Composition Objects #
#######################
ApplicationSettings:
properties:
app:
$ref: '#/components/schemas/SimpleApplicationSettings'
oauth:
$ref: '#/components/schemas/OAuthClientSettings'
SimpleApplicationSettings:
properties:
type:
type: string
client_id:
type: string
OAuthClientSettings:
properties:
client_secret:
type: string
client_id:
type: string
redirect_uris:
type: array
items:
type: string
client_uri:
type: string
logo_uri:
type: string
response_types:
type: array
items:
type: string
grant_types:
type: array
items:
type: string
application_type:
type: string
renew_client_secret_supported:
type: boolean
Metadata:
description: Information about the page, if this page is from an external source.
properties:
name:
type: string
value:
type: string
order:
type: string
RatingSummary:
properties:
average:
type: number
format: double
count:
type: number
one_star:
type: number
format: double
two_star:
type: number
format: double
three_star:
type: number
format: double
four_star:
type: number
format: double
five_star:
type: number
format: double
PageConfiguration:
description: Technical information about the page
properties:
try_it:
type: boolean
description: Enable "Try It!" mode in documentation page.
try_it_anonymous:
type: boolean
description: Enable "Try It!" mode in documentation page for anonymous users.
try_it_url:
type: string
description: Base URL used to try the API.
show_url:
type: string
description: Show the URL to download the content.
display_operation_id:
type: boolean
description: Display the operationId in the operations list.
doc_expansion:
type: string
description: |
Default expansion setting for the operations and tags.\
Possibles values are :
- list : Expands only the tags
- full : Expands the tags and operations
- none : Expands nothing. DEFAULT.
enum:
- list
- full
- none
enable_filtering:
type: boolean
description: Add a top bar to filter content.
show_extensions:
type: boolean
description: Display vendor extension (X-) fields and values for Operations, Parameters, and Schema.
show_common_extensions:
type: boolean
description: Display extensions (pattern, maxLength, minLength, maximum, minimum) fields and values for Parameters.
max_displayed_tags:
type: number
description: |
Number of max tagged operations displayed. \
Limits the number of tagged operations displayed to at most this many (negative means show all operations).\
No limit by default.
viewer:
type: string
description: The type of viewer for OpenAPI specification. Default is 'Swagger'
enum:
- Swagger
- Redoc
RatingAnswer:
required:
- id
- author
- date
- comment
properties:
id:
type: string
author:
$ref: '#/components/schemas/User'
date:
type: string
format: date-time
comment:
type: string
Key:
description: Subscription Key
properties:
id:
type: string
api:
type: string
application:
type: string
plan:
type: string
paused:
type: boolean
revoked:
type: boolean
expired:
type: boolean
created_at:
type: string
format: date-time
revoked_at:
type: string
format: date-time
expire_at:
type: string
format: date-time
HttpMethod:
type: string
enum:
- CONNECT
- DELETE
- GET
- HEAD
- OPTIONS
- PATCH
- POST
- PUT
- TRACE
- OTHER
default: OTHER
HttpHeaders:
description: List of String List
additionalProperties:
type: array
items:
type: string
Request:
description: Request logged by the API Gateway
properties:
method:
$ref: '#/components/schemas/HttpMethod'
headers:
$ref: '#/components/schemas/HttpHeaders'
uri:
type: string
body:
type: string
Response:
description: Response logged by the API Gateway
properties:
status:
type: integer
headers:
$ref: '#/components/schemas/HttpHeaders'
body:
type: string
MetadataMap:
description: Map of Map of Object
type: object
additionalProperties:
type: object
additionalProperties:
type: object
Bucket:
properties:
buckets:
type: array
items:
$ref: '#/components/schemas/Bucket'
field:
type: string
name:
type: string
data:
type: array
items:
type: number
metadata:
$ref: '#/components/schemas/MetadataMap'
Timerange:
properties:
from:
type: integer
format: int64
to:
type: integer
format: int64
interval:
type: integer
format: int64
FilterApiQuery:
type: string
enum:
- ALL
- FEATURED
- MINE
- STARRED
- TRENDINGS
Enabled:
properties:
enabled:
description: true, if the property is enabled
type: boolean
IdentityProviderType:
description: type of Identity Provider
type: string
enum:
- GOOGLE
- GITHUB
- GRAVITEEIO_AM
- OIDC
PageRevisionId:
properties:
pageId:
type: string
revision:
type: integer
format: int32
ReferenceMetadataFormatType:
type: string
enum:
- STRING
- NUMERIC
- BOOLEAN
- DATE
- MAIL
- URL
default: STRING
#################
# Links Objects #
#################
Links:
properties:
self:
type: string
first:
type: string
last:
type: string
prev:
type: string
next:
type: string
ApiLinks:
properties:
self:
type: string
links:
type: string
metrics:
type: string
pages:
type: string
picture:
type: string
background:
type: string
plans:
type: string
ratings:
type: string
ApplicationLinks:
properties:
self:
type: string
members:
type: string
notifications:
type: string
picture:
type: string
background:
type: string
PageLinks:
properties:
self:
type: string
content:
type: string
parent:
type: string
ThemeLinks:
properties:
self:
type: string
backgroundImage:
type: string
logo:
type: string
optionalLogo:
type: string
UserLinks:
properties:
self:
type: string
avatar:
type: string
notifications:
type: string
CategoryLinks:
properties:
self:
type: string
highlighted_api:
type: string
picture:
type: string
background:
type: string
CustomUserFields:
description: Definition of addition user registration fields
properties:
key:
description: The field identifier.
type: string
label:
description: The default field label.
type: string
required:
description: The field is mandatory
type: boolean
values:
description: List of authorized values for the field
type: array
items:
type: string
responses:
InternalServerError:
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
PermissionError:
description: Insufficient rights to access this resource
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
UnauthorizedError:
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
APINotFoundError:
description: API not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
ApplicationNotFoundError:
description: Application not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
GroupNotFoundError:
description: Group not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
AuthSuccess:
description: Auth token in payload and bearer in cookie
headers:
set-cookie:
description: Auth cookie
schema:
type: string
example: Auth-Graviteeio-APIM=Bearer%20xxxxxx;Path=/;HttpOnly
content:
application/json:
schema:
$ref: '#/components/schemas/Token'
PageSuccess:
description: One documentation page
content:
application/json:
schema:
$ref: '#/components/schemas/Page'
PagesSuccess:
description: List of pages
content:
application/json:
schema:
$ref: '#/components/schemas/PagesResponse'
PictureSuccess:
description: A picture
content:
'image/*':
schema:
type: string
format: binary
MediaSuccess:
description: A media
content:
'*':
schema:
type: string
format: binary
securitySchemes:
BasicAuth:
type: http
scheme: basic
CookieAuth:
type: apiKey
in: cookie
name: Auth-Graviteeio-APIM
© 2015 - 2025 Weber Informatics LLC | Privacy Policy