How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Optimizely Library API

The Library API from Optimizely — 24 operation(s) for library.

Optimizely Library API is one of 420 APIs that Optimizely publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Library. The published artifact set on APIs.io includes an OpenAPI specification.

This API exposes 41 operations across 24 paths, and defines 120 schemas. It is described by OpenAPI 3.2.0, at version V3.

Requests are made against a single base URL, https://api.cmp.optimizely.com/v3.

41 operations 24 paths 120 schemas 7 DELETE16 GET7 PATCH8 POST3 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
V3
Base URL
https://exp.mcp.opal.optimizely.com/mcp
Authentication
OAuth 2.0
Resource Areas
1

Authentication & Security 1

Optimizely Library API declares 1 security scheme for authenticating requests. It supports OAuth 2.0 (OAuth2) using the authorizationCode and clientCredentials flows, exposing 3 scopes. By default, every request must be authenticated.

Paths & Operations 41

Across 24 paths, the API surfaces 41 operations — 7 DELETE, 16 GET, 7 PATCH, 8 POST, 3 PUT. Each is listed below with its method, path, parameters, and response codes.

Library 41
GET
/folders
GET /folders
listFolders 3 params → 200400401403
POST
/folders
POST /folders
createFolder body → 201400401403404
GET
/folders/{id}
GET /folders/{id}
getFolder 1 param → 200400401403404
PATCH
/folders/{id}
PATCH /folders/{id}
updateFolder 1 param body → 200400401403404
DELETE
/folders/{id}
DELETE /folders/{id}
deleteFolder 1 param → 204400401403404
GET
/folders/{id}/permissions
GET /folders/{id}/permissions
listFolderPermissions 4 params → 200400401403404
POST
/folders/{id}/permissions
POST /folders/{id}/permissions
addFolderPermissions 1 param body → 204400401403404
PATCH
/folders/{id}/permissions/{accessor_id}
PATCH /folders/{id}/permissions/{accessorid}
updateFolderPermission 2 params body → 204400401403404422
DELETE
/folders/{id}/permissions/{accessor_id}
DELETE /folders/{id}/permissions/{accessorid}
removeFolderPermission 2 params → 204400401403404422
POST
/file-urls
POST /file-urls
createFileUrls body → 200400401403404
GET
/assets
GET /assets
listAssets 13 params → 200400401403
POST
/assets
POST /assets
createAsset body → 201400401403
GET
/assets/{asset_id}/fields
GET assets/{assetid}/fields
listAssetFields 3 params → 200400401403404
PUT
/assets/{asset_id}/fields
PUT /assets/{assetid}/fields
updateAssetFields 1 param body → 200400401403404
PUT
/assets/{asset_id}/fields/{field_id}
PUT /assets/{assetid}/fields/{fieldid}
updateAssetField 2 params body → 200400401403404
POST
/assets/{asset_id}/versions
POST /assets/{assetid}/versions
createAssetVersion 1 param body → 201400401403404422
GET
/assets/{asset_id}/renditions
GET /assets/{assetid}/renditions
listAssetRenditions 1 param → 200400401403404
GET
/assets/{asset_id}/permissions
GET /assets/{assetid}/permissions
listAssetPermissions 4 params → 200400401403404
POST
/assets/{asset_id}/permissions
POST /assets/{assetid}/permissions
addAssetPermissions 1 param body → 204400401403404
PATCH
/assets/{asset_id}/permissions/{accessor_id}
PATCH /assets/{assetid}/permissions/{accessorid}
updateAssetPermission 2 params body → 204400401403404422
DELETE
/assets/{asset_id}/permissions/{accessor_id}
DELETE /asstes/{assetid}/permissions/{accessorid}
removeAssetPermission 2 params → 204400401403404422
GET
/renditions/{id}
GET /renditions/{id}
getRendition 1 param → 200400401403404
GET
/rendition-configs/{id}
GET /rendition-configs/{id}
getRenditionConfig 1 param → 200400401403404
POST
/assets/{asset_id}/lineages
POST /assets/{assetid}/lineages
createAssetLineage 1 param body → 201400401403404422
DELETE
/assets/{asset_id}/lineages/{lineage_id}
DELETE /assets/{assetid}/lineages/{lineageid}
deleteAssetLineage 2 params → 204400401403404422
GET
/assets/{asset_id}/related-assets
GET /assets/{assetid}/related-assets
listRelatedAssets 3 params → 200400401403404
PUT
/assets/{asset_id}/related-assets
PUT /assets/{assetid}/related-assets
replaceRelatedAssets 1 param body → 200400401403404
GET
/asset-lineages
GET /asset-lineages
listAssetLineages 6 params → 200400401403
GET
/articles/{id}
GET /articles/{id}
getArticle 1 param → 200400401403404
GET
/images/{id}
GET /images/{id}
getImage 1 param → 200400401403404
PATCH
/images/{id}
PATCH /images/{id}
updateImage 1 param body → 200400401403404422
DELETE
/images/{id}
DELETE /images/{id}
deleteImage 1 param → 204400401403404422
GET
/videos/{id}
GET /videos/{id}
getVideo 1 param → 200400401403404
PATCH
/videos/{id}
PATCH /videos/{id}
updateVideo 1 param body → 200400401403404422
DELETE
/videos/{id}
DELETE /videos/{id}
deleteVideo 1 param → 204400401403404422
GET
/raw-files/{id}
GET /raw-files/{id}
getRawFile 1 param → 200400401403404
PATCH
/raw-files/{id}
PATCH /raw-files/{id}
updateRawFile 1 param body → 200400401403404422
DELETE
/raw-files/{id}
DELETE /raw-files/{id}
deleteRawFile 1 param → 200400401403404422
POST
/structured-contents
POST /structured-contents
createStructuredContent body → 200400401403404422
GET
/structured-contents/{id}
GET /structured-contents/{id}
getStructuredContent 1 param → 200400401403404
PATCH
/structured-contents/{id}
PATCH /structured-contents/{id}
updateStructuredContent 1 param body → 200400401403404422

Schemas 120

The contract defines 120 schemas that model the data the API accepts and returns. The most detailed are LibraryArticle (28 properties), LibraryImage (26 properties), LibraryVideo (24 properties), LibraryRawFile (23 properties). Each schema is shown below with its type and property counts.

ReplaceRelatedAssetsRequest
object
1 property 1 required
AllowedContentTypeItem
object
2 properties 2 required
LocationDefaultValue
object
2 properties 2 required
LibraryVideoUpdateRequest
object
11 properties
FolderPermissionUpdateRequest
object
2 properties
AssetFieldTypeDropdown
DetailedAssetRenditionResponse
ContentTypeFieldEmbedMixConfig
integer
Ref Type: 1 Refer only 2 Refer and create embed 3 Create only
FolderPermissionBulkCreateRequest
object
2 properties 2 required
LibraryImage
object
26 properties 26 required
ChoiceDisplayOption
string
An enumeration.
LocationFieldValueModel
object
3 properties 2 required
AssetFieldTypeLabel
AssetFieldTypeCheckbox
AssetPermissionUpdateRequest
object
2 properties
BaseObjectFieldUpdatePayload
object
2 properties 2 required
LocalizedFieldValuesWithEmbeddedContent
object
2 properties 2 required
LibraryArticle
object
28 properties 28 required
AssetFieldsUpdateRequest
array
PatchLocalizedFieldValuesWithEmbeddedContent
object
2 properties 2 required
LibraryAssetFieldDefinition
object
3 properties 2 required
StructuredContentBody
object
The fields of structured content
1 property
LibraryImageUpdateRequest
object
11 properties
BaseAssetField
object
4 properties 4 required
ContentFieldValueWithEmbeddedModel
object
1 property 1 required
LibraryRawFileUpdateRequest
object
10 properties
StringTypeObjectFieldUpdatePayload
LocalizedFieldValues
object
2 properties 2 required
RenditionConfigResponse
object
8 properties 8 required
AssetPermissionBulkCreateRequest
object
2 properties 2 required
SCContentTypeVersion
Tag
object
2 properties 2 required
NumberTypeObjectField
ContentFieldValueModel
object
4 properties 2 required
RecursiveStructuredContent
object
8 properties 2 required
ReplaceRelatedAssetsResponse
object
2 properties 2 required
RadioButtonTypeObjectFieldUpdatePayload
AssetFieldUpdateRequest
object
AssetFieldTypePercentageNumber
FolderUpdateRequest
object
2 properties
BaseFieldDefinitionType
string
An enumeration.
VersionedContentTypeModel
object
15 properties 9 required
Error
object
Error payload
2 properties 1 required
ContentFieldsVersionDetails
object
8 properties 5 required
DatetimeFieldDefinition
object
4 properties 3 required
FolderResponse
object
7 properties 7 required
RichTextFieldDefinition
object
4 properties 2 required
AssetVersionCreateRequest
object
2 properties 2 required
DatetimeFieldValueModel
object
2 properties 1 required
ResourceLabelResponse
object
Label associated to a fetched resource
2 properties 2 required
URLFieldValueModel
object
2 properties 1 required
AssetLineageResponse
object
10 properties 10 required
MultiChoiceTypeObjectFieldUpdatePayload
AssetFieldUpdateResponse
object
5 properties 5 required
ChoiceFieldValueModel
object
2 properties 1 required
ChoiceFieldDefinition
object
4 properties 2 required
AssetLineageCreateRequest
object
4 properties 2 required
CoreFieldDef
object
13 properties 5 required
LibraryStructuredContentUpdateRequest
object
3 properties
LibraryStructuredContentCreateRequest
object
3 properties 1 required
RadioButtonTypeObjectField
BaseObjectField
TextFieldDefinition
object
5 properties 3 required
LibraryAssetCreateRequest
object
3 properties 2 required
RichTextFieldValueModel
object
2 properties 1 required
ContentDetailsModel
object
19 properties 11 required
FolderCreateRequest
object
2 properties 1 required
ContentTypeFieldDefinition
object
6 properties 3 required
ContentFieldValueExpandedModel
object
5 properties 3 required
LibraryAssetType
string
An enumeration.
FeaturedImageResponse
object
9 properties 9 required
AssetFieldTypeCommon
LibraryVideo
object
24 properties 24 required
NumberFieldValueModel
object
2 properties 1 required
LibraryAssetVersionResponse
object
8 properties 8 required
BatchFileUrlResponse
object
1 property 1 required
Pagination
object
Pagination related information
2 properties 2 required
NumberFieldDefinition
object
4 properties 1 required
DeleteLocaleFieldValueModel
object
2 properties 2 required
TextFieldValueModel
object
2 properties 1 required
BaseAssetRenditionResponse
object
5 properties 5 required
AssetPermissionListResponseItem
object
2 properties 2 required
RecursivePatchStructuredContentFields
object
8 properties
error_reason
string
An enumeration.
DropdownTypeObjectFieldUpdatePayload
AssetTypeObjectField
ContentFieldsVersionValidation
object
1 property
RelatedAssetsListResponse
object
2 properties 2 required
LibraryAssetFieldValueModel
object
4 properties 2 required
AssetFieldTypeCurrencyNumber
AssetFieldListResponseItem
DateTypeObjectFieldUpdatePayload
AssetTypeObjectFieldUpdatePayload
FieldType
string
An enumeration.
AssetResponse
object
15 properties 15 required
StructuredContentFields
object
The fields of structured content
AssetContent
object
Content of the asset
2 properties 2 required
DropdownTypeObjectField
DeleteFieldValueModel
object
2 properties 1 required
LibraryAssetDefaultValue
object
2 properties 2 required
BooleanFieldValueModel
object
2 properties 1 required
LibraryRawFile
object
23 properties 23 required
FolderPermissionListResponseItem
object
2 properties 2 required
RelatedAssetItem
object
7 properties 7 required
StringTypeObjectField
NumberTypeObjectFieldUpdatePayload
MultiChoiceTypeObjectField
ArticleAuthorResponse
object
Author of the article
1 property 1 required
LibraryStructuredContent
object
11 properties 10 required
BaseFieldDefinition
object
3 properties 2 required
ResourceLabelRequest
object
Payload to associate labels to a resource
2 properties 2 required
FileUrlBulkCreateRequest
object
1 property 1 required
AssetFieldTypes
string
Type of the field
BaseContentTypeVersionModel
object
6 properties 6 required
BasePermissionsResponseSchema
object
6 properties 6 required
DateTypeObjectField
AssetFieldTypeSimpleNumber
JSONFieldValueModel
object
2 properties 1 required
AssetFieldTypeRadio
ContentFieldWithEmbeddedPatchValueModel
object
2 properties 2 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

optimizely-library-api-openapi.yml Raw ↑

Other APIs Optimizely publishes across the network.

Optimizely Remote MCP Server — Experimentation
Optimizely Assets API
Optimizely Attributes API
Optimizely Audiences API
Optimizely Campaigns API
Optimizely Catalog Entries API
Optimizely Catalog Entry Relations API
Optimizely Catalog Nodes API
Optimizely Catalogs API
Optimizely Content API
Optimizely Content Types API
Optimizely Customers API
Where this information came from

This is an independent, third-party profile of Optimizely Library API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.