The Extensions API is a REST API used by the Marketplace Platform to manage extensions and everything around them. It lets you:
- Create, read, update, delete, review, publish and unpublish extensions.
- Create and maintain categories, then link extensions to them.
- Manage the documentation for the extension, including publish/unpublish documentation.
- Upload and manage images and videos.
- Manage terms and conditions and their variants.
- Track installations.
Review the shared API docs before you work with audit resources.
The Extensions API is built around the following core resources:
- Category – Enables the operator to add, view, or delete the
category object.
- Document – Allows uploading supplementary documentation to an extension, either via a file upload or an online link.
- Extension – Represents a set of requirements (parameters) that vendors ask their clients to meet.
- Media – Allows vendors to add, view, and delete
media associated with an extension.
- Terms – Represents a collection of documents associated with an extension, including uploaded PDF or DOCX files or links to externally hosted documents.
- Variant – Represents a specific version of terms for an extension, provided as an uploaded PDF or DOCX file or a link to an externally hosted document.
- Instance – Represents a running instance in the database, such as a Kubernetes pod, with its current status, for example, running.
- Installation – Allows an operator to add, view, and delete installations.
- Invitation – Allows a vendor to create and send an
invitation.
The API is organized into collections, each containing a set of operations. Access to these operations varies by role, depending on whether you are a client, vendor, or operations user.
Use the following links to jump to the collection you need:
View Extension operations
View Categories operations
View Documents operations
View Media operations
| Operation | Method | Description | Access |
|---|
| Create media | POST | Creates new media for an extension. | vendor |
| List media | GET | Gets a list of media for an extension. | vendor, client, ops |
| Get media by id | GET | Gets an item of media for an extension. | vendor, client, ops |
| Update media | PUT | Updates an item of media for an extension. | vendor |
| Publish media | POST | Publishes an item of media for an extension. | vendor |
| Unpublish media | POST | Unpublishes an item of media for an extension. | vendor |
| Delete media | DELETE | Deletes an item of media for an extension. | vendor |
View Installation operations
| Operation | Method | Description | Access |
|---|
| Create installation or invitation | POST | Creates a new installation or invitation. | vendor, client, ops |
| Update installation | PUT | Updates the configuration of an installation. | vendor-owner |
| List installations | GET | Gets a list of installations. | vendor, client, ops |
| Get installation by id | GET | Gets an installation by id. | vendor, client, ops |
| Delete installation | DELETE | Deletes an installation. | vendor, ops |
| List installations for extension | GET | Gets a list of installations for an extension. | vendor, client, ops |
| Get installation for extension by id | GET | Gets an installation for an extension by id. | vendor, client, ops |
| Redeem invitation | POST | Creates a redeemed invitation. | client, vendor, ops |
View Instance operations
View Terms operations
| Operation |
Method |
Description |
Access |
| Create terms |
POST |
Creates terms for an extension. |
vendor |
| List terms |
GET |
Gets a list of all terms for an extension. |
vendor, client, ops |
| Get terms by id |
GET |
Gets terms for an extension by id. |
vendor, client, ops |
| Update terms |
PUT |
Updates terms for an extension. |
vendor |
| Delete terms |
DELETE |
Deletes terms for an extension. |
vendor |
| Mark terms for review |
POST |
Marks terms for an extension for review. |
vendor |
| Publish terms |
POST |
Publishes terms for an extension. |
vendor |
| Unpublish terms |
POST |
Unpublishes terms for an extension. |
vendor |
View Variants operations
| Operation |
Method |
Description |
Access |
| Create variant |
POST |
Creates a variant for terms. |
vendor |
| List variants |
GET |
Gets a list of all variants for terms. |
vendor, client, ops |
| Get variant by id |
GET |
Gets a variant for terms by id. |
vendor, client, ops |
| Update variant |
PUT |
Updates a variant for terms for an extension. |
vendor |
| Delete variant |
DELETE |
Deletes a variant for terms. |
vendor |
| Mark variant for review |
POST |
Marks a variant for terms for review. |
vendor |
| Publish variant |
POST |
Publishes a variant for terms. |
vendor |
| Unpublish variant |
POST |
Unpublishes a variant for terms. |
vendor |