openapi: 3.1.0 info: title: Optimizely Campaign REST Assets Extensions API description: The Optimizely Campaign REST API provides programmatic access to Optimizely's email and omnichannel campaign management capabilities. Developers can use the API to manage campaigns, recipients, mailing lists, smart campaigns, transactional mails, and messaging workflows. The API is hosted at api.campaign.episerver.net and supports automation of marketing campaign operations, enabling integration with external systems and custom marketing workflows. The base URL includes the client ID for multi-tenant access. version: '1.0' contact: name: Optimizely Support url: https://support.optimizely.com termsOfService: https://www.optimizely.com/legal/terms/ servers: - url: https://api.campaign.episerver.net/rest description: Optimizely Campaign Production Server security: - basicAuth: [] tags: - name: Extensions description: Manage reusable extensions that encapsulate experiment logic and visual changes. paths: /extensions: get: operationId: listExtensions summary: List extensions description: Returns a list of extensions for the specified project. Extensions are reusable templates for experiment changes. tags: - Extensions parameters: - $ref: '#/components/parameters/projectIdQuery' - $ref: '#/components/parameters/perPage' - $ref: '#/components/parameters/page' responses: '200': description: Successfully retrieved the list of extensions content: application/json: schema: type: array items: $ref: '#/components/schemas/Extension' '401': description: Authentication credentials are missing or invalid components: schemas: Extension: type: object description: A reusable extension that encapsulates experiment logic properties: id: type: integer format: int64 description: Unique identifier for the extension project_id: type: integer format: int64 description: The project this extension belongs to name: type: string description: Human-readable name of the extension description: type: string description: Description of the extension edit_url: type: string format: uri description: URL used in the visual editor implementation: type: object description: The implementation details for the extension properties: apply_js: type: string description: JavaScript code to apply the extension undo_js: type: string description: JavaScript code to undo the extension html: type: string description: HTML content of the extension css: type: string description: CSS styles of the extension parameters: projectIdQuery: name: project_id in: query required: true description: The unique identifier for the project to filter by schema: type: integer format: int64 perPage: name: per_page in: query required: false description: Number of results per page schema: type: integer default: 25 minimum: 1 maximum: 100 page: name: page in: query required: false description: Page number for pagination schema: type: integer default: 1 minimum: 1 securitySchemes: basicAuth: type: http scheme: basic description: HTTP Basic authentication using the Optimizely Campaign API credentials. externalDocs: description: Optimizely Campaign REST API Documentation url: https://docs.developers.optimizely.com/optimizely-campaign/docs/rest-api