openapi: 3.2.0 info: version: '0.2' title: wazo-plugind Market API description: Wazo's plugin management service contact: name: Wazo Dev Team url: https://wazo-platform.org/ email: dev@wazo.community license: name: GPLv3 url: http://www.gnu.org/licenses/gpl-3.0.html x-logo: url: https://wazo-platform.org/images/logo-black.svg backgroundColor: '#FAFAFA' altText: Wazo Logo servers: - url: /0.2 security: - wazo_auth_token: [] tags: - name: market paths: /market: get: tags: - market summary: List plugins available on the configured market description: '**Required ACL:** `plugind.market.read` Allow the administrator to get a list of available plugins ' parameters: - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/offset' - $ref: '#/components/parameters/order' - $ref: '#/components/parameters/direction' - $ref: '#/components/parameters/search' - $ref: '#/components/parameters/namespace_filter' - $ref: '#/components/parameters/name_filter' - $ref: '#/components/parameters/installed_filter' responses: '200': description: The plugin list content: application/json: schema: $ref: '#/components/schemas/GetMarketResult' /market/{namespace}/{name}: get: tags: - market summary: Fetch the information about a plugin from the market description: '**Required ACL:** `plugind.market.read` Allow the administrator to view a plugins information from the market. --- ' parameters: - $ref: '#/components/parameters/namespace' - $ref: '#/components/parameters/name' responses: '200': description: The plugin's information content: application/json: schema: $ref: '#/components/schemas/MarketPluginList' '400': $ref: '#/components/responses/InvalidRequest' '404': $ref: '#/components/responses/NotFoundError' components: parameters: search: required: false name: search in: query description: Filter list of items, this search is applied to all fields and is not strict (eba matches Sébastien) schema: type: string namespace: required: true name: namespace in: path description: The plugin's namespace schema: type: string direction: required: false name: direction in: query description: Sort list of items in 'asc' (ascending) or 'desc' (descending) order schema: type: string enum: - asc - desc offset: required: false name: offset in: query description: Number of items to skip over in the list. Useful for pagination. schema: type: integer name: required: true name: name in: path description: The plugin's name schema: type: string installed_filter: required: false name: installed in: query description: Filter installed plugins schema: type: boolean namespace_filter: required: false name: namespace in: query description: Search by namespace schema: type: string order: required: false name: order in: query description: Name of the field to use for sorting the list of items returned. schema: type: string limit: required: false name: limit in: query description: Maximum number of items to return in the list schema: type: integer name_filter: required: false name: name in: query description: Search by name schema: type: string schemas: VersionInfo: type: object properties: version: type: string description: The plugin version max_wazo_version: type: string description: The maximum Wazo version with which this plugin works min_wazo_version: type: string description: The minimum Wazo version with which this plugin works upgradable: type: boolean description: An indication wether installing this version would be an upgrade on not. Unstalled plugins are marked as upgradable. MarketPluginList: type: object properties: namespace: type: string description: The namespace of the plugin name: type: string description: The name of the plugin versions: type: array items: $ref: '#/components/schemas/VersionInfo' description: Version specific information Error: title: Error description: Error message for the client properties: message: description: Human readable explanation of the error type: string resource: description: Name of the resource type: string error_id: description: Identifier of the type of error. It is more precise than the HTTP status code. type: string details: description: Additional information about the error. The keys are specific to each error. type: object timestamp: description: Time when the error occured type: number format: timestamp GetMarketResult: type: object properties: total: type: integer description: The number of plugins available on the market filtered: type: integer description: The number of plugins matching the given search items: type: array items: $ref: '#/components/schemas/MarketPluginList' description: A list of plugins responses: NotFoundError: description: Plugin not found content: application/json: schema: $ref: '#/components/schemas/Error' InvalidRequest: description: Invalid request content: application/json: schema: $ref: '#/components/schemas/Error' securitySchemes: wazo_auth_token: type: apiKey name: X-Auth-Token in: header x-xivo-port: 9503 x-xivo-name: plugind x-apievangelist-source: harvested_from: https://github.com/wazo-platform/wazo-plugind assembly: base plugin api.yml deep-merged with all plugin api.yml fragments, reproducing what the running service serves at /api/plugind/0.2/api/api.yml (see wazo_plugind/plugins/api/http.py — xivo.chain_map.ChainMap) spec_version: Swagger 2.0 (as published by Wazo) harvested: '2026-08-17'