Optimizely Websites API

The Websites API from Optimizely — 41 operation(s) for websites.

Operations 45

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /api/v1/admin/Websites List the websites configured in the admin · Returns the EntitySet Websites #
Ask an LLM
“How do I list every website set up in the Optimizely Commerce admin?”
“Can I filter or sort the admin website list with OData query options?”
Tell an agent
List all websites in the commerce admin.
List admin websites matching the filter {filter}.
POST /api/v1/admin/Websites Create a new website · Post a new entity to EntitySet Websites #
Ask an LLM
“How do I create a new storefront website in the commerce admin?”
“What fields are required when adding a website, like domain name and theme?”
Tell an agent
Create a website named {name} on domain {domainName} using theme {themeId}.
Add a new website with key {key} for company {companyName}.
GET /api/v1/admin/Websites({id}) Get one website by its id · Returns the entity with the key from Websites #
Ask an LLM
“How can I look up the settings of a single website by its id?”
“Can I see one website's domain, theme and company details?”
Tell an agent
Show me the website with id {id}.
Get the domain and theme settings for website {id}.
PUT /api/v1/admin/Websites({id}) Replace a website's full record · Replace entity in EntitySet Websites #
Ask an LLM
“How do I overwrite a website's entire configuration in one request?”
“Is there a full replace for a website record rather than a partial update?”
Tell an agent
Replace the whole record of website {id} with name {name} and domain {domainName}.
Overwrite website {id} completely with the new configuration.
DELETE /api/v1/admin/Websites({id}) Delete a single website · Delete entity in EntitySet Websites #
Ask an LLM
“How do I permanently delete one website by its id?”
“Can I delete a website only if its ETag still matches?”
Tell an agent destructive · confirm first
Delete website {id}.
Delete website {id} only if it matches ETag {etag}.
PATCH /api/v1/admin/Websites({id}) Update selected fields on a website · Update entity in EntitySet Websites #
Ask an LLM
“How do I switch a website into maintenance mode without resending everything?”
“Can I patch just a website's logo or company phone?”
Tell an agent
Turn maintenance mode to {maintenanceMode} on website {id}.
Patch website {id} so its company phone is {companyPhone}.
GET /api/v1/admin/Websites/Default.Default() Get the default website record · Call operation Default #
Ask an LLM
“What does the default website record look like in the admin API?”
“Can I fetch the default values a new website starts with?”
Tell an agent
Get the default website record.
Show me the default template values for a website.
POST /api/v1/admin/Websites/Default.archive Archive websites with the archive action · Call operation archive #
Ask an LLM
“How do I archive several websites at once with the OData archive action?”
“Can I archive websites instead of deleting them?”
Tell an agent
Run the archive action on websites {ids}.
Archive the websites with ids {ids} using the POST archive call.
GET /api/v1/admin/Websites({id})/Default.userProfilesWithRolesFilter() List a website's users filtered by role · Call operation userProfilesWithRolesFilter #
Ask an LLM
“Which user profiles on a website have particular roles, looked up by website id?”
“Can I see the role-filtered users for a website using its id?”
Tell an agent
List role-filtered user profiles for website id {id}.
Show users with roles on the website whose id is {id}.
GET /api/v1/admin/websites({key})/userProfilesWithRolesFilter List a website's role users by website key · Websites get user profiles with roles filter by key #
Ask an LLM
“How do I get a website's role-filtered user profiles using the website key instead of its id?”
“Can I look up users with roles on a website by its key?”
Tell an agent
List role-filtered user profiles for the website with key {key}.
Using website key {key}, show which users have roles there.
GET /api/v1/admin/websites/IsMicrositeUrlInUseByContent Check if a microsite URL is used by content · Websites is microsite url in use by content #
Ask an LLM
“How can I tell whether a microsite URL is already used by content?”
“Is a given microsite identifier free before I assign it to a website?”
Tell an agent
Check whether microsite URL {value} is already in use by content.
Tell me if {value} is taken as a microsite URL.
DELETE /api/v1/admin/websites/archive Archive websites through the archive route · Websites archive route #
Ask an LLM
“Is there a DELETE-style archive route for websites?”
“How do I archive websites through the websites/archive endpoint?”
Tell an agent destructive · confirm first
Archive websites {ids} through the DELETE archive route.
Send websites {ids} to the archive with the archive route.
DELETE /api/v1/admin/websites/delete Bulk delete websites by ids · Websites delete route #
Ask an LLM
“How do I delete several websites in one call?”
“Can I bulk remove websites by passing a list of ids?”
Tell an agent destructive · confirm first
Bulk delete websites {ids}.
Remove all of these websites at once: {ids}.
GET /api/v1/admin/websites({key})/adminuserprofiles({adminuserprofileKey}) Get an admin user assigned to a website · Websites get admin user profile by key and adminuserprofilekey #
Ask an LLM
“How do I look up one admin user profile attached to a website?”
“Can I check if a specific admin user is linked to a website?”
Tell an agent
Get admin user profile {adminuserprofileKey} on website {key}.
Show the admin user {adminuserprofileKey} assigned to website {key}.
GET /api/v1/admin/websites({key})/applicationmessages({applicationmessageKey}) Get an application message for a website · Websites get application message by key and applicationmessagekey #
Ask an LLM
“How do I read one application message configured for a website?”
“Can I see the text of a specific site message on a given website?”
Tell an agent
Get application message {applicationmessageKey} for website {key}.
Show the website {key} application message {applicationmessageKey}.
GET /api/v1/admin/websites({key})/billtoaddressfields({billtoaddressfieldKey}) Get a bill-to address field for a website · Websites get bill to address field by key and billtoaddressfieldkey #
Ask an LLM
“How is a particular bill-to address field configured on a website?”
“Can I look up one billing address field setting by website?”
Tell an agent
Get bill-to address field {billtoaddressfieldKey} on website {key}.
Show how billing field {billtoaddressfieldKey} is set up for website {key}.
GET /api/v1/admin/websites({key})/carriers({carrierKey}) Get a shipping carrier on a website · Websites get carrier by key and carrierkey #
Ask an LLM
“How do I check whether a shipping carrier is enabled for a website?”
“Can I view one carrier's details for a specific website?”
Tell an agent
Get carrier {carrierKey} for website {key}.
Show the shipping carrier {carrierKey} on website {key}.
GET /api/v1/admin/websites({key})/categories({categoryKey}) Get a product category on a website · Websites get category by key and categorykey #
Ask an LLM
“How do I fetch one product category belonging to a website?”
“Can I see a category's details scoped to a specific website?”
Tell an agent
Get category {categoryKey} on website {key}.
Show product category {categoryKey} for website {key}.
GET /api/v1/admin/websites({key})/countries({countryKey}) Get a country enabled on a website (admin) · Websites get country by key and countrykey #
Ask an LLM
“How do I check a country's admin settings on a specific website by key?”
“Can the admin API show whether a country is assigned to a website?”
Tell an agent
Get admin country {countryKey} on website {key}.
In the admin, show country {countryKey} for website {key}.
GET /api/v1/admin/websites({key})/crosssells({productKey}) Get a website cross-sell product (admin) · Websites get cross sell by key and productkey #
Ask an LLM
“How do I look up one cross-sell product configured on a website in the admin?”
“Can I check whether a product is a website-level cross-sell by website key?”
Tell an agent
Get admin cross-sell product {productKey} on website {key}.
Show whether product {productKey} is a cross-sell for website {key}.
GET /api/v1/admin/websites({key})/customers({customerKey}) Get a customer assigned to a website · Websites get customer by key and customerkey #
Ask an LLM
“How do I find one customer account assigned to a website?”
“Can I verify that a customer belongs to a particular website?”
Tell an agent
Get customer {customerKey} on website {key}.
Show the customer {customerKey} linked to website {key}.
GET /api/v1/admin/websites({key})/customproperties({custompropertyKey}) Get a custom property on a website · Websites get custom property by key and custompropertykey #
Ask an LLM
“How do I read a custom property stored on a website?”
“Can I fetch a single extension property value for a website?”
Tell an agent
Get custom property {custompropertyKey} on website {key}.
Show the value of website {key} custom property {custompropertyKey}.
GET /api/v1/admin/websites({key})/dealers({dealerKey}) Get a dealer on a website · Websites get dealer by key and dealerkey #
Ask an LLM
“How do I look up one dealer location attached to a website?”
“Can I see a dealer's details for a specific website?”
Tell an agent
Get dealer {dealerKey} on website {key}.
Show dealer {dealerKey} assigned to website {key}.
GET /api/v1/admin/websites({key})/experiments({experimentKey}) Get an experiment running on a website · Websites get experiment by key and experimentkey #
Ask an LLM
“How do I look up one experiment configured on a website?”
“Can I see the setup of a specific website experiment?”
Tell an agent
Get experiment {experimentKey} on website {key}.
Show the experiment {experimentKey} for website {key}.
GET /api/v1/admin/websites({key})/promotions({promotionKey}) Get a promotion on a website · Websites get promotion by key and promotionkey #
Ask an LLM
“How do I check a single promotion attached to a website?”
“Can I view one discount promotion scoped to a website?”
Tell an agent
Get promotion {promotionKey} on website {key}.
Show the promotion {promotionKey} running on website {key}.
GET /api/v1/admin/websites({key})/restrictiongroups({restrictiongroupKey}) Get a restriction group on a website · Websites get restriction group by key and restrictiongroupkey #
Ask an LLM
“How do I look up one product restriction group assigned to a website?”
“Can I see which restriction group applies on a specific website?”
Tell an agent
Get restriction group {restrictiongroupKey} on website {key}.
Show restriction group {restrictiongroupKey} for website {key}.
GET /api/v1/admin/websites({key})/shiptoaddressfields({shiptoaddressfieldKey}) Get a ship-to address field for a website · Websites get ship to address field by key and shiptoaddressfieldkey #
Ask an LLM
“How is one ship-to address field configured on a website?”
“Can I look up a single shipping address field setting per website?”
Tell an agent
Get ship-to address field {shiptoaddressfieldKey} on website {key}.
Show how shipping field {shiptoaddressfieldKey} is set up for website {key}.
GET /api/v1/admin/websites({key})/states({stateKey}) Get a state assigned to a website (admin) · Websites get state by key and statekey #
Ask an LLM
“How do I check the admin settings of one state or province on a website by key?”
“Can the admin API show whether a state is assigned to a website?”
Tell an agent
Get admin state {stateKey} on website {key}.
In the admin, show state {stateKey} for website {key}.
GET /api/v1/admin/websites({key})/systemsettings({systemsettingKey}) Get a system setting for a website · Websites get system setting by key and systemsettingkey #
Ask an LLM
“How do I read one system setting value for a specific website?”
“Can I see a website-level override of a system setting?”
Tell an agent
Get system setting {systemsettingKey} on website {key}.
Show the value of system setting {systemsettingKey} for website {key}.
GET /api/v1/admin/websites({key})/userprofiles({userprofileKey}) Get a storefront user profile on a website · Websites get user profile by key and userprofilekey #
Ask an LLM
“How do I look up one storefront user profile on a website?”
“Can I check whether a shopper account is tied to a specific website?”
Tell an agent
Get user profile {userprofileKey} on website {key}.
Show the shopper profile {userprofileKey} on website {key}.
GET /api/v1/admin/websites({key})/warehouses({warehouseKey}) Get a warehouse assigned to a website · Websites get warehouse by key and warehousekey #
Ask an LLM
“How do I check a warehouse that serves a particular website?”
“Can I view one warehouse's details for a website?”
Tell an agent
Get warehouse {warehouseKey} on website {key}.
Show warehouse {warehouseKey} used by website {key}.
GET /api/v1/admin/websites({key})/websitecurrencies({websitecurrencyKey}) Get a currency enabled on a website (admin) · Websites get website currency by key and websitecurrencykey #
Ask an LLM
“How do I check one currency configured for a website in the admin?”
“Can the admin API show a website currency assignment by key?”
Tell an agent
Get admin website currency {websitecurrencyKey} on website {key}.
In the admin, show currency {websitecurrencyKey} for website {key}.
GET /api/v1/admin/websites({key})/websitelanguages({websitelanguageKey}) Get a language enabled on a website (admin) · Websites get website language by key and websitelanguagekey #
Ask an LLM
“Is a given translation language switched on for a particular website in the admin?”
“Can the admin API show a website language assignment by key?”
Tell an agent
Get admin website language {websitelanguageKey} on website {key}.
In the admin, show language {websitelanguageKey} for website {key}.
GET /api/v1/websites/current/countries List countries available on the current site · Countries V1 get collection async #
Ask an LLM
“Which countries can shoppers choose on the current storefront?”
“What countries does the current website support for addresses?”
Tell an agent
List the countries available on the current website.
Show every country shoppers can pick on this storefront.
GET /api/v1/websites/current/countries/{countryId} Get a country on the current site · Countries V1 get async #
Ask an LLM
“How do I get the details of one country on the current storefront?”
“Can I fetch a single country's info for the current website by its id?”
Tell an agent
Get country {countryId} on the current website.
Show storefront details for country {countryId}.
GET /api/v1/websites/current Get the current website's details · Websites V1 get async #
Ask an LLM
“How do I get the settings of the website the storefront is running on?”
“What does the current website return about itself?”
Tell an agent
Get the current website.
Show me details of the storefront website I'm on.
GET /api/v1/websites/current/sitemessages Get site messages for the current website · Site messages V1 get async #
Ask an LLM
“How do I fetch the storefront site messages for a given language?”
“Can I look up a site message by its name and page through the results?”
Tell an agent
Get the site message named {name} on the current website.
List site messages in language {languageCode}.
GET /api/v1/websites/current/states List states on the current site · States V1 get collection async #
Ask an LLM
“Which states or provinces are available on the current storefront?”
“What regions can shoppers pick for an address on this website?”
Tell an agent
List the states available on the current website.
Show every state or province on this storefront.
GET /api/v1/websites/current/states/{stateId} Get a state on the current site · States V1 get async #
Ask an LLM
“How do I get one state's details on the current storefront?”
“Can I fetch a single state or province by its id for this website?”
Tell an agent
Get state {stateId} on the current website.
Show storefront details for state {stateId}.
GET /api/v1/websites/current/languages List languages on the current site · Languages V1 get collection async #
Ask an LLM
“Which languages does the current storefront offer?”
“What language options can shoppers switch between on this website?”
Tell an agent
List the languages available on the current website.
Show every language this storefront supports.
GET /api/v1/websites/current/languages/{languageId} Get a language on the current site · Languages V1 get async #
Ask an LLM
“How do I get one language's details on the current storefront?”
“Can I fetch a single storefront language by its id?”
Tell an agent
Get language {languageId} on the current website.
Show storefront details for language {languageId}.
GET /api/v1/websites/current/addressfields Get address field settings for the current site · Address fields V1 get async #
Ask an LLM
“Which address fields does the current storefront show and require?”
“How are the billing and shipping address forms configured on this website?”
Tell an agent
Get the address field configuration for the current website.
Show which address fields this storefront uses.
GET /api/v1/websites/current/currencies List currencies on the current site · Currencies V1 get collection async #
Ask an LLM
“Which currencies can shoppers use on the current storefront?”
“What currency options does this website offer?”
Tell an agent
List the currencies available on the current website.
Show every currency this storefront accepts.
GET /api/v1/websites/current/currencies/{currencyId} Get a currency on the current site · Currencies V1 get async #
Ask an LLM
“How do I get one currency's details on the current storefront?”
“Can I fetch a single storefront currency by its id?”
Tell an agent
Get currency {currencyId} on the current website.
Show storefront details for currency {currencyId}.
GET /api/v1/websites/current/crosssells List the current site's cross-sell products · Products V1 get cross sells async #
Ask an LLM
“What cross-sell products does the current storefront promote site-wide?”
“Can I get the website-level cross-sells to show shoppers?”
Tell an agent
List the cross-sell products for the current website.
Show the site-wide cross-sells on this storefront.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/optimizely:optimizely-websites-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

optimizely-websites-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Optimizely Websites API
  version: '1.0'
  description: 'Operations tagged Websites across 2 of this provider''s published API definitions: optimizely-configured-commerce-admin-api-v1-openapi.json, optimizely-configured-commerce-storefront-api-v1-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://dogfood.commerce.insitesandbox.com
security: []
tags:


# --- truncated at 32 KB (87 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/optimizely/refs/heads/main/openapi/optimizely-websites-api-openapi.yml