Skip to content

Latest commit

 

History

History
6371 lines (4351 loc) · 79.7 KB

reference.md

File metadata and controls

6371 lines (4351 loc) · 79.7 KB

Reference

Token

client.token.authorizedBy() -> Webflow.AuthorizedUser

📝 Description

Information about the Authorized User

Required Scope | authorized_user:read

🔌 Usage

await client.token.authorizedBy();

⚙️ Parameters

requestOptions: Token.RequestOptions

client.token.introspect() -> Webflow.Authorization

📝 Description

Information about the authorization token Access to this endpoint requires a bearer token from a []>Data Client App](/data/docs/getting-started-data-clients).

🔌 Usage

await client.token.introspect();

⚙️ Parameters

requestOptions: Token.RequestOptions

Sites

client.sites.list() -> Webflow.Sites

📝 Description

List of all sites the provided access token is able to access.

Required scope | sites:read

🔌 Usage

await client.sites.list();

⚙️ Parameters

requestOptions: Sites.RequestOptions

client.sites.get(siteId) -> Webflow.Site

📝 Description

Get details of a site.

Required scope | sites:read

🔌 Usage

await client.sites.get("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

requestOptions: Sites.RequestOptions

client.sites.getCustomDomain(siteId) -> Webflow.Domains

📝 Description

Get a list of all custom domains related to site.

Required scope | sites:read

🔌 Usage

await client.sites.getCustomDomain("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

requestOptions: Sites.RequestOptions

client.sites.publish(siteId, { ...params }) -> Webflow.SitesPublishResponse

📝 Description

Publishes a site to one or more more domains.

This endpoint has a limit of one successful publish queue per minute.

Required scope | sites:write

🔌 Usage

await client.sites.publish("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.SitesPublishRequest

requestOptions: Sites.RequestOptions

Collections

client.collections.list(siteId) -> Webflow.CollectionList

📝 Description

List of all Collections within a Site.

Required scope | cms:read

🔌 Usage

await client.collections.list("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

requestOptions: Collections.RequestOptions

client.collections.create(siteId, { ...params }) -> Webflow.Collection

📝 Description

Create a Collection for a site.

Required scope | cms:write

🔌 Usage

await client.collections.create("580e63e98c9a982ac9b8b741", {
    displayName: "Blog Posts",
    singularName: "Blog Post",
    slug: "posts",
});

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.CollectionsCreateRequest

requestOptions: Collections.RequestOptions

client.collections.get(collectionId) -> Webflow.Collection

📝 Description

Get the full details of a collection from its ID.

Required scope | cms:read

🔌 Usage

await client.collections.get("580e63fc8c9a982ac9b8b745");

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

requestOptions: Collections.RequestOptions

client.collections.delete(collectionId) -> void

📝 Description

Delete a collection using its ID.

Required scope | cms:write

🔌 Usage

await client.collections.delete("580e63fc8c9a982ac9b8b745");

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

requestOptions: Collections.RequestOptions

Pages

client.pages.list(siteId, { ...params }) -> Webflow.PageList

📝 Description

List of all pages for a site.

Required scope | pages:read

🔌 Usage

await client.pages.list("580e63e98c9a982ac9b8b741", {
    localeId: "65427cf400e02b306eaa04a0",
});

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.PagesListRequest

requestOptions: Pages.RequestOptions

client.pages.getMetadata(pageId, { ...params }) -> Webflow.Page

📝 Description

Get metadata information for a single page.

Required scope | pages:read

🔌 Usage

await client.pages.getMetadata("63c720f9347c2139b248e552", {
    localeId: "65427cf400e02b306eaa04a0",
});

⚙️ Parameters

pageId: string — Unique identifier for a Page

request: Webflow.PagesGetMetadataRequest

requestOptions: Pages.RequestOptions

client.pages.updatePageSettings(pageId, { ...params }) -> Webflow.Page

📝 Description

Update Page-level metadata, including SEO and Open Graph fields.

Required scope | pages:write

🔌 Usage

await client.pages.updatePageSettings("63c720f9347c2139b248e552", {
    localeId: "65427cf400e02b306eaa04a0",
    body: {
        id: "6596da6045e56dee495bcbba",
        siteId: "6258612d1ee792848f805dcf",
        title: "Guide to the Galaxy",
        slug: "guide-to-the-galaxy",
        createdOn: "2024-03-11T10:42:00Z",
        lastUpdated: "2024-03-11T10:42:42Z",
        archived: false,
        draft: false,
        canBranch: true,
        isBranch: false,
        seo: {
            title: "The Ultimate Hitchhiker's Guide to the Galaxy",
            description:
                "Everything you need to know about the galaxy, from avoiding Vogon poetry to the importance of towels.",
        },
        openGraph: {
            title: "Explore the Cosmos with The Ultimate Guide",
            titleCopied: false,
            description: "Dive deep into the mysteries of the universe with your guide to everything galactic.",
            descriptionCopied: false,
        },
        localeId: "653fd9af6a07fc9cfd7a5e57",
        publishedPath: "/en-us/guide-to-the-galaxy",
    },
});

⚙️ Parameters

pageId: string — Unique identifier for a Page

request: Webflow.UpdatePageSettingsRequest

requestOptions: Pages.RequestOptions

client.pages.getContent(pageId, { ...params }) -> Webflow.Dom

📝 Description

Get static content from a static page.

If you do not provide a Locale ID in your request, the response will return any content that can be localized from the Primary locale.

Required scope | pages:read

🔌 Usage

await client.pages.getContent("63c720f9347c2139b248e552", {
    localeId: "65427cf400e02b306eaa04a0",
});

⚙️ Parameters

pageId: string — Unique identifier for a Page

request: Webflow.PagesGetContentRequest

requestOptions: Pages.RequestOptions

client.pages.updateStaticContent(pageId, { ...params }) -> Webflow.UpdateStaticContentResponse

📝 Description

This endpoint allows for updating static content on a static page within a secondary locale. It is designed specifically for localized pages and can handle up to 1000 nodes per request.

Note:This endpoint is specifically for localized pages. Ensure that the locale specified is a valid secondary locale for the site.

Required scope | pages:write

🔌 Usage

await client.pages.updateStaticContent("63c720f9347c2139b248e552", {
    localeId: "65427cf400e02b306eaa04a0",
    nodes: [
        {
            nodeId: "a245c12d-995b-55ee-5ec7-aa36a6cad623",
            text: "<h1>The Hitchhiker\u2019s Guide to the Galaxy</h1>",
        },
        {
            nodeId: "a245c12d-995b-55ee-5ec7-aa36a6cad627",
            text: "<div><h3>Don\u2019t Panic!</h3><p>Always know where your towel is.</p></div>",
        },
        {
            nodeId: "a245c12d-995b-55ee-5ec7-aa36a6cad629",
            text: '<img alt="Marvin, the Paranoid Android" src="path/to/image/with/assetId/659595234426a9fcbad57043"/>',
        },
    ],
});

⚙️ Parameters

pageId: string — Unique identifier for a Page

request: Webflow.DomWrite

requestOptions: Pages.RequestOptions

Scripts

client.scripts.list(siteId) -> Webflow.RegisteredScriptList

📝 Description

List of scripts registered to a Site.

In order to use the Custom Code APIs for Sites and Pages, Custom Code Scripts must first be registered to a Site via the registered_scripts endpoints, and then applied to a Site or Page using the appropriate custom_code endpoints. Additionally, Scripts can be remotely hosted, or registered as inline snippets.

Access to this endpoint requires a bearer token from a Data Client App.

Required scope | custom_code:read

🔌 Usage

await client.scripts.list("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

requestOptions: Scripts.RequestOptions

client.scripts.registerHosted(siteId, { ...params }) -> Webflow.CustomCodeHostedResponse

📝 Description

Add a script to a Site's Custom Code registry.

In order to use the Custom Code APIs for Sites and Pages, Custom Code Scripts must first be registered to a Site via the registered_scripts endpoints, and then applied to a Site or Page using the appropriate custom_code endpoints. Additionally, Scripts can be remotely hosted, or registered as inline snippets.

Access to this endpoint requires a bearer token from a Data Client App.

Required scope | custom_code:write

🔌 Usage

await client.scripts.registerHosted("580e63e98c9a982ac9b8b741", {
    hostedLocation: "hostedLocation",
    integrityHash: "integrityHash",
    version: "version",
    displayName: "displayName",
});

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.CustomCodeHostedRequest

requestOptions: Scripts.RequestOptions

client.scripts.registerInline(siteId, { ...params }) -> Webflow.CustomCodeInlineResponse

📝 Description

Add a script to a Site's Custom Code registry. Inline scripts can be between 1 and 2000 characters.

In order to use the Custom Code APIs for Sites and Pages, Custom Code Scripts must first be registered to a Site via the registered_scripts endpoints, and then applied to a Site or Page using the appropriate custom_code endpoints.

Access to this endpoint requires a bearer token from a Data Client App.

Required scope | custom_code:write

🔌 Usage

await client.scripts.registerInline("580e63e98c9a982ac9b8b741", {
    sourceCode: "alert('hello world');",
    version: "0.0.1",
    displayName: "Alert",
});

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.CustomCodeInlineRequest

requestOptions: Scripts.RequestOptions

Assets

client.assets.list(siteId) -> Webflow.Assets

📝 Description

List assets for a given site

Required scope | assets:read

🔌 Usage

await client.assets.list("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

requestOptions: Assets.RequestOptions

client.assets.create(siteId, { ...params }) -> Webflow.AssetUpload

📝 Description

Create a new asset entry.

This endpoint generates a response with the following information: uploadUrl and uploadDetails. You can use these two properties to upload the file to Amazon s3 by making a POST request to the uploadUrl with the uploadDetails object as your header information in the request.

Required scope | assets:write

🔌 Usage

await client.assets.create("580e63e98c9a982ac9b8b741", {
    fileName: "file.png",
    fileHash: "3c7d87c9575702bc3b1e991f4d3c638e",
});

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.AssetsCreateRequest

requestOptions: Assets.RequestOptions

client.assets.get(assetId) -> Webflow.Asset

📝 Description

Get an Asset

Required scope | assets:read

🔌 Usage

await client.assets.get("580e63fc8c9a982ac9b8b745");

⚙️ Parameters

assetId: string — Unique identifier for an Asset on a site

requestOptions: Assets.RequestOptions

client.assets.delete(assetId) -> void

📝 Description

Delete an Asset

Required Scope: assets: write

🔌 Usage

await client.assets.delete("580e63fc8c9a982ac9b8b745");

⚙️ Parameters

assetId: string — Unique identifier for an Asset on a site

requestOptions: Assets.RequestOptions

client.assets.update(assetId, { ...params }) -> Webflow.Asset

📝 Description

Update an Asset

Required scope | assets:write

🔌 Usage

await client.assets.update("580e63fc8c9a982ac9b8b745");

⚙️ Parameters

assetId: string — Unique identifier for an Asset on a site

request: Webflow.AssetsUpdateRequest

requestOptions: Assets.RequestOptions

client.assets.listFolders(siteId) -> Webflow.AssetFolderList

📝 Description

List Asset Folders within a given site

Required scope | assets:read

🔌 Usage

await client.assets.listFolders("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

requestOptions: Assets.RequestOptions

client.assets.createFolder(siteId, { ...params }) -> Webflow.AssetFolder

📝 Description

Create an Asset Folder within a given site

Required scope | assets:write

🔌 Usage

await client.assets.createFolder("580e63e98c9a982ac9b8b741", {
    displayName: "my asset folder",
});

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.AssetsCreateFolderRequest

requestOptions: Assets.RequestOptions

client.assets.getFolder(assetFolderId) -> Webflow.AssetFolder

📝 Description

Get details about a specific Asset Folder

Required scope | assets:read

🔌 Usage

await client.assets.getFolder("6390c49774a71f0e3c1a08ee");

⚙️ Parameters

assetFolderId: string — Unique identifier for an Asset Folder

requestOptions: Assets.RequestOptions

Webhooks

client.webhooks.list(siteId) -> Webflow.WebhookList

📝 Description

List all App-created Webhooks registered for a given site

Required scope | sites:read

🔌 Usage

await client.webhooks.list("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

requestOptions: Webhooks.RequestOptions

client.webhooks.create(siteId, { ...params }) -> Webflow.Webhook

📝 Description

Create a new Webhook.

Limit of 75 registrations per triggerType, per site.

Access to this endpoint requires a bearer token from a Data Client App.
Required scope | `sites:write`

🔌 Usage

await client.webhooks.create("580e63e98c9a982ac9b8b741", {
    id: "582266e0cd48de0f0e3c6d8b",
    triggerType: "form_submission",
    url: "https://webhook.site/7f7f7f7f-7f7f-7f7f-7f7f-7f7f7f7f7f7f",
    workspaceId: "4f4e46fd476ea8c507000001",
    siteId: "562ac0395358780a1f5e6fbd",
    lastTriggered: "2023-02-08T23:59:28Z",
    createdOn: "2022-11-08T23:59:28Z",
});

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.Webhook

requestOptions: Webhooks.RequestOptions

client.webhooks.get(webhookId) -> Webflow.Webhook

📝 Description

Get a specific Webhook instance

Required scope: sites:read

🔌 Usage

await client.webhooks.get("580e64008c9a982ac9b8b754");

⚙️ Parameters

webhookId: string — Unique identifier for a Webhook

requestOptions: Webhooks.RequestOptions

client.webhooks.delete(webhookId) -> void

📝 Description

Remove a Webhook

Required scope: sites:read

🔌 Usage

await client.webhooks.delete("580e64008c9a982ac9b8b754");

⚙️ Parameters

webhookId: string — Unique identifier for a Webhook

requestOptions: Webhooks.RequestOptions

Forms

client.forms.list(siteId, { ...params }) -> Webflow.FormList

📝 Description

List forms for a given site.

Required scope | forms:read

🔌 Usage

await client.forms.list("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.FormsListRequest

requestOptions: Forms.RequestOptions

client.forms.get(formId) -> Webflow.Form

📝 Description

Get information about a given form.

Required scope | forms:read

🔌 Usage

await client.forms.get("580e63e98c9a982ac9b8b741");

⚙️ Parameters

formId: string — Unique identifier for a Form

requestOptions: Forms.RequestOptions

client.forms.listSubmissions(formId, { ...params }) -> Webflow.FormSubmissionList

📝 Description

List form submissions for a given form

Required scope | forms:read

🔌 Usage

await client.forms.listSubmissions("580e63e98c9a982ac9b8b741");

⚙️ Parameters

formId: string — Unique identifier for a Form

request: Webflow.FormsListSubmissionsRequest

requestOptions: Forms.RequestOptions

client.forms.getSubmission(formSubmissionId) -> Webflow.FormSubmission

📝 Description

Get information about a given form submissio.

Required scope | forms:read

🔌 Usage

await client.forms.getSubmission("580e63e98c9a982ac9b8b741");

⚙️ Parameters

formSubmissionId: string — Unique identifier for a Form Submission

requestOptions: Forms.RequestOptions

client.forms.updateSubmission(formSubmissionId, { ...params }) -> Webflow.FormSubmission

📝 Description

Update hidden fields on a form submission

Required scope | forms:write

🔌 Usage

await client.forms.updateSubmission("580e63e98c9a982ac9b8b741");

⚙️ Parameters

formSubmissionId: string — Unique identifier for a Form Submission

request: Webflow.FormsUpdateSubmissionRequest

requestOptions: Forms.RequestOptions

Users

client.users.list(siteId, { ...params }) -> Webflow.UserList

📝 Description

Get a list of users for a site

Required scope | users:read

🔌 Usage

await client.users.list("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.UsersListRequest

requestOptions: Users.RequestOptions

client.users.get(siteId, userId) -> Webflow.User

📝 Description

Get a User by ID

Required scope | users:read

🔌 Usage

await client.users.get("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

userId: string — Unique identifier for a User

requestOptions: Users.RequestOptions

client.users.delete(siteId, userId) -> void

📝 Description

Delete a User by ID

Required scope | users:write

🔌 Usage

await client.users.delete("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

userId: string — Unique identifier for a User

requestOptions: Users.RequestOptions

client.users.update(siteId, userId, { ...params }) -> Webflow.User

📝 Description

Update a User by ID

Required scope | users:write

The email and password fields cannot be updated using this endpoint

🔌 Usage

await client.users.update("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741", {
    data: {
        name: "Some One",
        acceptPrivacy: false,
        acceptCommunications: false,
    },
    accessGroups: ["webflowers", "platinum", "free-tier"],
});

⚙️ Parameters

siteId: string — Unique identifier for a Site

userId: string — Unique identifier for a User

request: Webflow.UsersUpdateRequest

requestOptions: Users.RequestOptions

client.users.invite(siteId, { ...params }) -> Webflow.User

📝 Description

Create and invite a user with an email address.

The user will be sent and invite via email, which they will need to accept in order to join paid any paid access group.

Required scope | users:write

🔌 Usage

await client.users.invite("580e63e98c9a982ac9b8b741", {
    email: "[email protected]",
    accessGroups: ["webflowers"],
});

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.UsersInviteRequest

requestOptions: Users.RequestOptions

AccessGroups

client.accessGroups.list(siteId, { ...params }) -> Webflow.AccessGroupList

📝 Description

Get a list of access groups for a site

Required scope | users:read

🔌 Usage

await client.accessGroups.list("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.AccessGroupsListRequest

requestOptions: AccessGroups.RequestOptions

Products

client.products.list(siteId, { ...params }) -> Webflow.ProductAndSkUsList

📝 Description

Retrieve all products for a site.

Use limit and offset to page through all products with subsequent requests. All SKUs for each product will also be fetched and returned. The limit, offset and total values represent Products only and do not include any SKUs.

Required scope | ecommerce:read

🔌 Usage

await client.products.list("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.ProductsListRequest

requestOptions: Products.RequestOptions

client.products.create(siteId, { ...params }) -> Webflow.ProductAndSkUs

📝 Description

Create a new product and SKU.

When you create a product, you will always create a SKU, since a Product Item must have, at minimum, a single SKU.

To create a Product with multiple SKUs - for example a T-shirt in sizes small, medium and large:

  • Create parameters in sku-properties, also known as product options and variants..
  • A single sku-property would be color. Within the color property, list the various colors of T-shirts as an array of enum values: royal-blue, crimson-red, and forrest-green.
  • Once, you've created a Product and its sku-properties with enum values, Webflow will create a default SKU, which will automatically be a combination of the first sku-properties you've created.
  • In our example, the default SKU will be a Royal Blue T-Shirt, because our first enum of our Color sku-property is Royal Blue.
  • After you've created your product, you can create additional SKUs using the Create SKU endpoint.

Upon creation, the default product type will be Advanced, which ensures all Product and SKU fields will be shown to users in the Designer.

Required scope | ecommerce:write

🔌 Usage

await client.products.create("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.ProductSkuCreate

requestOptions: Products.RequestOptions

client.products.get(siteId, productId) -> Webflow.ProductAndSkUs

📝 Description

Retrieve a single product by its ID. All of its SKUs will also be retrieved.

Required scope | ecommerce:read

🔌 Usage

await client.products.get("580e63e98c9a982ac9b8b741", "580e63fc8c9a982ac9b8b745");

⚙️ Parameters

siteId: string — Unique identifier for a Site

productId: string — Unique identifier for a Product

requestOptions: Products.RequestOptions

client.products.update(siteId, productId, { ...params }) -> Webflow.Product

📝 Description

Update an existing Product.

Updating an existing Product will set the product type to Advanced, which ensures all Product and SKU fields will be shown to users in the Designer.

Required scope | ecommerce:write

🔌 Usage

await client.products.update("580e63e98c9a982ac9b8b741", "580e63fc8c9a982ac9b8b745");

⚙️ Parameters

siteId: string — Unique identifier for a Site

productId: string — Unique identifier for a Product

request: Webflow.ProductSkuUpdate

requestOptions: Products.RequestOptions

client.products.createSku(siteId, productId, { ...params }) -> Webflow.ProductsCreateSkuResponse

📝 Description

Create additional SKUs to manage every option and variant of your Product.

Creating SKUs through the API will set the product type to Advanced, which ensures all Product and SKU fields will be shown to users in the Designer.

Required scope | ecommerce:write

🔌 Usage

await client.products.createSku("580e63e98c9a982ac9b8b741", "580e63fc8c9a982ac9b8b745", {
    skus: [{}],
});

⚙️ Parameters

siteId: string — Unique identifier for a Site

productId: string — Unique identifier for a Product

request: Webflow.ProductsCreateSkuRequest

requestOptions: Products.RequestOptions

client.products.updateSku(siteId, productId, skuId, { ...params }) -> Webflow.Sku

📝 Description

Update a specified SKU.

Updating an existing SKU will set the Product type to Advanced, which ensures all Product and SKU fields will be shown to users in the Designer.

Required scope | ecommerce:write

🔌 Usage

await client.products.updateSku("580e63e98c9a982ac9b8b741", "580e63fc8c9a982ac9b8b745", "5e8518516e147040726cc415", {
    sku: {},
});

⚙️ Parameters

siteId: string — Unique identifier for a Site

productId: string — Unique identifier for a Product

skuId: string — Unique identifier for a SKU

request: Webflow.ProductsUpdateSkuRequest

requestOptions: Products.RequestOptions

Orders

client.orders.list(siteId, { ...params }) -> Webflow.OrderList

📝 Description

List all orders created for a given site.

Required scope | ecommerce:read

🔌 Usage

await client.orders.list("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.OrdersListRequest

requestOptions: Orders.RequestOptions

client.orders.get(siteId, orderId) -> Webflow.Order

📝 Description

Retrieve a single product by its ID. All of its SKUs will also be retrieved.

Required scope | ecommerce:read

🔌 Usage

await client.orders.get("580e63e98c9a982ac9b8b741", "5e8518516e147040726cc415");

⚙️ Parameters

siteId: string — Unique identifier for a Site

orderId: string — Unique identifier for an Order

requestOptions: Orders.RequestOptions

client.orders.update(siteId, orderId, { ...params }) -> Webflow.Order

📝 Description

This API lets you update the fields, comment, shippingProvider, and/or shippingTracking for a given order. All three fields can be updated simultaneously or independently.

Required scope | ecommerce:write

🔌 Usage

await client.orders.update("580e63e98c9a982ac9b8b741", "5e8518516e147040726cc415");

⚙️ Parameters

siteId: string — Unique identifier for a Site

orderId: string — Unique identifier for an Order

request: Webflow.OrdersUpdateRequest

requestOptions: Orders.RequestOptions

client.orders.updateFulfill(siteId, orderId, { ...params }) -> Webflow.Order

📝 Description

Updates an order's status to fulfilled

Required scope | ecommerce:write

🔌 Usage

await client.orders.updateFulfill("580e63e98c9a982ac9b8b741", "5e8518516e147040726cc415");

⚙️ Parameters

siteId: string — Unique identifier for a Site

orderId: string — Unique identifier for an Order

request: Webflow.OrdersUpdateFulfillRequest

requestOptions: Orders.RequestOptions

client.orders.updateUnfulfill(siteId, orderId) -> Webflow.Order

📝 Description

Updates an order's status to unfulfilled

Required scope | ecommerce:write

🔌 Usage

await client.orders.updateUnfulfill("580e63e98c9a982ac9b8b741", "5e8518516e147040726cc415");

⚙️ Parameters

siteId: string — Unique identifier for a Site

orderId: string — Unique identifier for an Order

requestOptions: Orders.RequestOptions

client.orders.refund(siteId, orderId, { ...params }) -> Webflow.Order

📝 Description

This API will reverse a Stripe charge and refund an order back to a customer. It will also set the order's status to refunded.

Required scope | ecommerce:write

🔌 Usage

await client.orders.refund("580e63e98c9a982ac9b8b741", "5e8518516e147040726cc415");

⚙️ Parameters

siteId: string — Unique identifier for a Site

orderId: string — Unique identifier for an Order

request: Webflow.OrdersRefundRequest

requestOptions: Orders.RequestOptions

Inventory

client.inventory.list(collectionId, itemId) -> Webflow.InventoryItem

📝 Description

List the current inventory levels for a particular SKU item.

Required scope | ecommerce:read

🔌 Usage

await client.inventory.list("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754");

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

itemId: string — Unique identifier for an Item

requestOptions: Inventory.RequestOptions

client.inventory.update(collectionId, itemId, { ...params }) -> Webflow.InventoryItem

📝 Description

Updates the current inventory levels for a particular SKU item.

Updates may be given in one or two methods, absolutely or incrementally.

  • Absolute updates are done by setting quantity directly.
  • Incremental updates are by specifying the inventory delta in updateQuantity which is then added to the quantity stored on the server.

Required scope | ecommerce:write

🔌 Usage

await client.inventory.update("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", {
    inventoryType: "infinite",
});

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

itemId: string — Unique identifier for an Item

request: Webflow.InventoryUpdateRequest

requestOptions: Inventory.RequestOptions

Ecommerce

client.ecommerce.getSettings(siteId) -> Webflow.EcommerceSettings

📝 Description

Retrieve ecommerce settings for a site.

Required scope | ecommerce:read

🔌 Usage

await client.ecommerce.getSettings("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

requestOptions: Ecommerce.RequestOptions

Collections Fields

client.collections.fields.create(collectionId, { ...params }) -> Webflow.Field

📝 Description

Create a custom field in a collection.

Slugs must be all lowercase letters without spaces. If you pass a string with uppercase letters and/or spaces to the "Slug" property, Webflow will convert the slug to lowercase and replace spaces with "-."

Only some field types can be created through the API. This endpoint does not currently support bulk creation.

Required scope | cms:write

🔌 Usage

await client.collections.fields.create("580e63fc8c9a982ac9b8b745", {
    isRequired: false,
    type: "RichText",
    displayName: "Post Body",
    helpText: "Add the body of your post here",
});

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

request: Webflow.collections.FieldCreate

requestOptions: Fields.RequestOptions

client.collections.fields.delete(collectionId, fieldId) -> void

📝 Description

Delete a custom field in a collection. This endpoint does not currently support bulk deletion.

Required scope | cms:write

🔌 Usage

await client.collections.fields.delete("580e63fc8c9a982ac9b8b745", "580e63fc8c9a982ac9b8b745");

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

fieldId: string — Unique identifier for a Field in a collection

requestOptions: Fields.RequestOptions

client.collections.fields.update(collectionId, fieldId, { ...params }) -> Webflow.Field

📝 Description

Update a custom field in a collection.

Required scope | cms:write

🔌 Usage

await client.collections.fields.update("580e63fc8c9a982ac9b8b745", "580e63fc8c9a982ac9b8b745", {
    isRequired: false,
    displayName: "Post Body",
    helpText: "Add the body of your post here",
});

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

fieldId: string — Unique identifier for a Field in a collection

request: Webflow.collections.FieldUpdate

requestOptions: Fields.RequestOptions

Collections Items

client.collections.items.listItems(collectionId, { ...params }) -> Webflow.CollectionItemList

📝 Description

List of all Items within a Collection.

Required scope | CMS:read

🔌 Usage

await client.collections.items.listItems("580e63fc8c9a982ac9b8b745");

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

request: Webflow.collections.ItemsListItemsRequest

requestOptions: Items.RequestOptions

client.collections.items.createItem(collectionId, { ...params }) -> Webflow.CollectionItem

📝 Description

Create Item(s) in a Collection.

To create items across multiple locales, please use this endpoint.

Required scope | CMS:write

🔌 Usage

await client.collections.items.createItem("580e63fc8c9a982ac9b8b745", {
    isArchived: false,
    isDraft: false,
    fieldData: {
        name: "Pan Galactic Gargle Blaster Recipe",
        slug: "pan-galactic-gargle-blaster",
    },
});

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

request: Webflow.ItemsCreateItemRequest

requestOptions: Items.RequestOptions

client.collections.items.deleteItems(collectionId, { ...params }) -> void

📝 Description

Delete Items from a Collection.

Note: If the cmsLocaleId parameter is undefined or empty and the items are localized, items will be deleted only in the primary locale.

Required scope | CMS:write

🔌 Usage

await client.collections.items.deleteItems("580e63fc8c9a982ac9b8b745");

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

request: Webflow.collections.ItemsDeleteItemsRequest

requestOptions: Items.RequestOptions

client.collections.items.updateItems(collectionId, { ...params }) -> Webflow.CollectionItem

📝 Description

Update a single item or multiple items (up to 100) in a Collection.

Note: If the cmsLocaleId parameter is undefined or empty and the items are localized, items will be updated only in the primary locale.

Required scope | CMS:write

🔌 Usage

await client.collections.items.updateItems("580e63fc8c9a982ac9b8b745", {
    items: [
        {
            id: "66f6ed9576ddacf3149d5ea6",
            cmsLocaleId: "66f6e966c9e1dc700a857ca5",
            fieldData: {
                name: "Ne Paniquez Pas",
                slug: "ne-paniquez-pas",
            },
        },
        {
            id: "66f6ed9576ddacf3149d5ea6",
            cmsLocaleId: "66f6e966c9e1dc700a857ca4",
            fieldData: {
                name: "No Entrar en P\u00E1nico",
                slug: "no-entrar-en-panico",
            },
        },
        {
            id: "66f6ed9576ddacf3149d5eaa",
            cmsLocaleId: "66f6e966c9e1dc700a857ca5",
            fieldData: {
                name: "Au Revoir et Merci pour Tous les Poissons",
                slug: "au-revoir-et-merci",
            },
        },
        {
            id: "66f6ed9576ddacf3149d5eaa",
            cmsLocaleId: "66f6e966c9e1dc700a857ca4",
            fieldData: {
                name: "Hasta Luego y Gracias por Todo el Pescado",
                slug: "hasta-luego-y-gracias",
            },
        },
    ],
});

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

request: Webflow.collections.ItemsUpdateItemsRequest

requestOptions: Items.RequestOptions

client.collections.items.listItemsLive(collectionId, { ...params }) -> Webflow.CollectionItemList

📝 Description

List of all live Items within a Collection.

Required scope | CMS:read

🔌 Usage

await client.collections.items.listItemsLive("580e63fc8c9a982ac9b8b745");

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

request: Webflow.collections.ItemsListItemsLiveRequest

requestOptions: Items.RequestOptions

client.collections.items.createItemLive(collectionId, { ...params }) -> Webflow.CollectionItem

📝 Description

Create live Item(s) in a Collection. The Item(s) will be published to the live site.

To create items across multiple locales, please use this endpoint.

Required scope | CMS:write

🔌 Usage

await client.collections.items.createItemLive("580e63fc8c9a982ac9b8b745", {
    isArchived: false,
    isDraft: false,
    fieldData: {
        name: "Pan Galactic Gargle Blaster Recipe",
        slug: "pan-galactic-gargle-blaster",
    },
});

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

request: Webflow.ItemsCreateItemLiveRequest

requestOptions: Items.RequestOptions

client.collections.items.deleteItemsLive(collectionId, { ...params }) -> void

📝 Description

Remove an item or multiple items (up to 100 items) from the live site. Deleting published items will unpublish the items from the live site and set them to draft.

Note: If the cmsLocaleId parameter is undefined or empty and the items are localized, items will be unpublished only in the primary locale.

Required scope | CMS:write

🔌 Usage

await client.collections.items.deleteItemsLive("580e63fc8c9a982ac9b8b745");

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

request: Webflow.collections.ItemsDeleteItemsLiveRequest

requestOptions: Items.RequestOptions

client.collections.items.updateItemsLive(collectionId, { ...params }) -> Webflow.CollectionItemListNoPagination

📝 Description

Update a single live item or multiple live items (up to 100) in a Collection

Note: If the cmsLocaleId parameter is undefined or empty and the items are localized, items will be updated only in the primary locale.

Required scope | CMS:write

🔌 Usage

await client.collections.items.updateItemsLive("580e63fc8c9a982ac9b8b745", {
    items: [
        {
            id: "66f6ed9576ddacf3149d5ea6",
            cmsLocaleId: "66f6e966c9e1dc700a857ca5",
            fieldData: {
                name: "Ne Paniquez Pas",
                slug: "ne-paniquez-pas",
            },
        },
        {
            id: "66f6ed9576ddacf3149d5ea6",
            cmsLocaleId: "66f6e966c9e1dc700a857ca4",
            fieldData: {
                name: "No Entrar en P\u00E1nico",
                slug: "no-entrar-en-panico",
            },
        },
        {
            id: "66f6ed9576ddacf3149d5eaa",
            cmsLocaleId: "66f6e966c9e1dc700a857ca5",
            fieldData: {
                name: "Au Revoir et Merci pour Tous les Poissons",
                slug: "au-revoir-et-merci",
            },
        },
        {
            id: "66f6ed9576ddacf3149d5eaa",
            cmsLocaleId: "66f6e966c9e1dc700a857ca4",
            fieldData: {
                name: "Hasta Luego y Gracias por Todo el Pescado",
                slug: "hasta-luego-y-gracias",
            },
        },
    ],
});

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

request: Webflow.collections.ItemsUpdateItemsLiveRequest

requestOptions: Items.RequestOptions

client.collections.items.createItems(collectionId, { ...params }) -> Webflow.BulkCollectionItem

📝 Description

Create an item or multiple items in a CMS Collection across multiple corresponding locales.

Notes:

  • This endpoint can create up to 100 items in a request.
  • If the cmsLocaleIds parameter is undefined or empty and localization is enabled, items will only be created in the primary locale.

Required scope | CMS:write

🔌 Usage

await client.collections.items.createItems("580e63fc8c9a982ac9b8b745", {
    cmsLocaleIds: ["66f6e966c9e1dc700a857ca3", "66f6e966c9e1dc700a857ca4", "66f6e966c9e1dc700a857ca5"],
    isArchived: false,
    isDraft: false,
    fieldData: {
        name: "Don\u2019t Panic",
        slug: "dont-panic",
    },
});

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

request: Webflow.collections.CreateBulkCollectionItemRequestBody

requestOptions: Items.RequestOptions

client.collections.items.getItem(collectionId, itemId, { ...params }) -> Webflow.CollectionItem

📝 Description

Get details of a selected Collection Item.

Required scope | CMS:read

🔌 Usage

await client.collections.items.getItem("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754");

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

itemId: string — Unique identifier for an Item

request: Webflow.collections.ItemsGetItemRequest

requestOptions: Items.RequestOptions

client.collections.items.deleteItem(collectionId, itemId, { ...params }) -> void

📝 Description

Delete an Item from a Collection. This endpoint does not currently support bulk deletion.

Required scope | CMS:write

🔌 Usage

await client.collections.items.deleteItem("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754");

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

itemId: string — Unique identifier for an Item

request: Webflow.collections.ItemsDeleteItemRequest

requestOptions: Items.RequestOptions

client.collections.items.updateItem(collectionId, itemId, { ...params }) -> Webflow.CollectionItem

📝 Description

Update a selected Item in a Collection.

Required scope | CMS:write

🔌 Usage

await client.collections.items.updateItem("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", {
    isArchived: false,
    isDraft: false,
    fieldData: {
        name: "Pan Galactic Gargle Blaster Recipe",
        slug: "pan-galactic-gargle-blaster",
    },
});

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

itemId: string — Unique identifier for an Item

request: Webflow.CollectionItemPatchSingle

requestOptions: Items.RequestOptions

client.collections.items.getItemLive(collectionId, itemId, { ...params }) -> Webflow.CollectionItem

📝 Description

Get details of a selected Collection live Item.

Required scope | CMS:read

🔌 Usage

await client.collections.items.getItemLive("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754");

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

itemId: string — Unique identifier for an Item

request: Webflow.collections.ItemsGetItemLiveRequest

requestOptions: Items.RequestOptions

client.collections.items.deleteItemLive(collectionId, itemId, { ...params }) -> void

📝 Description

Remove a live item from the site. Removing a published item will unpublish the item from the live site and set it to draft.

This endpoint does not currently support bulk deletion.

Required scope | CMS:write

🔌 Usage

await client.collections.items.deleteItemLive("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754");

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

itemId: string — Unique identifier for an Item

request: Webflow.collections.ItemsDeleteItemLiveRequest

requestOptions: Items.RequestOptions

client.collections.items.updateItemLive(collectionId, itemId, { ...params }) -> Webflow.CollectionItem

📝 Description

Update a selected live Item in a Collection. The updates for this Item will be published to the live site.

Required scope | CMS:write

🔌 Usage

await client.collections.items.updateItemLive("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", {
    isArchived: false,
    isDraft: false,
    fieldData: {
        name: "Pan Galactic Gargle Blaster Recipe",
        slug: "pan-galactic-gargle-blaster",
    },
});

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

itemId: string — Unique identifier for an Item

request: Webflow.CollectionItemPatchSingle

requestOptions: Items.RequestOptions

client.collections.items.publishItem(collectionId, { ...params }) -> Webflow.ItemsPublishItemResponse

📝 Description

Publish an item or multiple items.

Required scope | cms:write

🔌 Usage

await client.collections.items.publishItem("580e63fc8c9a982ac9b8b745", {
    itemIds: ["itemIds"],
});

⚙️ Parameters

collectionId: string — Unique identifier for a Collection

request: Webflow.collections.ItemsPublishItemRequest

requestOptions: Items.RequestOptions

Pages Scripts

client.pages.scripts.getCustomCode(pageId) -> Webflow.ScriptApplyList

📝 Description

Get all registered scripts that have been applied to a specific Page.

In order to use the Custom Code APIs for Sites and Pages, Custom Code Scripts must first be registered to a Site via the registered_scripts endpoints, and then applied to a Site or Page using the appropriate custom_code endpoints.

Access to this endpoint requires a bearer token from a Data Client App.

Required scope | custom_code:read

🔌 Usage

await client.pages.scripts.getCustomCode("63c720f9347c2139b248e552");

⚙️ Parameters

pageId: string — Unique identifier for a Page

requestOptions: Scripts.RequestOptions

client.pages.scripts.upsertCustomCode(pageId, { ...params }) -> Webflow.ScriptApplyList

📝 Description

Add a registered script to a Page.

In order to use the Custom Code APIs for Sites and Pages, Custom Code Scripts must first be registered to a Site via the registered_scripts endpoints, and then applied to a Site or Page using the appropriate custom_code endpoints.

Access to this endpoint requires a bearer token from a Data Client App.

Required scope | custom_code:write

🔌 Usage

await client.pages.scripts.upsertCustomCode("63c720f9347c2139b248e552", {
    scripts: [
        {
            id: "cms_slider",
            location: "header",
            version: "1.0.0",
            attributes: {
                "my-attribute": "some-value",
            },
        },
        {
            id: "alert",
            location: "header",
            version: "0.0.1",
        },
    ],
});

⚙️ Parameters

pageId: string — Unique identifier for a Page

request: Webflow.ScriptApplyList

requestOptions: Scripts.RequestOptions

client.pages.scripts.deleteCustomCode(pageId) -> void

📝 Description

Delete the custom code block that an app has created for a page

In order to use the Custom Code APIs for Sites and Pages, Custom Code Scripts must first be registered to a Site via the registered_scripts endpoints, and then applied to a Site or Page using the appropriate custom_code endpoints.

Access to this endpoint requires a bearer token from a Data Client App.

Required scope | custom_code:write

🔌 Usage

await client.pages.scripts.deleteCustomCode("63c720f9347c2139b248e552");

⚙️ Parameters

pageId: string — Unique identifier for a Page

requestOptions: Scripts.RequestOptions

Sites ActivityLogs

client.sites.activityLogs.list(siteId, { ...params }) -> Webflow.SiteActivityLogResponse

📝 Description

Retrieve Activity Logs for a specific Site. Requires Site to be on an Enterprise plan.

Required scope | site_activity:read

🔌 Usage

await client.sites.activityLogs.list("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.sites.ActivityLogsListRequest

requestOptions: ActivityLogs.RequestOptions

Sites Scripts

client.sites.scripts.getCustomCode(siteId) -> Webflow.ScriptApplyList

📝 Description

Get all registered scripts that have been applied to a specific Site.

Access to this endpoint requires a bearer token from a Data Client App.

Required scope | custom_code:read

🔌 Usage

await client.sites.scripts.getCustomCode("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

requestOptions: Scripts.RequestOptions

client.sites.scripts.upsertCustomCode(siteId, { ...params }) -> Webflow.ScriptApplyList

📝 Description

Add a registered script to a Site.

In order to use the Custom Code APIs for Sites and Pages, Custom Code Scripts must first be registered to a Site via the registered_scripts endpoints, and then applied to a Site or Page using the appropriate custom_code endpoints.

Access to this endpoint requires a bearer token from a Data Client App.

Required scope | custom_code:write

🔌 Usage

await client.sites.scripts.upsertCustomCode("580e63e98c9a982ac9b8b741", {
    scripts: [
        {
            id: "cms_slider",
            location: "header",
            version: "1.0.0",
            attributes: {
                "my-attribute": "some-value",
            },
        },
        {
            id: "alert",
            location: "header",
            version: "0.0.1",
        },
    ],
});

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.ScriptApplyList

requestOptions: Scripts.RequestOptions

client.sites.scripts.deleteCustomCode(siteId) -> void

📝 Description

Delete the custom code block that an app created for a Site

Access to this endpoint requires a bearer token from a Data Client App.

Required scope | custom_code:write

🔌 Usage

await client.sites.scripts.deleteCustomCode("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

requestOptions: Scripts.RequestOptions

client.sites.scripts.listCustomCodeBlocks(siteId, { ...params }) -> Webflow.ListCustomCodeBlocks

📝 Description

Get all instances of Custom Code applied to a Site or Pages.

Access to this endpoint requires a bearer token from a Data Client App.

Required scope | custom_code:read

🔌 Usage

await client.sites.scripts.listCustomCodeBlocks("580e63e98c9a982ac9b8b741");

⚙️ Parameters

siteId: string — Unique identifier for a Site

request: Webflow.sites.ScriptsListCustomCodeBlocksRequest

requestOptions: Scripts.RequestOptions