From c0764b92bd88024d3d76742ed9b56682eb36d624 Mon Sep 17 00:00:00 2001 From: "fern-api[bot]" <115122769+fern-api[bot]@users.noreply.github.com> Date: Tue, 4 Nov 2025 19:10:25 +0000 Subject: [PATCH] SDK regeneration --- .mock/definition/__package__.yml | 4619 ----------------- .mock/definition/accessGroups.yml | 81 - .mock/definition/api.yml | 20 - .mock/definition/assets.yml | 454 -- .mock/definition/collections.yml | 339 -- .mock/definition/collections/fields.yml | 206 - .mock/definition/collections/items.yml | 1765 ------- .mock/definition/comments.yml | 40 - .mock/definition/components.yml | 504 -- .mock/definition/ecommerce.yml | 43 - .mock/definition/forms.yml | 450 -- .mock/definition/inventory.yml | 148 - .mock/definition/items.yml | 99 - .mock/definition/orders.yml | 1877 ------- .mock/definition/pages.yml | 581 --- .mock/definition/pages/scripts.yml | 149 - .mock/definition/products.yml | 627 --- .mock/definition/scripts.yml | 226 - .mock/definition/sites.yml | 519 -- .mock/definition/sites/activityLogs.yml | 68 - .mock/definition/sites/comments.yml | 323 -- .mock/definition/sites/plans.yml | 46 - .mock/definition/sites/redirects.yml | 213 - .mock/definition/sites/robotsTxt.yml | 221 - .mock/definition/sites/scripts.yml | 231 - .mock/definition/sites/wellKnown.yml | 114 - .mock/definition/token.yml | 74 - .mock/definition/users.yml | 580 --- .mock/definition/webhooks.yml | 188 - .mock/definition/workspaces/auditLogs.yml | 119 - .mock/fern.config.json | 4 - reference.md | 491 +- src/Client.ts | 4 +- .../resources/accessGroups/client/Client.ts | 19 +- .../requests/AccessGroupsListRequest.ts | 6 +- src/api/resources/assets/client/Client.ts | 39 +- .../client/requests/AssetsListRequest.ts | 21 + .../resources/assets/client/requests/index.ts | 1 + .../resources/collections/client/Client.ts | 13 +- .../resources/fields/client/Client.ts | 13 +- .../resources/items/client/Client.ts | 79 +- .../CreateBulkCollectionItemRequestBody.ts | 4 + .../requests/ItemsCreateItemLiveRequest.ts | 6 +- .../client/requests/ItemsCreateItemRequest.ts | 6 +- .../requests/ItemsDeleteItemLiveRequest.ts | 4 +- .../client/requests/ItemsDeleteItemRequest.ts | 4 +- .../requests/ItemsGetItemLiveRequest.ts | 4 +- .../client/requests/ItemsGetItemRequest.ts | 4 +- .../requests/ItemsListItemsLiveRequest.ts | 10 +- .../client/requests/ItemsListItemsRequest.ts | 10 +- .../requests/ItemsUpdateItemLiveRequest.ts | 5 +- .../client/requests/ItemsUpdateItemRequest.ts | 5 +- .../requests/ItemsUpdateItemsLiveRequest.ts | 4 + .../requests/ItemsUpdateItemsRequest.ts | 2 + src/api/resources/components/client/Client.ts | 34 +- .../client/requests/ComponentDomWrite.ts | 4 +- .../requests/ComponentPropertiesWrite.ts | 4 +- .../requests/ComponentsGetContentRequest.ts | 8 +- .../ComponentsGetPropertiesRequest.ts | 8 +- .../client/requests/ComponentsListRequest.ts | 4 +- .../types/ComponentDomWriteNodesItem.ts | 10 +- src/api/resources/ecommerce/client/Client.ts | 13 +- src/api/resources/forms/client/Client.ts | 619 ++- .../forms/client/requests/FormsListRequest.ts | 5 +- ...ormsListSubmissionsByFormAndSiteRequest.ts | 21 + .../FormsListSubmissionsBySiteRequest.ts | 4 +- .../requests/FormsListSubmissionsRequest.ts | 5 +- .../FormsUpdateSubmissionBySiteRequest.ts | 12 + .../resources/forms/client/requests/index.ts | 2 + src/api/resources/inventory/client/Client.ts | 13 +- src/api/resources/orders/client/Client.ts | 19 +- .../client/requests/OrdersListRequest.ts | 6 +- src/api/resources/pages/client/Client.ts | 36 +- .../client/requests/PageMetadataWrite.ts | 11 +- .../client/requests/PagesGetContentRequest.ts | 8 +- .../requests/PagesGetMetadataRequest.ts | 4 +- .../pages/client/requests/PagesListRequest.ts | 8 +- .../pages/resources/scripts/client/Client.ts | 13 +- .../pages/types/PageDomWriteNodesItem.ts | 10 +- src/api/resources/products/client/Client.ts | 18 +- .../client/requests/ProductsListRequest.ts | 5 +- src/api/resources/scripts/client/Client.ts | 13 +- src/api/resources/sites/client/Client.ts | 13 +- .../resources/activityLogs/client/Client.ts | 18 +- .../requests/ActivityLogsListRequest.ts | 5 +- .../sites/resources/comments/client/Client.ts | 31 +- .../CommentsGetCommentThreadRequest.ts | 10 +- .../CommentsListCommentRepliesRequest.ts | 10 +- .../CommentsListCommentThreadsRequest.ts | 10 +- .../sites/resources/plans/client/Client.ts | 13 +- .../resources/redirects/client/Client.ts | 13 +- .../resources/robotsTxt/client/Client.ts | 13 +- .../sites/resources/scripts/client/Client.ts | 18 +- .../ScriptsListCustomCodeBlocksRequest.ts | 5 +- .../resources/wellKnown/client/Client.ts | 18 +- .../client/requests/WellKnownFile.ts | 5 +- src/api/resources/token/client/Client.ts | 13 +- src/api/resources/users/client/Client.ts | 19 +- .../users/client/requests/UsersListRequest.ts | 6 +- src/api/resources/webhooks/client/Client.ts | 13 +- src/api/resources/workspaces/client/Client.ts | 4 +- .../resources/auditLogs/client/Client.ts | 21 +- .../AuditLogsGetWorkspaceAuditLogsRequest.ts | 8 +- src/api/types/CollectionItemChanged.ts | 2 +- src/api/types/CollectionItemChangedPayload.ts | 7 - src/api/types/CollectionItemCreated.ts | 2 +- src/api/types/CollectionItemCreatedPayload.ts | 7 - src/api/types/CollectionItemPublished.ts | 11 + ...nentInstanceNodePropertyOverridesWrite.ts} | 2 +- .../{ComponentNodeDom.ts => ComponentNode.ts} | 2 +- src/api/types/Dom.ts | 2 +- .../types/{ImageNodeDom.ts => ImageNode.ts} | 2 +- src/api/types/LocalizedItem.ts | 32 - src/api/types/MultiLocaleChangedPayload.ts | 24 - .../MultiLocaleChangedPayloadFieldData.ts | 12 - src/api/types/MultiLocaleCreatedPayload.ts | 18 - src/api/types/Node.ts | 14 +- src/api/types/Payload.ts | 27 + ...ayloadFieldData.ts => PayloadFieldData.ts} | 2 +- ...chButtonNodeDom.ts => SearchButtonNode.ts} | 2 +- ...archButton.ts => SearchButtonNodeWrite.ts} | 2 +- .../types/{SelectNodeDom.ts => SelectNode.ts} | 2 +- src/api/types/SingleLocaleChangedPayload.ts | 24 - src/api/types/SiteMembership.ts | 1 + .../SiteMembershipAuditLogItemEventSubType.ts | 7 +- ...itButtonNodeDom.ts => SubmitButtonNode.ts} | 2 +- ...bmitButton.ts => SubmitButtonNodeWrite.ts} | 2 +- .../{TextInputNodeDom.ts => TextInputNode.ts} | 2 +- .../{TextInput.ts => TextInputNodeWrite.ts} | 2 +- src/api/types/TextNode.ts | 12 +- src/api/types/TextNodeDom.ts | 17 - src/api/types/TextNodeWrite.ts | 13 + src/api/types/TriggerType.ts | 2 + ...ItemPayloadSiteMembershipGranularAccess.ts | 10 + ...AuditLogItemPayloadSiteMembershipMethod.ts | 9 +- ...yloadWorkspaceInvitationTargetUsersItem.ts | 8 + ...LogItemPayloadWorkspaceMembershipMethod.ts | 3 +- src/api/types/WorkspaceInvitation.ts | 1 + ...spaceInvitationAuditLogItemEventSubType.ts | 4 +- src/api/types/index.ts | 37 +- src/environments.ts | 4 - .../types/ComponentDomWriteNodesItem.ts | 30 +- .../FormsUpdateSubmissionBySiteRequest.ts | 20 + .../resources/forms/client/requests/index.ts | 1 + .../pages/types/PageDomWriteNodesItem.ts | 30 +- .../types/CollectionItemChanged.ts | 6 +- .../types/CollectionItemChangedPayload.ts | 18 - .../types/CollectionItemCreated.ts | 6 +- .../types/CollectionItemCreatedPayload.ts | 18 - .../types/CollectionItemPublished.ts | 23 + ...nentInstanceNodePropertyOverridesWrite.ts} | 8 +- .../{ComponentNodeDom.ts => ComponentNode.ts} | 16 +- ...dditionalPropertiesAdditionalProperties.ts | 4 +- .../types/{ImageNodeDom.ts => ImageNode.ts} | 4 +- src/serialization/types/LocalizedItem.ts | 42 - .../types/MultiLocaleChangedPayload.ts | 41 - .../MultiLocaleChangedPayloadFieldData.ts | 27 - .../types/MultiLocaleCreatedPayload.ts | 29 - src/serialization/types/Node.ts | 42 +- src/serialization/types/Payload.ts | 39 + ...ayloadFieldData.ts => PayloadFieldData.ts} | 8 +- src/serialization/types/SearchButton.ts | 20 - ...chButtonNodeDom.ts => SearchButtonNode.ts} | 8 +- .../types/SearchButtonNodeWrite.ts | 22 + .../types/{SelectNodeDom.ts => SelectNode.ts} | 4 +- .../types/SingleLocaleChangedPayload.ts | 41 - src/serialization/types/SiteMembership.ts | 3 + .../SiteMembershipAuditLogItemEventSubType.ts | 4 +- src/serialization/types/SubmitButton.ts | 22 - ...itButtonNodeDom.ts => SubmitButtonNode.ts} | 8 +- .../types/SubmitButtonNodeWrite.ts | 24 + .../{TextNodeDom.ts => TextInputNode.ts} | 9 +- src/serialization/types/TextInputNodeDom.ts | 24 - src/serialization/types/TextInputNodeWrite.ts | 22 + src/serialization/types/TextNode.ts | 11 +- .../types/{TextInput.ts => TextNodeWrite.ts} | 8 +- src/serialization/types/TriggerType.ts | 2 + ...ItemPayloadSiteMembershipGranularAccess.ts | 26 + ...AuditLogItemPayloadSiteMembershipMethod.ts | 4 +- ...yloadWorkspaceInvitationTargetUsersItem.ts | 22 + ...LogItemPayloadWorkspaceMembershipMethod.ts | 4 +- .../types/WorkspaceInvitation.ts | 3 + ...spaceInvitationAuditLogItemEventSubType.ts | 9 +- src/serialization/types/index.ts | 37 +- tests/wire/accessGroups.test.ts | 14 +- tests/wire/assets.test.ts | 69 +- tests/wire/collections.test.ts | 32 +- tests/wire/collections/fields.test.ts | 24 +- tests/wire/collections/items.test.ts | 232 +- tests/wire/components.test.ts | 46 +- tests/wire/ecommerce.test.ts | 8 +- tests/wire/forms.test.ts | 244 +- tests/wire/inventory.test.ts | 16 +- tests/wire/orders.test.ts | 374 +- tests/wire/pages.test.ts | 44 +- tests/wire/pages/scripts.test.ts | 24 +- tests/wire/products.test.ts | 53 +- tests/wire/scripts.test.ts | 24 +- tests/wire/sites.test.ts | 56 +- tests/wire/sites/activityLogs.test.ts | 13 +- tests/wire/sites/comments.test.ts | 36 +- tests/wire/sites/plans.test.ts | 8 +- tests/wire/sites/redirects.test.ts | 32 +- tests/wire/sites/robotsTxt.test.ts | 32 +- tests/wire/sites/scripts.test.ts | 37 +- tests/wire/sites/wellKnown.test.ts | 29 +- tests/wire/token.test.ts | 16 +- tests/wire/users.test.ts | 46 +- tests/wire/webhooks.test.ts | 32 +- tests/wire/workspaces/auditLogs.test.ts | 16 +- yarn.lock | 603 ++- 211 files changed, 3041 insertions(+), 17065 deletions(-) delete mode 100644 .mock/definition/__package__.yml delete mode 100644 .mock/definition/accessGroups.yml delete mode 100644 .mock/definition/api.yml delete mode 100644 .mock/definition/assets.yml delete mode 100644 .mock/definition/collections.yml delete mode 100644 .mock/definition/collections/fields.yml delete mode 100644 .mock/definition/collections/items.yml delete mode 100644 .mock/definition/comments.yml delete mode 100644 .mock/definition/components.yml delete mode 100644 .mock/definition/ecommerce.yml delete mode 100644 .mock/definition/forms.yml delete mode 100644 .mock/definition/inventory.yml delete mode 100644 .mock/definition/items.yml delete mode 100644 .mock/definition/orders.yml delete mode 100644 .mock/definition/pages.yml delete mode 100644 .mock/definition/pages/scripts.yml delete mode 100644 .mock/definition/products.yml delete mode 100644 .mock/definition/scripts.yml delete mode 100644 .mock/definition/sites.yml delete mode 100644 .mock/definition/sites/activityLogs.yml delete mode 100644 .mock/definition/sites/comments.yml delete mode 100644 .mock/definition/sites/plans.yml delete mode 100644 .mock/definition/sites/redirects.yml delete mode 100644 .mock/definition/sites/robotsTxt.yml delete mode 100644 .mock/definition/sites/scripts.yml delete mode 100644 .mock/definition/sites/wellKnown.yml delete mode 100644 .mock/definition/token.yml delete mode 100644 .mock/definition/users.yml delete mode 100644 .mock/definition/webhooks.yml delete mode 100644 .mock/definition/workspaces/auditLogs.yml delete mode 100644 .mock/fern.config.json create mode 100644 src/api/resources/assets/client/requests/AssetsListRequest.ts create mode 100644 src/api/resources/forms/client/requests/FormsListSubmissionsByFormAndSiteRequest.ts create mode 100644 src/api/resources/forms/client/requests/FormsUpdateSubmissionBySiteRequest.ts delete mode 100644 src/api/types/CollectionItemChangedPayload.ts delete mode 100644 src/api/types/CollectionItemCreatedPayload.ts create mode 100644 src/api/types/CollectionItemPublished.ts rename src/api/types/{ComponentInstance.ts => ComponentInstanceNodePropertyOverridesWrite.ts} (87%) rename src/api/types/{ComponentNodeDom.ts => ComponentNode.ts} (93%) rename src/api/types/{ImageNodeDom.ts => ImageNode.ts} (94%) delete mode 100644 src/api/types/LocalizedItem.ts delete mode 100644 src/api/types/MultiLocaleChangedPayload.ts delete mode 100644 src/api/types/MultiLocaleChangedPayloadFieldData.ts delete mode 100644 src/api/types/MultiLocaleCreatedPayload.ts create mode 100644 src/api/types/Payload.ts rename src/api/types/{SingleLocaleChangedPayloadFieldData.ts => PayloadFieldData.ts} (76%) rename src/api/types/{SearchButtonNodeDom.ts => SearchButtonNode.ts} (92%) rename src/api/types/{SearchButton.ts => SearchButtonNodeWrite.ts} (84%) rename src/api/types/{SelectNodeDom.ts => SelectNode.ts} (94%) delete mode 100644 src/api/types/SingleLocaleChangedPayload.ts rename src/api/types/{SubmitButtonNodeDom.ts => SubmitButtonNode.ts} (93%) rename src/api/types/{SubmitButton.ts => SubmitButtonNodeWrite.ts} (88%) rename src/api/types/{TextInputNodeDom.ts => TextInputNode.ts} (92%) rename src/api/types/{TextInput.ts => TextInputNodeWrite.ts} (86%) delete mode 100644 src/api/types/TextNodeDom.ts create mode 100644 src/api/types/TextNodeWrite.ts create mode 100644 src/api/types/WorkspaceAuditLogItemPayloadSiteMembershipGranularAccess.ts create mode 100644 src/api/types/WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem.ts create mode 100644 src/serialization/resources/forms/client/requests/FormsUpdateSubmissionBySiteRequest.ts delete mode 100644 src/serialization/types/CollectionItemChangedPayload.ts delete mode 100644 src/serialization/types/CollectionItemCreatedPayload.ts create mode 100644 src/serialization/types/CollectionItemPublished.ts rename src/serialization/types/{ComponentInstance.ts => ComponentInstanceNodePropertyOverridesWrite.ts} (71%) rename src/serialization/types/{ComponentNodeDom.ts => ComponentNode.ts} (51%) rename src/serialization/types/{ImageNodeDom.ts => ImageNode.ts} (80%) delete mode 100644 src/serialization/types/LocalizedItem.ts delete mode 100644 src/serialization/types/MultiLocaleChangedPayload.ts delete mode 100644 src/serialization/types/MultiLocaleChangedPayloadFieldData.ts delete mode 100644 src/serialization/types/MultiLocaleCreatedPayload.ts create mode 100644 src/serialization/types/Payload.ts rename src/serialization/types/{SingleLocaleChangedPayloadFieldData.ts => PayloadFieldData.ts} (64%) delete mode 100644 src/serialization/types/SearchButton.ts rename src/serialization/types/{SearchButtonNodeDom.ts => SearchButtonNode.ts} (74%) create mode 100644 src/serialization/types/SearchButtonNodeWrite.ts rename src/serialization/types/{SelectNodeDom.ts => SelectNode.ts} (81%) delete mode 100644 src/serialization/types/SingleLocaleChangedPayload.ts delete mode 100644 src/serialization/types/SubmitButton.ts rename src/serialization/types/{SubmitButtonNodeDom.ts => SubmitButtonNode.ts} (77%) create mode 100644 src/serialization/types/SubmitButtonNodeWrite.ts rename src/serialization/types/{TextNodeDom.ts => TextInputNode.ts} (66%) delete mode 100644 src/serialization/types/TextInputNodeDom.ts create mode 100644 src/serialization/types/TextInputNodeWrite.ts rename src/serialization/types/{TextInput.ts => TextNodeWrite.ts} (60%) create mode 100644 src/serialization/types/WorkspaceAuditLogItemPayloadSiteMembershipGranularAccess.ts create mode 100644 src/serialization/types/WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem.ts diff --git a/.mock/definition/__package__.yml b/.mock/definition/__package__.yml deleted file mode 100644 index 2e9d00c6..00000000 --- a/.mock/definition/__package__.yml +++ /dev/null @@ -1,4619 +0,0 @@ -errors: - UnauthorizedError: - status-code: 401 - type: Error - docs: >- - Provided access token is invalid or does not have access to requested - resource - examples: - - value: - code: not_authorized - message: Request not authorized - ForbiddenError: - status-code: 403 - type: unknown - docs: Provided access token is valid, but is missing the required scopes. - examples: - - value: - code: missing_scopes - message: >- - OAuthForbidden: You are missing the following scopes - - components:write - - value: - key: value - - value: - code: forbidden - message: User is not authorized to perform this action - BadRequestError: - status-code: 400 - type: unknown - docs: Request body was incorrectly formatted. - examples: - - value: - code: bad_request - message: 'Bad Request: Request is malformed' - - value: - key: value - - value: - code: validation_error - message: 'Validation Error: Provided ID is invalid' - NotFoundError: - status-code: 404 - type: Error - docs: Requested resource not found - examples: - - value: - code: resource_not_found - message: 'Requested resource not found: The site cannot be found' - TooManyRequestsError: - status-code: 429 - type: Error - docs: >- - The rate limit of the provided access_token has been reached. Please have - your application respect the X-RateLimit-Remaining header we include on - API responses. - examples: - - value: - code: too_many_requests - message: Too many requests - InternalServerError: - status-code: 500 - type: Error - docs: We had a problem with our server. Try again later. - examples: - - value: - code: internal_error - message: An Internal Error occurred - ConflictError: - status-code: 409 - type: unknown - docs: Collection already exists - examples: - - value: - code: duplicate_collection - message: Collection already exists - - value: - message: '''Site is published to multiple domains at different times' - - value: - code: conflict - message: >- - Conflict: Conflict with server data: Live PATCH updates can't be - applied to items that have never been published - - value: - code: custom_code_max_registered_scripts - message: The maximum number of registered scripts has been reached. - - value: - code: forms_require_republish - message: To access this feature, the site needs to be republished. - - value: - key: value - - value: - code: ecommerce_not_enabled - message: Ecommerce is not yet initialized -types: - ForbiddenErrorBody: - discriminated: false - union: - - InvalidScopes - - UsersNotEnabled - source: - openapi: ../../../openapi/referenced-specs/v2.yml - BadRequestErrorBody: - discriminated: false - union: - - InvalidDomain - - NoDomains - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ItemsListItemsRequestLastPublished: - properties: - lte: - type: optional - docs: Filter items last published before this date - gte: - type: optional - docs: Filter items last published after this date - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ItemsListItemsLiveRequestLastPublished: - properties: - lte: - type: optional - docs: Filter items last published before this date - gte: - type: optional - docs: Filter items last published after this date - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ConflictErrorBody: - discriminated: false - union: - - DuplicateUserEmail - - UserLimitReached - source: - openapi: ../../../openapi/referenced-specs/v2.yml - AuthorizedUser: - properties: - id: - type: optional - docs: The unique ID of the user - email: - type: optional - docs: The user's email address - validation: - format: email - firstName: - type: optional - docs: The user's first name - lastName: - type: optional - docs: The user's last name - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ErrorCode: - enum: - - bad_request - - collection_not_found - - conflict - - duplicate_collection - - duplicate_user_email - - ecommerce_not_enabled - - forbidden - - forms_require_republish - - incompatible_webhook_filter - - internal_error - - invalid_auth_version - - invalid_credentials - - invalid_domain - - invalid_user_email - - item_not_found - - missing_scopes - - no_domains - - not_authorized - - not_enterprise_plan_site - - not_enterprise_plan_workspace - - order_not_found - - resource_not_found - - too_many_requests - - unsupported_version - - unsupported_webhook_trigger_type - - user_limit_reached - - user_not_found - - users_not_enabled - - validation_error - docs: Error code - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Error: - properties: - code: - type: optional - docs: Error code - message: - type: optional - docs: Error message - externalReference: - type: optional - docs: Link to more information - details: - type: optional> - docs: Array of errors - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Application: - properties: - id: - type: optional - docs: Unique identifier for the Application - description: - type: optional - docs: Application description provided by the developer - homepage: - type: optional - docs: Application homepage URL provided by the developer - validation: - format: uri - displayName: - type: optional - docs: Application name provided by the developer - source: - openapi: ../../../openapi/referenced-specs/v2.yml - AuthorizationAuthorizationAuthorizedTo: - properties: - siteIds: - type: optional> - docs: Array of Sites this app is authorized to - workspaceIds: - type: optional> - docs: Array of Workspaces this app is authorized to - userIds: - type: optional> - docs: Array of Users this app is authorized to - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - AuthorizationAuthorization: - docs: The Authorization object - properties: - id: - type: optional - docs: The unique ID of the Authorization instance - createdOn: - type: optional - docs: The date the Authorization was created - lastUsed: - type: optional - docs: The date the Authorization was last used - grantType: - type: optional - docs: The grant type of the Authorization - rateLimit: - type: optional - docs: The default rate limit for the Authorization (requests/min) - scope: - type: optional - docs: Comma separted list of OAuth scopes corresponding to the Authorization - authorizedTo: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Authorization: - properties: - authorization: - type: optional - docs: The Authorization object - application: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Domain: - properties: - id: - type: string - docs: Unique identifier for the Domain - url: - type: optional - docs: The registered Domain name - lastPublished: - type: optional - docs: The date the custom domain was last published to - access: read-only - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Locale: - properties: - id: - type: optional - docs: The unique identifier for the locale. - cmsLocaleId: - type: optional - docs: A CMS-specific identifier for the locale. - enabled: - type: optional - docs: Indicates if the locale is enabled. - displayName: - type: optional - docs: The display name of the locale, typically in English. - displayImageId: - type: optional - docs: An optional ID for an image associated with the locale, nullable. - redirect: - type: optional - docs: Determines if requests should redirect to the locale's subdirectory. - subdirectory: - type: optional - docs: The subdirectory path for the locale, used in URLs. - tag: - type: optional - docs: >- - A tag or code representing the locale, often following a standard - format like 'en-US'. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Locales: - properties: - primary: - type: optional - docs: The primary locale for the site or application. - secondary: - type: optional> - docs: A list of secondary locales available for the site or application. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SiteDataCollectionType: - enum: - - always - - optOut - - disabled - docs: The type of data collection enabled for the site. - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Site: - properties: - id: - type: string - docs: Unique identifier for the Site - workspaceId: - type: optional - docs: Unique identifier for the Workspace - createdOn: - type: optional - docs: Date the Site was created - displayName: - type: optional - docs: Name given to Site - shortName: - type: optional - docs: Slugified version of name - lastPublished: - type: optional - docs: Date the Site was last published - lastUpdated: - type: optional - docs: Date the Site was last updated - previewUrl: - type: optional - docs: URL of a generated image for the given Site - validation: - format: uri - timeZone: - type: optional - docs: Site timezone set under Site Settings - parentFolderId: - type: optional - docs: The ID of the parent folder the Site exists in - customDomains: optional> - locales: optional - dataCollectionEnabled: - type: optional - docs: Indicates if data collection is enabled for the site. - dataCollectionType: - type: optional - docs: The type of data collection enabled for the site. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - InvalidScopes: unknown - NotEnterprisePlanWorkspace: unknown - WorkspaceAuditLogItemPayloadUserAccessMethod: - enum: - - dashboard - - sso - - api - - google - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - User access: - properties: - method: - type: optional - location: - type: optional - docs: The geolocation based on the logged IP address - ipAddress: - type: optional - docs: The captured IP address of the user - source: - openapi: ../../../openapi/referenced-specs/v2.yml - UserAccessAuditLogItemEventSubType: - enum: - - login - - logout - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - UserAccessAuditLogItem: - properties: - eventSubType: - type: optional - payload: - type: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Custom role: - properties: - roleName: - type: optional - docs: The name of the custom role - previousRoleName: - type: optional - docs: The previous name of the custom role - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CustomRoleAuditLogItemEventSubType: - enum: - - role_created - - role_updated - - role_deleted - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CustomRoleAuditLogItem: - properties: - eventSubType: - type: optional - payload: - type: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - WorkspaceAuditLogItemPayloadWorkspaceMembershipTargetUser: - properties: - id: optional - email: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod: - enum: - - sso - - dashboard - - admin - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - WorkspaceAuditLogItemPayloadWorkspaceMembershipUserType: - enum: - - member - - guest - - reviewer - - client - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Workspace membership: - properties: - targetUser: - type: optional - method: - type: optional - userType: - type: optional - roleName: - type: optional - docs: The name of the role that was assigned to the user - previousRoleName: - type: optional - docs: The previous role that the user had - source: - openapi: ../../../openapi/referenced-specs/v2.yml - WorkspaceMembershipAuditLogItemEventSubType: - enum: - - user_added - - user_removed - - user_role_updated - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - WorkspaceMembershipAuditLogItem: - properties: - eventSubType: - type: optional - payload: - type: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - WorkspaceAuditLogItemPayloadSiteMembershipSite: - properties: - id: optional - slug: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - WorkspaceAuditLogItemPayloadSiteMembershipTargetUser: - properties: - id: optional - email: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - WorkspaceAuditLogItemPayloadSiteMembershipMethod: - enum: - - sso - - invite - - scim - - dashboard - - admin - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - WorkspaceAuditLogItemPayloadSiteMembershipUserType: - enum: - - member - - guest - - reviewer - - client - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Site membership: - properties: - site: - type: optional - targetUser: - type: optional - method: - type: optional - userType: - type: optional - roleName: - type: optional - docs: The name of the role that was assigned to the user - previousRoleName: - type: optional - docs: The previous role that the user had - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SiteMembershipAuditLogItemEventSubType: - enum: - - user_added - - user_removed - - user_role_updated - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SiteMembershipAuditLogItem: - properties: - eventSubType: - type: optional - payload: - type: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUser: - properties: - id: optional - email: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - WorkspaceAuditLogItemPayloadWorkspaceInvitationMethod: - enum: - - sso - - dashboard - - admin - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - WorkspaceAuditLogItemPayloadWorkspaceInvitationUserType: - enum: - - member - - guest - - reviewer - - client - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Workspace invitation: - properties: - targetUser: - type: optional - method: - type: optional - userType: - type: optional - roleName: - type: optional - docs: The name of the role that was assigned to the user - previousRoleName: - type: optional - docs: The previous role that the user had - source: - openapi: ../../../openapi/referenced-specs/v2.yml - WorkspaceInvitationAuditLogItemEventSubType: - enum: - - invite_sent - - invite_accepted - - invite_updated - - invite_canceled - - invite_declined - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - WorkspaceInvitationAuditLogItem: - properties: - eventSubType: - type: optional - payload: - type: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - WorkspaceAuditLogItemActor: - properties: - id: optional - email: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - WorkspaceAuditLogItemWorkspace: - properties: - id: optional - slug: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - WorkspaceAuditLogItem: - discriminant: eventType - base-properties: - timestamp: optional - actor: optional - workspace: optional - union: - user_access: - type: UserAccessAuditLogItem - custom_role: - type: CustomRoleAuditLogItem - workspace_membership: - type: WorkspaceMembershipAuditLogItem - site_membership: - type: SiteMembershipAuditLogItem - workspace_invitation: - type: WorkspaceInvitationAuditLogItem - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Pagination: - docs: Pagination object - properties: - limit: - type: optional - docs: The limit used for pagination - access: read-only - offset: - type: optional - docs: The offset used for pagination - access: read-only - total: - type: optional - docs: The total number of records - access: read-only - source: - openapi: ../../../openapi/referenced-specs/v2.yml - WorkspaceAuditLogResponse: - properties: - items: optional> - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Sites: - properties: - sites: optional> - source: - openapi: ../../../openapi/referenced-specs/v2.yml - NotEnterprisePlanSite: unknown - Domains: - properties: - customDomains: optional> - source: - openapi: ../../../openapi/referenced-specs/v2.yml - InvalidDomain: unknown - NoDomains: unknown - Redirect: - docs: A single redirection rule, specifying a source URL and a destination URL. - properties: - id: - type: optional - docs: The ID of the specific redirect rule - access: read-only - fromUrl: - type: optional - docs: The source URL path that will be redirected. - toUrl: - type: optional - docs: The target URL path where the user or client will be redirected. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Redirects: - docs: Site redirects response - properties: - redirects: - type: optional> - docs: List of redirects for a given site - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SitePlanId: - enum: - - value: hosting-basic-v3 - name: HostingBasicV3 - - value: hosting-cms-v3 - name: HostingCmsV3 - - value: hosting-business-v3 - name: HostingBusinessV3 - - value: hosting-ecommerce-standard-v2 - name: HostingEcommerceStandardV2 - - value: hosting-ecommerce-plus-v2 - name: HostingEcommercePlusV2 - - value: hosting-ecommerce-advanced-v2 - name: HostingEcommerceAdvancedV2 - - value: hosting-basic-v4 - name: HostingBasicV4 - - value: hosting-cms-v4 - name: HostingCmsV4 - - value: hosting-business-v4 - name: HostingBusinessV4 - - value: hosting-ecommerce-standard-v3 - name: HostingEcommerceStandardV3 - - value: hosting-ecommerce-plus-v3 - name: HostingEcommercePlusV3 - - value: hosting-ecommerce-advanced-v3 - name: HostingEcommerceAdvancedV3 - docs: ID of the hosting plan. - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SitePlanName: - enum: - - value: Basic Hosting - name: BasicHosting - - value: CMS Hosting - name: CmsHosting - - value: Business Hosting - name: BusinessHosting - - value: ECommerce Standard Hosting - name: ECommerceStandardHosting - - value: ECommerce Plus Hosting - name: ECommercePlusHosting - - value: ECommerce Advanced Hosting - name: ECommerceAdvancedHosting - docs: Name of the hosting plan. - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SitePlan: - properties: - id: - type: optional - docs: ID of the hosting plan. - name: - type: optional - docs: Name of the hosting plan. - pricingInfo: - type: optional - docs: URL for more information about Webflow hosting plan pricing. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - RobotsRulesItem: - properties: - userAgent: - type: string - docs: The user agent the rules apply to. - allows: - type: optional> - docs: List of paths allowed for this user agent. - disallows: - type: optional> - docs: List of paths disallowed for this user agent. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Robots: - docs: The robots.txt file for a given site - properties: - rules: - type: optional> - docs: List of rules for user agents. - sitemap: - type: optional - docs: URL to the sitemap. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SiteActivityLogItemEvent: - enum: - - styles_modified - - site_published - - ix2_modified_on_page - - page_dom_modified - - cms_item - - backup_created - - page_custom_code_modified - - symbols_modified - - variable_modified - - variables_modified - - cms_collection - - page_settings_modified - - page_settings_custom_code_modified - - ix2_modified_on_component - - ix2_modified_on_class - - site_custom_code_modified - - page_duplicated - - secondary_locale_page_content_modified - - page_renamed - - page_created - - page_deleted - - site_unpublished - - backup_restored - - locale_added - - branch_created - - locale_display_name_updated - - locale_subdirectory_updated - - branch_merged - - locale_tag_updated - - branch_deleted - - locale_enabled - - locale_removed - - locale_disabled - - library_shared - - library_unshared - - library_installed - - library_uninstalled - - library_update_shared - - library_update_accepted - - branch_review_created - - branch_review_approved - - branch_review_canceled - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SiteActivityLogItemResourceOperation: - enum: - - CREATED - - MODIFIED - - PUBLISHED - - UNPUBLISHED - - DELETED - - GROUP_REORDERED - - GROUP_CREATED - - GROUP_DELETED - - REORDERED - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SiteActivityLogItemUser: - properties: - id: optional - displayName: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - SiteActivityLogItem: - properties: - id: optional - createdOn: optional - lastUpdated: optional - event: optional - resourceOperation: optional - user: optional - resourceId: optional - resourceName: optional - newValue: optional - previousValue: optional - payload: optional> - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SiteActivityLogResponse: - properties: - items: optional> - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CollectionListArrayItem: - docs: A collection object - properties: - id: - type: string - docs: Unique identifier for a Collection - displayName: - type: optional - docs: Name given to the Collection - singularName: - type: optional - docs: >- - The name of one Item in Collection (e.g. ”Blog Post” if the Collection - is called “Blog Posts”) - slug: - type: optional - docs: Slug of Collection in Site URL structure - createdOn: - type: optional - docs: The date the collection was created - access: read-only - lastUpdated: - type: optional - docs: The date the collection was last updated - access: read-only - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CollectionList: - properties: - collections: - type: optional> - docs: An array of Collections - source: - openapi: ../../../openapi/referenced-specs/v2.yml - StaticFieldType: - enum: - - Color - - DateTime - - Email - - File - - Image - - Link - - MultiImage - - Number - - Phone - - PlainText - - RichText - - Switch - - VideoLink - docs: Choose these appropriate field type for your collection data - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Static Field: - properties: - id: - type: optional - docs: Unique identifier for a Field - access: read-only - isEditable: - type: optional - docs: Define whether the field is editable - access: read-only - isRequired: - type: optional - docs: define whether a field is required in a collection - type: - type: StaticFieldType - docs: Choose these appropriate field type for your collection data - displayName: - type: string - docs: The name of a field - helpText: - type: optional - docs: Additional text to help anyone filling out this field - source: - openapi: ../../../openapi/referenced-specs/v2.yml - MetadataOptionsItem: - docs: A single option value for the Option field. - properties: - name: - type: string - docs: The name of the option - id: - type: optional - docs: The unique identifier of the option - access: read-only - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Metadata: - docs: The metadata for the Option field. - properties: - options: - docs: The option values for the Option field. - type: list - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Option Field: - properties: - id: - type: optional - docs: Unique identifier for a Field - access: read-only - isEditable: - type: optional - docs: Define whether the field is editable - access: read-only - isRequired: - type: optional - docs: define whether a field is required in a collection - type: - type: literal<"Option"> - docs: >- - The [Option field - type](/data/reference/field-types-item-values#option) - displayName: - type: string - docs: The name of a field - helpText: - type: optional - docs: Additional text to help anyone filling out this field - metadata: Metadata - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ReferenceFieldType: - enum: - - MultiReference - - Reference - docs: Choose these appropriate field type for your collection data - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ReferenceFieldMetadata: - docs: >- - The collectionId for the referenced collection. Only applicable for - Reference and MultiReference fields. - properties: - collectionId: - type: string - docs: The unique identifier of the collection - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Reference Field: - properties: - id: - type: optional - docs: Unique identifier for a Field - access: read-only - isEditable: - type: optional - docs: Define whether the field is editable - access: read-only - isRequired: - type: optional - docs: define whether a field is required in a collection - type: - type: ReferenceFieldType - docs: Choose these appropriate field type for your collection data - displayName: - type: string - docs: The name of a field - helpText: - type: optional - docs: Additional text to help anyone filling out this field - metadata: - type: ReferenceFieldMetadata - docs: >- - The collectionId for the referenced collection. Only applicable for - Reference and MultiReference fields. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - FieldCreate: - discriminated: false - docs: Details about the field of a collection - union: - - type: Static Field - - type: Option Field - - type: Reference Field - source: - openapi: ../../../openapi/referenced-specs/v2.yml - FieldType: - enum: - - Color - - DateTime - - Email - - ExtFileRef - - File - - Image - - Link - - MultiImage - - MultiReference - - Number - - Option - - Phone - - PlainText - - Reference - - RichText - - Switch - - VideoLink - docs: Choose these appropriate field type for your collection data - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - FieldValidationsAdditionalPropertiesAdditionalProperties: - properties: - additionalProperties: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - FieldValidationsAdditionalProperties: - discriminated: false - union: - - string - - double - - boolean - - integer - - FieldValidationsAdditionalPropertiesAdditionalProperties - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - FieldValidations: - docs: The validations for the field - properties: - additionalProperties: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Field: - docs: The details of a field in a collection - properties: - id: - type: string - docs: Unique identifier for a Field - isRequired: - type: boolean - docs: define whether a field is required in a collection - isEditable: - type: optional - docs: Define whether the field is editable - access: read-only - type: - type: FieldType - docs: Choose these appropriate field type for your collection data - slug: - type: optional - docs: >- - Slug of Field in Site URL structure. Slugs should be all lowercase - with no spaces. Any spaces will be converted to "-." - displayName: - type: string - docs: The name of a field - helpText: - type: optional - docs: Additional text to help anyone filling out this field - validations: - type: optional - docs: The validations for the field - access: read-only - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Collection: - docs: A collection object - properties: - id: - type: string - docs: Unique identifier for a Collection - displayName: - type: string - docs: Name given to the Collection - singularName: - type: string - docs: >- - The name of one Item in Collection (e.g. ”Blog Post” if the Collection - is called “Blog Posts”) - slug: - type: optional - docs: Slug of Collection in Site URL structure - createdOn: - type: optional - docs: The date the collection was created - access: read-only - lastUpdated: - type: optional - docs: The date the collection was last updated - access: read-only - fields: - docs: The list of fields in the Collection - type: list - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CollectionItemFieldData: - properties: - name: - type: string - docs: Name of the Item - slug: - type: string - docs: >- - URL structure of the Item in your site. Note: Updates to an item slug - will break all links referencing the old slug. - extra-properties: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CollectionItem: - docs: > - A Collection Item represents a single entry in your collection. Each item - includes: - - - - **System metadata** - Automatically managed fields like IDs and - timestamp
- - - **Status flags** - Controls for managing content state: `isDraft`, - `isArchived `
- - - **Content fields** - Stored in `fieldData`. Each item needs a `name` and - `slug`, and may include additional fields matching your collection's - schema definition. - properties: - id: - type: optional - docs: Unique identifier for the Item - access: read-only - cmsLocaleId: - type: optional - docs: Identifier for the locale of the CMS item - lastPublished: - type: optional - docs: The date the item was last published - access: read-only - lastUpdated: - type: optional - docs: The date the item was last updated - access: read-only - createdOn: - type: optional - docs: The date the item was created - access: read-only - isArchived: - type: optional - docs: Boolean determining if the Item is set to archived - default: false - isDraft: - type: optional - docs: Boolean determining if the Item is set to draft - default: false - fieldData: CollectionItemFieldData - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CollectionItemListPagination: - properties: - limit: - type: optional - docs: The limit specified in the request - default: 100 - offset: - type: optional - docs: The offset specified for pagination - default: 0 - total: - type: optional - docs: Total number of items in the collection - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CollectionItemList: - docs: Results from collection items list - properties: - items: - type: optional> - docs: List of Items within the collection - pagination: - type: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CollectionItemPostSingleFieldData: - properties: - name: - type: string - docs: Name of the Item - slug: - type: string - docs: >- - URL structure of the Item in your site. Note: Updates to an item slug - will break all links referencing the old slug. - extra-properties: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CollectionItemPostSingle: - docs: > - A Collection Item represents a single entry in your collection. Each item - includes: - - - - **System metadata** - Automatically managed fields like IDs and - timestamp
- - - **Status flags** - Controls for managing content state: `isDraft`, - `isArchived `
- - - **Content fields** - Stored in `fieldData`. Each item needs a `name` and - `slug`, and may include additional fields matching your collection's - schema definition. - properties: - id: - type: optional - docs: Unique identifier for the Item - access: read-only - cmsLocaleId: - type: optional - docs: Identifier for the locale of the CMS item - lastPublished: - type: optional - docs: The date the item was last published - access: read-only - lastUpdated: - type: optional - docs: The date the item was last updated - access: read-only - createdOn: - type: optional - docs: The date the item was created - access: read-only - isArchived: - type: optional - docs: Boolean determining if the Item is in an archived state. - default: false - isDraft: - type: optional - docs: Boolean determining if the Item is in a draft state. - default: true - fieldData: CollectionItemPostSingleFieldData - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CollectionItemWithIdInputFieldData: - properties: - name: - type: optional - docs: Name of the Item - slug: - type: optional - docs: >- - URL structure of the Item in your site. Note: Updates to an item slug - will break all links referencing the old slug. - extra-properties: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CollectionItemWithIdInput: - docs: > - The fields that define the schema for a given Item are based on the - Collection that Item belongs to. Beyond the user defined fields, there are - a handful of additional fields that are automatically created for all - items - properties: - id: - type: string - docs: Unique identifier for the Item - cmsLocaleId: - type: optional - docs: Identifier for the locale of the CMS item - lastPublished: - type: optional - docs: The date the item was last published - access: read-only - lastUpdated: - type: optional - docs: The date the item was last updated - access: read-only - createdOn: - type: optional - docs: The date the item was created - access: read-only - isArchived: - type: optional - docs: Boolean determining if the Item is set to archived - isDraft: - type: optional - docs: Boolean determining if the Item is set to draft - fieldData: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CollectionItemListNoPagination: - docs: Results from collection items list - properties: - items: - type: optional> - docs: List of Items within the collection - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Conflict: unknown - BulkCollectionItemFieldData: - properties: - name: - type: optional - docs: Name of the Item - slug: - type: optional - docs: >- - URL structure of the Item in your site. Note: Updates to an item slug - will break all links referencing the old slug. - extra-properties: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - BulkCollectionItem: - docs: > - The fields that define the schema for a given Item are based on the - Collection that Item belongs to. Beyond the user defined fields, there are - a handful of additional fields that are automatically created for all - items - properties: - id: - type: optional - docs: Unique identifier for the Item - cmsLocaleIds: - type: optional> - docs: Array of identifiers for the locales where the item will be created - lastPublished: - type: optional - docs: The date the item was last published - access: read-only - lastUpdated: - type: optional - docs: The date the item was last updated - access: read-only - createdOn: - type: optional - docs: The date the item was created - access: read-only - isArchived: - type: optional - docs: Boolean determining if the Item is set to archived - default: false - isDraft: - type: optional - docs: Boolean determining if the Item is set to draft - default: false - fieldData: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CollectionItemPatchSingleFieldData: - properties: - name: - type: optional - docs: Name of the Item - slug: - type: optional - docs: >- - URL structure of the Item in your site. Note: Updates to an item slug - will break all links referencing the old slug. - extra-properties: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CollectionItemPatchSingle: - docs: > - The fields that define the schema for a given Item are based on the - Collection that Item belongs to. Beyond the user defined fields, there are - a handful of additional fields that are automatically created for all - items - properties: - id: - type: optional - docs: Unique identifier for the Item - access: read-only - cmsLocaleId: - type: optional - docs: Identifier for the locale of the CMS item - lastPublished: - type: optional - docs: The date the item was last published - access: read-only - lastUpdated: - type: optional - docs: The date the item was last updated - access: read-only - createdOn: - type: optional - docs: The date the item was created - access: read-only - isArchived: - type: optional - docs: Boolean determining if the Item is set to archived - isDraft: - type: optional - docs: Boolean determining if the Item is set to draft - fieldData: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CommentThreadAuthor: - properties: - userId: - type: string - docs: The unique identifier of the author - email: - type: string - docs: Email of the author - name: - type: string - docs: Name of the author - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CommentThreadMentionedUsersItem: - properties: - userId: - type: string - docs: The unique identifier of the mentioned user - email: - type: string - docs: Email of the user - name: - type: string - docs: Name of the User - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CommentThread: - docs: > - A comment thread represents a conversation between users on a specific - page. Each comment thread has a unique identifier and can contain multiple - comments. Retrieve comment replies using the replies API endpoint. - properties: - id: - type: string - docs: Unique identifier for the comment thread - siteId: - type: string - docs: The site unique identifier - pageId: - type: string - docs: The page unique identifier - localeId: - type: optional - docs: The locale unique identifier - access: read-only - itemId: - type: optional - docs: The item unique identifier - access: read-only - breakpoint: - type: string - docs: The breakpoint the comment was left on - url: - type: string - docs: The URL of the page the comment was left on - content: - type: string - docs: The content of the comment reply - isResolved: - type: boolean - docs: Boolean determining if the comment thread is resolved - default: false - author: CommentThreadAuthor - mentionedUsers: - docs: >- - List of mentioned users. This is an empty array until email - notifications are sent, which can take up to 5 minutes after the - comment is created. - type: list - createdOn: - type: string - docs: The date the item was created - lastUpdated: - type: string - docs: The date the item was last updated - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CommentThreadListPagination: - properties: - limit: - type: double - docs: The limit specified in the request (default 100) - default: 100 - offset: - type: double - docs: The offset specified for pagination - default: 0 - total: - type: double - docs: Total number of comment threads - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CommentThreadList: - docs: > - A list of comment threads on the site. Contains the content of the first - reply. - properties: - comments: list - pagination: CommentThreadListPagination - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CommentReplyAuthor: - properties: - id: - type: string - docs: The unique identifier of the author - email: - type: string - docs: Email of the author - name: - type: string - docs: Name of the author - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CommentReplyMentionedUsersItem: - properties: - id: - type: string - docs: The unique identifier of the mentioned user - email: - type: string - docs: Email of the user - name: - type: string - docs: Name of the User - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CommentReply: - docs: > - A comment thread represents a conversation between users on a specific - page. Each comment thread has a unique identifier and can contain multiple - comments. - properties: - id: - type: string - docs: Unique identifier for the comment thread - commentId: - type: string - docs: The comment reply unique identifier - siteId: - type: string - docs: The site unique identifier - pageId: - type: string - docs: The page unique identifier - localeId: - type: optional - docs: The locale unique identifier - access: read-only - breakpoint: - type: string - docs: The breakpoint the comment was left on - content: - type: string - docs: The content of the comment reply - isResolved: - type: boolean - docs: Boolean determining if the comment thread is resolved - default: false - author: CommentReplyAuthor - mentionedUsers: - type: optional> - docs: >- - List of mentioned users is an empty array until email notifications - are sent. - lastUpdated: - type: optional - docs: The date the item was last updated - access: read-only - createdOn: - type: optional - docs: The date the item was created - access: read-only - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CommentReplyListPagination: - properties: - limit: - type: double - docs: The limit specified in the request (default 100) - default: 100 - offset: - type: double - docs: The offset specified for pagination - default: 0 - total: - type: double - docs: Total number of comment replies - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CommentReplyList: - docs: | - A list of comment replies. - properties: - comments: list - pagination: CommentReplyListPagination - source: - openapi: ../../../openapi/referenced-specs/v2.yml - PageSeo: - docs: SEO-related fields for the Page - properties: - title: - type: optional - docs: The Page title shown in search engine results - description: - type: optional - docs: The Page description shown in search engine results - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - PageOpenGraph: - docs: Open Graph fields for the Page - properties: - title: - type: optional - docs: The title supplied to Open Graph annotations - titleCopied: - type: optional - docs: Indicates the Open Graph title was copied from the SEO title - default: true - access: read-only - description: - type: optional - docs: The description supplied to Open Graph annotations - descriptionCopied: - type: optional - docs: >- - Indicates the Open Graph description was copied from the SEO - description - default: true - access: read-only - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Page: - docs: The Page object - properties: - id: - type: string - docs: Unique identifier for the Page - siteId: - type: optional - docs: Unique identifier for the Site - access: read-only - title: - type: optional - docs: Title of the Page - slug: - type: optional - docs: slug of the Page (derived from title) - parentId: - type: optional - docs: Identifier of the parent folder - access: read-only - collectionId: - type: optional - docs: >- - Unique identifier for a linked Collection, value will be null if the - Page is not part of a Collection. - access: read-only - createdOn: - type: optional - docs: The date the Page was created - access: read-only - lastUpdated: - type: optional - docs: The date the Page was most recently updated - access: read-only - archived: - type: optional - docs: Whether the Page has been archived - default: false - access: read-only - draft: - type: optional - docs: Whether the Page is a draft - default: false - access: read-only - canBranch: - type: optional - docs: >- - Indicates whether the Page supports [Page - Branching](https://university.webflow.com/lesson/page-branching). - Pages that are already branches cannot be branched again. - default: false - access: read-only - isBranch: - type: optional - docs: >- - Indicates whether the Page is a Branch of another Page [Page - Branching](https://university.webflow.com/lesson/page-branching) - default: false - access: read-only - branchId: - type: optional - docs: If the Page is a Branch of another Page, this is the ID of the Branch - seo: - type: optional - docs: SEO-related fields for the Page - openGraph: - type: optional - docs: Open Graph fields for the Page - localeId: - type: optional - docs: Unique ID of the page locale - access: read-only - publishedPath: - type: optional - docs: Relative path of the published page URL - access: read-only - source: - openapi: ../../../openapi/referenced-specs/v2.yml - PageList: - docs: The Page object - properties: - pages: optional> - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - TextNodeText: - docs: The text content of the node - properties: - html: - type: optional - docs: The HTML content of the text node. - text: - type: optional - docs: The raw text content of the text node. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Text Node DOM: - docs: > - Represents text content within the DOM. It contains both the raw text and - its HTML representation. Additional attributes can be associated with the - text for styling or other purposes. - properties: - id: - type: string - docs: Node UUID - text: - type: TextNodeText - docs: The text content of the node - attributes: - type: optional> - docs: The custom attributes of the node - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ImageNodeImage: - docs: The image details of the node - properties: - alt: optional - assetId: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Image Node DOM: - docs: > - Represents an image within the DOM. It contains details about the image, - such as its alternative text (alt) for accessibility and an asset - identifier for fetching the actual image resource. Additional attributes - can be associated with the image for styling or other purposes. - properties: - id: - type: string - docs: Node UUID - image: - type: ImageNodeImage - docs: The image details of the node - attributes: - type: optional> - docs: The custom attributes of the node - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Text: - docs: The text content of the node - properties: - html: - type: optional - docs: The HTML content of the text node. - text: - type: optional - docs: The raw text content of the text node. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ComponentPropertyType: - enum: - - value: Plain Text - name: PlainText - - value: Rich Text - name: RichText - - value: Alt Text - name: AltText - docs: The type of the property. - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ComponentProperty: - docs: > - Represents a property of a component instance in the DOM. A property - contains a list of both the raw text and the HTML representation, allowing - for flexibility in rendering and processing. Additional attributes can be - associated with the text for styling or other purposes. - properties: - propertyId: - type: optional - docs: The ID of the property. - type: - type: optional - docs: The type of the property. - label: - type: optional - docs: The label of the property in the UI. - text: - type: optional - docs: >- - Represents text content within the DOM. It contains both the raw text - and its HTML representation. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Component Node DOM: - docs: > - Represents a component instance within the DOM. It contains details about - the component instance, such as its type and properties. - properties: - id: - type: string - docs: The unique identifier of the component instance node - componentId: - type: string - docs: The unique identifier of the component - propertyOverrides: - docs: List of component properties with overrides for a component instance. - type: list - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Text Input Node DOM: - docs: > - Represents text input and textarea elements within the DOM. It contains - the placeholder text in the input. Additional attributes can be associated - with the text for styling or other purposes. - properties: - id: - type: string - docs: Node UUID - placeholder: - type: string - docs: The placeholder text of the input node - attributes: - type: optional> - docs: The custom attributes of the node - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SelectNodeChoicesItem: - properties: - value: - type: string - docs: The value of the choice when selected. - text: - type: string - docs: The text to display for the choice. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Select Node DOM: - docs: > - Represents select elements within the DOM. It contains the list of choices - in the select. Additional attributes can be associated with the text for - styling or other purposes. - properties: - id: - type: string - docs: Node UUID - choices: - docs: The list of choices in this select node. - type: list - attributes: - type: optional> - docs: The custom attributes of the node - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Submit Button Node DOM: - docs: > - Represents submit button elements within the DOM. It contains the text and - waiting text of the button. Additional attributes can be associated with - the text for styling or other purposes. - properties: - id: - type: string - docs: Node UUID - value: - type: string - docs: The text content of the submit button. - waitingText: - type: string - docs: The text to show while the form is submitting. - attributes: - type: optional> - docs: The custom attributes of the node - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Search Button Node DOM: - docs: > - Represents search button elements within the DOM. It contains the text of - the button. Additional attributes can be associated with the text for - styling or other purposes. - properties: - id: - type: string - docs: Node UUID - value: - type: string - docs: The text content of the search button. - attributes: - type: optional> - docs: The custom attributes of the node - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Node: - discriminant: type - base-properties: {} - docs: > - A generic representation of a content element within the Document Object - Model (DOM). Each node has a unique identifier and a specific type that - determines its content structure and attributes. - union: - text: - type: Text Node DOM - image: - type: Image Node DOM - component-instance: - type: Component Node DOM - text-input: - type: Text Input Node DOM - select: - type: Select Node DOM - submit-button: - type: Submit Button Node DOM - search-button: - type: Search Button Node DOM - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Dom: - docs: > - The DOM (Document Object Model) schema represents the content structure of - a web page or component. It captures various content nodes along with - their associated attributes. Each node has a unique identifier and can be - of different types like text, image or component-instance. The schema also - provides pagination details for scenarios where the content nodes are too - many to be fetched in a single request. - properties: - pageId: - type: optional - docs: Page ID - branchId: - type: optional - docs: If the page is a branch, this is the ID of the branch - nodes: optional> - pagination: optional - lastUpdated: - type: optional - docs: The date the page dom was most recently updated - access: read-only - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Text Node: - docs: Update a text node - properties: - nodeId: - type: string - docs: Node UUID - text: - type: string - docs: >- - HTML content of the node, including the HTML tag. The HTML tags must - be the same as what's returned from the Get Content endpoint. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ComponentInstanceNodePropertyOverridesWritePropertyOverridesItem: - properties: - propertyId: - type: string - docs: The ID of the property. - text: - type: string - docs: > - The new string or HTML value used to override the component instance - property value. - - The provided value must be compatible with the type of the component - instance property. - - For example, attempting to override a single-line plain-text property - with a multi-line - - value will result in an error. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Component Instance: - docs: Update text property overrides of a component instance - properties: - nodeId: - type: string - docs: Node UUID - propertyOverrides: - docs: >- - A list of component instance properties to override within the - specified secondary locale. - type: list - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SelectNodeWriteChoicesItem: - properties: - value: - type: string - docs: The value of the choice when selected. - text: - type: string - docs: The text to display for the choice. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Select: - docs: Update choices on a select node - properties: - nodeId: - type: string - docs: Node UUID - choices: - docs: The list of choices to set on the select node. - type: list - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Text Input: - docs: Update placeholder text on a text input node - properties: - nodeId: - type: string - docs: Node UUID - placeholder: - type: string - docs: The placeholder text of the input node - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Submit Button: - docs: Update a submit button node - properties: - nodeId: - type: string - docs: Node UUID - value: - type: optional - docs: The text content of the submit button. - waitingText: - type: optional - docs: The text to show while the form is submitting. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Search Button: - docs: Update a search button node - properties: - nodeId: - type: string - docs: Node UUID - value: - type: string - docs: The text content of the search button. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Component: - docs: The Component object - properties: - id: - type: string - docs: Unique identifier for the Component - name: - type: optional - docs: Component Name - access: read-only - group: - type: optional - docs: The group that the component belongs to - access: read-only - description: - type: optional - docs: Component Description - access: read-only - readonly: - type: optional - docs: >- - Indicates whether the component is read-only. Components that cannot - be updated within this Site are set to readonly. Workspace Libraries - are a good example. - access: read-only - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ComponentList: - docs: List of Components on a site. - properties: - components: optional> - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ComponentDom: - docs: > - The Component DOM schema represents the content structure of a component. - Similar to Page DOM, it captures various content nodes and their - associated attributes, but specifically for a component's structure. Each - node has a unique identifier and can contain text, images, select or text - inputs, submit buttons, or nested component instances. - properties: - componentId: - type: optional - docs: Component ID - nodes: optional> - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ComponentProperties: - docs: > - The Component Properties schema represents a list of properties that store - text content. Each property has a unique identifier and can be of - different types like plain text or rich text. The schema also provides - pagination details for scenarios where there more properties than the - limit. - properties: - componentId: - type: optional - docs: Component ID - access: read-only - properties: optional> - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ScriptApplyLocation: - enum: - - header - - footer - docs: >- - Location of the script, either in the header or footer of the published - site - default: header - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ScriptApply: - properties: - id: - type: string - docs: ID of the registered custom code script - location: - type: ScriptApplyLocation - docs: >- - Location of the script, either in the header or footer of the - published site - default: header - version: - type: string - docs: Semantic Version String for the registered script *e.g. 0.0.1* - attributes: - type: optional> - docs: >- - Developer-specified key/value pairs to be applied as attributes to the - script - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ScriptApplyList: - properties: - scripts: - type: optional> - docs: A list of scripts applied to a Site or a Page - lastUpdated: - type: optional - docs: Date when the Site's scripts were last updated - access: read-only - createdOn: - type: optional - docs: Date when the Site's scripts were created - access: read-only - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CustomCodeHostedResponse: - docs: Registered custom code for application - properties: - id: - type: optional - docs: Human readable id, derived from the user-specified display name - access: read-only - canCopy: - type: optional - docs: >- - Define whether the script can be copied on site duplication and - transfer - default: false - displayName: - type: optional - docs: >- - User-facing name for the script. Must be between 1 and 50 alphanumeric - characters - hostedLocation: - type: optional - docs: URI for an externally hosted script location - integrityHash: - type: optional - docs: >- - Sub-Resource Integrity Hash. Only required for externally hosted - scripts (passed via hostedLocation) - createdOn: - type: optional - docs: Timestamp when the script version was created - access: read-only - lastUpdated: - type: optional - docs: Timestamp when the script version was last updated - access: read-only - version: - type: optional - docs: A Semantic Version (SemVer) string, denoting the version of the script - source: - openapi: ../../../openapi/referenced-specs/v2.yml - RegisteredScriptList: - docs: A list of scripts registered to the site - properties: - registeredScripts: optional> - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CustomCodeInlineResponse: - docs: Registered custom code for application - properties: - id: - type: optional - docs: Human readable id, derived from the user-specified display name - access: read-only - canCopy: - type: optional - docs: >- - Define whether the script can be copied on site duplication and - transfer - default: false - displayName: - type: optional - docs: >- - User-facing name for the script. Must be between 1 and 50 alphanumeric - characters - hostedLocation: - type: optional - docs: URI for an externally hosted script location - integrityHash: - type: optional - docs: >- - Sub-Resource Integrity Hash. Only required for externally hosted - scripts (passed via hostedLocation) - createdOn: - type: optional - docs: Timestamp when the script version was created - access: read-only - lastUpdated: - type: optional - docs: Timestamp when the script version was last updated - access: read-only - version: - type: optional - docs: A Semantic Version (SemVer) string, denoting the version of the script - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Scripts: - docs: A list of scripts applied to a Site or a Page - type: list - CustomCodeBlockType: - enum: - - page - - site - docs: Whether the Custom Code script is applied at the Site-level or Page-level - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CustomCodeBlock: - docs: A specific instance of Custom Code applied to a Site or Page - properties: - siteId: - type: optional - docs: The Site ID where the custom code was applied - pageId: - type: optional - docs: The Page ID (if applied at Page-level) - type: - type: optional - docs: >- - Whether the Custom Code script is applied at the Site-level or - Page-level - scripts: optional - createdOn: - type: optional - docs: The date the Block was created - access: read-only - lastUpdated: - type: optional - docs: The date the Block was most recently updated - access: read-only - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ListCustomCodeBlocks: - docs: Custom Code Blocks corresponding to where scripts were applied - properties: - blocks: optional> - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - AssetVariant: - docs: Asset variant details - properties: - hostedUrl: - type: string - docs: URL of where the asset variant is hosted - validation: - format: uri - originalFileName: - type: string - docs: Original file name of the variant - displayName: - type: string - docs: Display name of the variant - format: - type: string - docs: format of the variant - width: - type: integer - docs: Width in pixels - height: - type: optional - docs: Height in pixels - quality: - type: integer - docs: Value between 0 and 100 representing the image quality - error: - type: optional - docs: Any associated validation errors - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Asset: - docs: Asset details - properties: - id: - type: optional - docs: Unique identifier for this asset - access: read-only - contentType: - type: optional - docs: File format type - access: read-only - size: - type: optional - docs: size in bytes - access: read-only - siteId: - type: optional - docs: Unique identifier for the site that hosts this asset - access: read-only - hostedUrl: - type: optional - docs: Link to the asset - validation: - format: uri - access: read-only - originalFileName: - type: optional - docs: Original file name at the time of upload - access: read-only - displayName: - type: string - docs: Display name of the asset - lastUpdated: - type: optional - docs: Date the asset metadata was last updated - access: read-only - createdOn: - type: optional - docs: Date the asset metadata was created - access: read-only - variants: - docs: >- - A list of [asset - variants](https://help.webflow.com/hc/en-us/articles/33961378697107-Responsive-images) - created by Webflow to serve your site responsively. - type: list - altText: - type: optional - docs: The visual description of the asset - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Assets: - docs: A list of assets - properties: - assets: optional> - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - AssetUploadUploadDetails: - docs: Metadata for uploading the asset binary - properties: - acl: optional - bucket: optional - X-Amz-Algorithm: optional - X-Amz-Credential: optional - X-Amz-Date: optional - key: optional - Policy: optional - X-Amz-Signature: optional - success_action_status: optional - content-type: optional - Cache-Control: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - AssetUpload: - properties: - uploadDetails: - type: optional - docs: Metadata for uploading the asset binary - contentType: optional - id: optional - parentFolder: - type: optional - docs: Parent folder for the asset - uploadUrl: - type: optional - validation: - format: uri - assetUrl: - type: optional - docs: S3 link to the asset - validation: - format: uri - hostedUrl: - type: optional - docs: Represents the link to the asset - validation: - format: uri - originalFileName: - type: optional - docs: >- - Original file name when uploaded. If not specified at time of upload, - it may be extracted from the raw file name - createdOn: - type: optional - docs: Date the asset metadata was created - lastUpdated: - type: optional - docs: Date the asset metadata was last updated - source: - openapi: ../../../openapi/referenced-specs/v2.yml - AssetFolder: - docs: Asset Folder details - properties: - id: - type: optional - docs: Unique identifier for the Asset Folder - displayName: - type: optional - docs: User visible name for the Asset Folder - parentFolder: - type: optional - docs: Pointer to parent Asset Folder (or null if root) - assets: - type: optional> - docs: Array of Asset instances in the folder - siteId: - type: optional - docs: The unique ID of the site the Asset Folder belongs to - createdOn: - type: optional - docs: Date that the Asset Folder was created on - lastUpdated: - type: optional - docs: Date that the Asset Folder was last updated on - source: - openapi: ../../../openapi/referenced-specs/v2.yml - AssetFolderList: - docs: The Asset Folders object - properties: - assetFolders: - type: optional> - docs: A list of Asset folders - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - TriggerType: - enum: - - form_submission - - site_publish - - page_created - - page_metadata_updated - - page_deleted - - ecomm_new_order - - ecomm_order_changed - - ecomm_inventory_changed - - user_account_added - - user_account_updated - - user_account_deleted - - collection_item_created - - collection_item_changed - - collection_item_deleted - - collection_item_unpublished - - comment_created - docs: > - The type of event that triggered the request. See the the documentation - for details on [supported events](/data/reference/all-events). - source: - openapi: ../../../openapi/referenced-specs/v2.yml - WebhookFilter: - docs: >- - Only supported for the `form_submission` trigger type. Filter for the form - you want Webhooks to be sent for. - properties: - name: - type: optional - docs: The name of the form you'd like to recieve notifications for. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Webhook: - properties: - id: - type: optional - docs: Unique identifier for the Webhook registration - access: read-only - triggerType: optional - url: - type: optional - docs: URL to send the Webhook payload to - workspaceId: - type: optional - docs: Unique identifier for the Workspace the Webhook is registered in - access: read-only - siteId: - type: optional - docs: Unique identifier for the Site the Webhook is registered in - access: read-only - filter: - type: optional - docs: >- - Only supported for the `form_submission` trigger type. Filter for the - form you want Webhooks to be sent for. - lastTriggered: - type: optional - docs: Date the Webhook instance was last triggered - access: read-only - createdOn: - type: optional - docs: Date the Webhook registration was created - access: read-only - source: - openapi: ../../../openapi/referenced-specs/v2.yml - WebhookList: - properties: - webhooks: optional> - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - FormFieldValueType: - enum: - - Plain - - Email - - Password - - Phone - - Number - docs: The field type - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - FormFieldValue: - docs: An object containing field info for a specific fieldID. - properties: - displayName: - type: optional - docs: The field name displayed on the site - type: - type: optional - docs: The field type - placeholder: - type: optional - docs: The placeholder text for the field - userVisible: - type: optional - docs: Whether the field is visible to the user - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - FormField: - type: map - docs: A collection of form fields with additional properties. - FormResponseSettings: - docs: Settings for form responses - properties: - redirectUrl: - type: optional - docs: The url or path to redirect the user to after form submission - redirectMethod: - type: optional - docs: The HTTP request method to use for the redirectUrl (eg. POST or GET) - redirectAction: - type: optional - docs: The action to take after form submission - sendEmailConfirmation: - type: optional - docs: Whether to send an email confirmation to the user - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Form: - docs: A Webflow form - properties: - displayName: - type: optional - docs: The Form name displayed on the site - createdOn: - type: optional - docs: Date that the Form was created on - lastUpdated: - type: optional - docs: Date that the Form was last updated on - fields: - type: optional - docs: A collection of form field objects - responseSettings: - type: optional - docs: Settings for form responses - id: - type: optional - docs: The unique ID for the Form - siteId: - type: optional - docs: The unique ID of the Site the Form belongs to - siteDomainId: - type: optional - docs: The unique ID corresponding to the site's Domain name - pageId: - type: optional - docs: The unique ID for the Page on which the Form is placed - pageName: - type: optional - docs: The user-visible name of the Page where the Form is placed - formElementId: - type: optional - docs: The unique ID of the Form element - workspaceId: - type: optional - docs: The unique ID of the Workspace the Site belongs to - source: - openapi: ../../../openapi/referenced-specs/v2.yml - FormList: - properties: - forms: optional> - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - FormSubmission: - properties: - id: - type: optional - docs: The unique ID of the Form submission - displayName: - type: optional - docs: The Form name displayed on the site - siteId: - type: optional - docs: The unique ID of the Site the Form belongs to - workspaceId: - type: optional - docs: The unique ID of the Workspace the Site belongs to - dateSubmitted: - type: optional - docs: Date that the Form was submitted on - formResponse: - type: optional> - docs: The data submitted in the Form - source: - openapi: ../../../openapi/referenced-specs/v2.yml - FormSubmissionList: - properties: - formSubmissions: optional> - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - UserStatus: - enum: - - invited - - verified - - unverified - docs: The status of the user - source: - openapi: ../../../openapi/referenced-specs/v2.yml - UserAccessGroupsItemType: - enum: - - admin - - ecommerce - docs: | - The type of access group based on how it was assigned to the user. - * `admin` - Assigned to the user via API or in the designer - * `ecommerce` - Assigned to the user via an ecommerce purchase - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - UserAccessGroupsItem: - docs: Access group slugs and types - properties: - slug: - type: optional - docs: Access group identifier for APIs - type: - type: optional - docs: | - The type of access group based on how it was assigned to the user. - * `admin` - Assigned to the user via API or in the designer - * `ecommerce` - Assigned to the user via an ecommerce purchase - source: - openapi: ../../../openapi/referenced-specs/v2.yml - UserDataData: - properties: - name: - type: optional - docs: | - The name of the user - email: - type: optional - docs: | - The email address of the user - accept-privacy: - type: optional - docs: | - Boolean indicating if the user has accepted the privacy policy - accept-communications: - type: optional - docs: | - Boolean indicating if the user has accepted to receive communications - additionalProperties: - type: optional - docs: Custom user attributes - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - UserData: - docs: An object containing the User's basic info and custom fields - properties: - data: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - User: - docs: > - The fields that define the schema for a given Item are based on the - Collection that Item belongs to. Beyond the user defined fields, there are - a handful of additional fields that are automatically created for all - items - properties: - id: - type: optional - docs: Unique identifier for the User - access: read-only - isEmailVerified: - type: optional - docs: Shows whether the user has verified their email address - access: read-only - lastUpdated: - type: optional - docs: The timestamp the user was updated - access: read-only - invitedOn: - type: optional - docs: The timestamp the user was invited - access: read-only - createdOn: - type: optional - docs: The timestamp the user was created - access: read-only - lastLogin: - type: optional - docs: The timestamp the user was logged in - access: read-only - status: optional - accessGroups: - type: optional> - docs: Access groups the user belongs to - data: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - UserList: - docs: The list users results - properties: - count: - type: optional - docs: Number of users returned - limit: - type: optional - docs: The limit specified in the request - default: 10 - offset: - type: optional - docs: The offset specified for pagination - default: 0 - total: - type: optional - docs: Total number of users in the collection - users: - type: optional> - docs: List of Users for a Site - source: - openapi: ../../../openapi/referenced-specs/v2.yml - UsersNotEnabled: unknown - DuplicateUserEmail: unknown - UserLimitReached: unknown - AccessGroup: - properties: - id: - type: optional - docs: Unique identifier for the Access Group - name: - type: optional - docs: Name of the the Access Group - shortId: - type: optional - docs: >- - Shortened unique identifier based on name, optimized for its use in - the user’s JWT - slug: - type: optional - docs: >- - Shortened unique identifier based on name, optimized for human - readability and public API use - createdOn: - type: optional - docs: The date the Access Group was created - source: - openapi: ../../../openapi/referenced-specs/v2.yml - AccessGroupList: - docs: The list access groups results - properties: - count: - type: optional - docs: Number of access groups returned - limit: - type: optional - docs: The limit specified in the request - default: 10 - offset: - type: optional - docs: The offset specified for pagination - default: 0 - total: - type: optional - docs: Total number of access groups in the collection - accessGroups: - type: optional> - docs: List of Site Access Groups - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SkuPropertyListEnumItem: - docs: Enumerated Product variants/Options for the SKU - properties: - id: - type: string - docs: Unique identifier for a Product variant/Option - name: - type: string - docs: Name of the Product variant/Option - slug: - type: string - docs: Slug for the Product variant/Option in the Site URL structure - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - SkuPropertyList: - docs: A variant/option type for a SKU - properties: - id: - type: string - docs: Unique identifier for a collection of Product Variants - name: - type: string - docs: Name of the collection of Product Variants - enum: - docs: >- - The individual Product variants that are contained within the - collection - type: list - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ProductFieldDataTaxCategory: - enum: - - value: standard-taxable - name: StandardTaxable - - value: standard-exempt - name: StandardExempt - - value: books-religious - name: BooksReligious - - value: books-textbook - name: BooksTextbook - - clothing - - value: clothing-swimwear - name: ClothingSwimwear - - value: digital-goods - name: DigitalGoods - - value: digital-service - name: DigitalService - - value: drugs-non-prescription - name: DrugsNonPrescription - - value: drugs-prescription - name: DrugsPrescription - - value: food-bottled-water - name: FoodBottledWater - - value: food-candy - name: FoodCandy - - value: food-groceries - name: FoodGroceries - - value: food-prepared - name: FoodPrepared - - value: food-soda - name: FoodSoda - - value: food-supplements - name: FoodSupplements - - value: magazine-individual - name: MagazineIndividual - - value: magazine-subscription - name: MagazineSubscription - - value: service-admission - name: ServiceAdmission - - value: service-advertising - name: ServiceAdvertising - - value: service-dry-cleaning - name: ServiceDryCleaning - - value: service-hairdressing - name: ServiceHairdressing - - value: service-installation - name: ServiceInstallation - - value: service-miscellaneous - name: ServiceMiscellaneous - - value: service-parking - name: ServiceParking - - value: service-printing - name: ServicePrinting - - value: service-professional - name: ServiceProfessional - - value: service-repair - name: ServiceRepair - - value: service-training - name: ServiceTraining - docs: Product tax class - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ProductFieldDataEcProductType: - enum: - - ff42fee0113744f693a764e3431a9cc2 - - f22027db68002190aef89a4a2b7ac8a1 - - c599e43b1a1c34d5a323aedf75d3adf6 - - b6ccc1830db4b1babeb06a9ac5f6dd76 - docs: >- - Product - types. Enums reflect the following values in order: Physical, Digital, - Service, Advanced" - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ProductFieldData: - docs: >- - Contains content-specific details for a product, covering both standard - (e.g., title, description) and custom fields tailored to the product - setup. - properties: - name: - type: optional - docs: Name of the Product - slug: - type: optional - docs: URL structure of the Product in your site. - description: - type: optional - docs: A description of your product - shippable: - type: optional - docs: Boolean determining if the Product is shippable - sku-properties: - type: optional> - docs: Variant types to include in SKUs - category: - type: optional> - docs: The category your product belongs to. - tax-category: - type: optional - docs: Product tax class - default-sku: - type: optional - docs: The default SKU associated with this product. - ec-product-type: - type: optional - docs: >- - Product - types. Enums reflect the following values in order: Physical, - Digital, Service, Advanced" - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Product: - docs: The Product object - properties: - id: - type: optional - docs: Unique identifier for the Product - access: read-only - cmsLocaleId: - type: optional - docs: Identifier for the locale of the CMS item - access: read-only - lastPublished: - type: optional - docs: The date the Product was last published - access: read-only - lastUpdated: - type: optional - docs: The date the Product was last updated - access: read-only - createdOn: - type: optional - docs: The date the Product was created - access: read-only - isArchived: - type: optional - docs: Boolean determining if the Product is set to archived - default: false - isDraft: - type: optional - docs: Boolean determining if the Product is set to draft - default: false - fieldData: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SkuValueList: - type: map - docs: > - A mapping between SKU properties and their values, represented as - key-value pairs. Each key represents a SKU Property ID (e.g. "color") and - maps to its corresponding SKU Value ID (e.g. "blue"). This structure - defines the specific variant combination for a SKU. - SkuFieldDataPrice: - docs: price of SKU - properties: - value: - type: optional - docs: Price of SKU - unit: - type: optional - docs: Currency of Item - currency: - type: optional - docs: Currency of Item (alternative representation) - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - SkuFieldDataCompareAtPrice: - docs: comparison price of SKU - properties: - value: - type: optional - docs: Price of SKU - unit: - type: optional - docs: Currency of Item - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - SkuFieldDataEcSkuBillingMethod: - enum: - - value: one-time - name: OneTime - - subscription - docs: >- - [Billing - method](https://help.webflow.com/hc/en-us/articles/33961432087955-Add-and-manage-products-and-categories#billing-methods)for - the SKU - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SkuFieldDataEcSkuSubscriptionPlanInterval: - enum: - - day - - week - - month - - year - docs: Interval of subscription renewal - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SkuFieldDataEcSkuSubscriptionPlanPlansItemStatus: - enum: - - active - - inactive - - canceled - docs: The status of the plan - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SkuFieldDataEcSkuSubscriptionPlanPlansItem: - properties: - platform: - type: optional> - docs: The platform of the subscription plan - id: - type: optional - docs: The unique identifier of the plan - status: - type: optional - docs: The status of the plan - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - SkuFieldDataEcSkuSubscriptionPlan: - docs: >- - [Subscription - plan](https://help.webflow.com/hc/en-us/articles/33961432087955-Add-and-manage-products-and-categories#subscription) - for the SKU - properties: - interval: - type: optional - docs: Interval of subscription renewal - frequency: - type: optional - docs: Frequncy of billing within interval - trial: - type: optional - docs: Number of days of a trial - plans: - type: optional> - access: read-only - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - SkuFieldData: - docs: Standard and Custom fields for a SKU - properties: - sku-values: optional - name: - type: string - docs: Name of the Product - slug: - type: string - docs: URL structure of the Product in your site. - price: - type: SkuFieldDataPrice - docs: price of SKU - compare-at-price: - type: optional - docs: comparison price of SKU - ec-sku-billing-method: - type: optional - docs: >- - [Billing - method](https://help.webflow.com/hc/en-us/articles/33961432087955-Add-and-manage-products-and-categories#billing-methods)for - the SKU - ec-sku-subscription-plan: - type: optional - docs: >- - [Subscription - plan](https://help.webflow.com/hc/en-us/articles/33961432087955-Add-and-manage-products-and-categories#subscription) - for the SKU - main-image: - type: optional - docs: The URL for the main image of the SKU - sku: - type: optional - docs: A unique identifier for the SKU - sku-properties: - type: optional> - docs: The properties of the SKU - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Sku: - docs: The SKU object - properties: - id: - type: optional - docs: Unique identifier for the Product - access: read-only - cmsLocaleId: - type: optional - docs: Identifier for the locale of the CMS item - access: read-only - lastPublished: - type: optional - docs: The date the Product was last published - access: read-only - lastUpdated: - type: optional - docs: The date the Product was last updated - access: read-only - createdOn: - type: optional - docs: The date the Product was created - access: read-only - fieldData: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ProductAndSkUs: - docs: A product and its SKUs. - properties: - product: optional - skus: - type: optional> - docs: A list of SKU Objects - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ProductAndSkUsList: - docs: Results from product list - properties: - items: - type: optional> - docs: >- - List of Item objects within the Collection. Contains product and skus - keys for each Item - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - PublishStatus: - enum: - - staging - - live - docs: Indicate whether your Product should be set as "staging" or "live" - default: staging - source: - openapi: ../../../openapi/referenced-specs/v2.yml - OrderPrice: - properties: - unit: - type: optional - docs: The three-letter ISO currency code - value: - type: optional - docs: The numeric value in the base unit of the currency - string: - type: optional - docs: The user-facing string representation of the amount - source: - openapi: ../../../openapi/referenced-specs/v2.yml - OrderAddressType: - enum: - - shipping - - billing - docs: The type of the order address (billing or shipping) - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - OrderAddressJapanType: - enum: - - kana - - kanji - docs: >- - Represents a Japan-only address format. This field will only appear on - orders placed from Japan. - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - OrderAddress: - docs: A customer address - properties: - type: - type: optional - docs: The type of the order address (billing or shipping) - japanType: - type: optional - docs: >- - Represents a Japan-only address format. This field will only appear on - orders placed from Japan. - addressee: - type: optional - docs: Display name on the address - line1: - type: optional - docs: The first line of the address - line2: - type: optional - docs: The second line of the address - city: - type: optional - docs: The city of the address. - state: - type: optional - docs: The state or province of the address - country: - type: optional - docs: The country of the address - postalCode: - type: optional - docs: The postal code of the address - source: - openapi: ../../../openapi/referenced-specs/v2.yml - OrderPurchasedItemVariantImageFileVariantsItem: - properties: - url: - type: optional - docs: The hosted location for the Variant's image - validation: - format: uri - originalFileName: optional - size: - type: optional - docs: The image size in bytes - width: - type: optional - docs: The image width in pixels - height: - type: optional - docs: The image height in pixels - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - OrderPurchasedItemVariantImageFile: - properties: - size: - type: optional - docs: The image size in bytes - originalFileName: - type: optional - docs: the original name of the image - createdOn: - type: optional - docs: The creation timestamp of the image - contentType: - type: optional - docs: The MIME type of the image - width: - type: optional - docs: The image width in pixels - height: - type: optional - docs: The image height in pixels - variants: - type: optional> - docs: Variants of the supplied image - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - OrderPurchasedItemVariantImage: - properties: - url: - type: optional - docs: The hosted location for the Variant's image - validation: - format: uri - file: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - OrderPurchasedItem: - docs: An Item that was purchased - properties: - count: - type: optional - docs: Number of Item purchased. - rowTotal: - type: optional - docs: The total for the row - productId: - type: optional - docs: The unique identifier for the Product - access: read-only - productName: - type: optional - docs: User-facing name of the Product - productSlug: - type: optional - docs: Slug for the Product - variantId: - type: optional - docs: Identifier for the Product Variant (SKU) - variantName: - type: optional - docs: User-facing name of the Product Variant (SKU) - variantSlug: - type: optional - docs: Slug for the Product Variant (SKU) - variantSKU: - type: optional - docs: The user-defined custom SKU of the Product Variant (SKU) - variantImage: optional - variantPrice: - type: optional - docs: The price corresponding to the variant - weight: - type: optional - docs: The physical weight of the variant if provided, or null - width: - type: optional - docs: The physical width of the variant if provided, or null - height: - type: optional - docs: The physical height of the variant if provided, or null - length: - type: optional - docs: The physical length of the variant if provided, or null - source: - openapi: ../../../openapi/referenced-specs/v2.yml - StripeDetails: - docs: >- - An object with various Stripe IDs, useful for linking into the stripe - dashboard. - properties: - subscriptionId: - type: optional - docs: Stripe-generated identifier for the Subscription - paymentMethod: - type: optional - docs: Stripe-generated identifier for the PaymentMethod used - paymentIntentId: - type: optional - docs: Stripe-generated identifier for the PaymentIntent, or null - customerId: - type: optional - docs: Stripe-generated customer identifier, or null - chargeId: - type: optional - docs: Stripe-generated charge identifier, or null - disputeId: - type: optional - docs: Stripe-generated dispute identifier, or null - refundId: - type: optional - docs: Stripe-generated refund identifier, or null - refundReason: - type: optional - docs: Stripe-generated refund reason, or null - source: - openapi: ../../../openapi/referenced-specs/v2.yml - StripeCardBrand: - enum: - - Visa - - value: American Express - name: AmericanExpress - - MasterCard - - Discover - - JCB - - value: Diners Club - name: DinersClub - - Unknown - docs: The card's brand (ie. credit card network) - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - StripeCardExpires: - docs: The card's expiration date. - properties: - year: - type: optional - docs: Year that the card expires - month: - type: optional - docs: Month that the card expires - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - StripeCard: - docs: > - Details on the card used to fulfill this order, if this order was - finalized with Stripe. - properties: - last4: - type: optional - docs: The last 4 digits on the card as a string - brand: - type: optional - docs: The card's brand (ie. credit card network) - ownerName: - type: optional - docs: The name on the card. - expires: - type: optional - docs: The card's expiration date. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - PaypalDetails: - properties: - orderId: - type: optional - docs: PayPal order identifier - payerId: - type: optional - docs: PayPal payer identifier - captureId: - type: optional - docs: PayPal capture identifier - refundId: - type: optional - docs: PayPal refund identifier - refundReason: - type: optional - docs: PayPal-issued reason for the refund - disputeId: - type: optional - docs: PayPal dispute identifier - source: - openapi: ../../../openapi/referenced-specs/v2.yml - OrderStatus: - enum: - - pending - - unfulfilled - - fulfilled - - disputed - - value: dispute-lost - name: DisputeLost - - refunded - docs: | - The status of the Order - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - OrderDisputeLastStatus: - enum: - - warning_needs_response - - warning_under_review - - warning_closed - - needs_response - - under_review - - charge_refunded - - won - - lost - docs: > - If an order was disputed by the customer, then this key will be set with - the [dispute's status](https://stripe.com/docs/api#dispute_object-status). - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - OrderShippingAddressType: - enum: - - shipping - - billing - docs: The type of the order address (billing or shipping) - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - OrderShippingAddressJapanType: - enum: - - kana - - kanji - docs: >- - Represents a Japan-only address format. This field will only appear on - orders placed from Japan. - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - OrderShippingAddress: - docs: The shipping address - properties: - type: - type: optional - docs: The type of the order address (billing or shipping) - japanType: - type: optional - docs: >- - Represents a Japan-only address format. This field will only appear on - orders placed from Japan. - addressee: - type: optional - docs: Display name on the address - line1: - type: optional - docs: The first line of the address - line2: - type: optional - docs: The second line of the address - city: - type: optional - docs: The city of the address. - state: - type: optional - docs: The state or province of the address - country: - type: optional - docs: The country of the address - postalCode: - type: optional - docs: The postal code of the address - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - OrderBillingAddressType: - enum: - - shipping - - billing - docs: The type of the order address (billing or shipping) - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - OrderBillingAddressJapanType: - enum: - - kana - - kanji - docs: >- - Represents a Japan-only address format. This field will only appear on - orders placed from Japan. - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - OrderBillingAddress: - docs: The billing address - properties: - type: - type: optional - docs: The type of the order address (billing or shipping) - japanType: - type: optional - docs: >- - Represents a Japan-only address format. This field will only appear on - orders placed from Japan. - addressee: - type: optional - docs: Display name on the address - line1: - type: optional - docs: The first line of the address - line2: - type: optional - docs: The second line of the address - city: - type: optional - docs: The city of the address. - state: - type: optional - docs: The state or province of the address - country: - type: optional - docs: The country of the address - postalCode: - type: optional - docs: The postal code of the address - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - OrderCustomerInfo: - docs: An object with the keys `fullName` and `email`. - properties: - fullName: - type: optional - docs: The full name of the Customer - email: - type: optional - docs: The Customer's email address - validation: - format: email - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - OrderMetadata: - properties: - isBuyNow: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - OrderTotalsExtrasItemType: - enum: - - discount - - value: discount-shipping - name: DiscountShipping - - shipping - - tax - docs: The type of extra item this is. - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - OrderTotalsExtrasItem: - docs: Extra order items, includes discounts, shipping, and taxes. - properties: - type: - type: optional - docs: The type of extra item this is. - name: - type: optional - docs: A human-readable (but English) name for this extra charge. - description: - type: optional - docs: A human-readable (but English) description of this extra charge. - price: - type: optional - docs: The price for the item - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - OrderTotals: - docs: An object describing various pricing totals - properties: - subtotal: - type: optional - docs: The subtotal price - extras: - type: optional> - docs: An array of extra items, includes discounts, shipping, and taxes. - total: - type: optional - docs: The total price - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - OrderDownloadFilesItem: - properties: - id: - type: optional - docs: The unique identifier for the downloadable file - name: - type: optional - docs: The user-facing name for the downloadable file - url: - type: optional - docs: The hosted location for the downloadable file - validation: - format: uri - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Order: - properties: - orderId: - type: optional - docs: | - The order ID. Will usually be 6 hex characters, but can also be 9 - hex characters if the site has a very large number of Orders. - Randomly assigned. - access: read-only - status: - type: optional - docs: | - The status of the Order - comment: - type: optional - docs: >- - A comment string for this Order, which is editable by API user (not - used by Webflow). - orderComment: - type: optional - docs: A comment that the customer left when making their Order - acceptedOn: - type: optional - docs: The ISO8601 timestamp that an Order was placed. - fulfilledOn: - type: optional - docs: > - When an Order is marked as 'fulfilled', this field represents the - timestamp of the fulfillment in ISO8601 format. Otherwise, it is null. - refundedOn: - type: optional - docs: >- - When an Order is marked as 'refunded', this field represents the - timestamp of the fulfillment in ISO8601 format. Otherwise, it is null. - disputedOn: - type: optional - docs: > - When an Order is marked as 'disputed', this field represents the - timestamp of the fulfillment in ISO8601 format. Otherwise, it is null. - disputeUpdatedOn: - type: optional - docs: > - If an Order has been disputed by the customer, this key will be set to - the ISO8601 timestamp of the last update received. If the Order is not - disputed, the key will be null. - disputeLastStatus: - type: optional - docs: > - If an order was disputed by the customer, then this key will be set - with the [dispute's - status](https://stripe.com/docs/api#dispute_object-status). - customerPaid: - type: optional - docs: The total paid by the customer - netAmount: - type: optional - docs: The net amount after application fees - applicationFee: - type: optional - docs: The application fee assessed by the platform - allAddresses: - type: optional> - docs: All addresses provided by the customer during the ordering flow. - shippingAddress: - type: optional - docs: The shipping address - billingAddress: - type: optional - docs: The billing address - shippingProvider: - type: optional - docs: > - A string editable by the API user to note the shipping provider used - (not used by Webflow). - shippingTracking: - type: optional - docs: > - A string editable by the API user to note the shipping tracking number - for the order (not used by Webflow). - shippingTrackingURL: - type: optional - validation: - format: uri - customerInfo: - type: optional - docs: An object with the keys `fullName` and `email`. - purchasedItems: - type: optional> - docs: An array of all things that the Customer purchased. - purchasedItemsCount: - type: optional - docs: The sum of all 'count' fields in 'purchasedItems'. - stripeDetails: optional - stripeCard: optional - paypalDetails: optional - customData: - type: optional>> - docs: > - An array of additional inputs for custom order data gathering. Each - object in the array represents an input with a name, and a textInput, - textArea, or checkbox value. - metadata: optional - isCustomerDeleted: - type: optional - docs: > - A boolean indicating whether the customer has been deleted from the - site. - isShippingRequired: - type: optional - docs: > - A boolean indicating whether the order contains one or more purchased - items that require shipping. - hasDownloads: - type: optional - docs: > - A boolean indicating whether the order contains one or more purchased - items that are downloadable. - paymentProcessor: - type: optional - docs: | - A string indicating the payment processor used for this order. - totals: - type: optional - docs: An object describing various pricing totals - downloadFiles: - type: optional> - docs: An array of downloadable file objects. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - OrderList: - docs: Results from order list - properties: - orders: - type: optional> - docs: List of orders - pagination: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - InventoryItemInventoryType: - enum: - - infinite - - finite - docs: infinite or finite - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - InventoryItem: - docs: The availabile inventory for an item - properties: - id: - type: optional - docs: Unique identifier for a SKU item - access: read-only - quantity: - type: optional - docs: >- - Total quantity of items remaining in inventory (if inventoryType is - finite) - inventoryType: - type: optional - docs: infinite or finite - source: - openapi: ../../../openapi/referenced-specs/v2.yml - EcommerceSettings: - docs: Ecommerce settings for a Webflow Site - properties: - siteId: - type: optional - docs: The identifier of the Site - access: read-only - createdOn: - type: optional - docs: Date that the Site was created on - access: read-only - defaultCurrency: - type: optional - docs: The three-letter ISO currency code for the Site - source: - openapi: ../../../openapi/referenced-specs/v2.yml - FormSubmissionTriggerPayloadSchemaItemFieldType: - enum: - - FormTextInput - - FormTextarea - - FormCheckboxInput - - FormRadioInput - - FormFileUploadInput - docs: Form field type - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - FormSubmissionTriggerPayloadSchemaItem: - properties: - fieldName: - type: optional - docs: Form field name - fieldType: - type: optional - docs: Form field type - fieldElementId: - type: optional - docs: Element ID of the Form Field - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - FormSubmissionTriggerPayload: - docs: The payload of data sent from Webflow - properties: - name: - type: optional - docs: The name of the form - siteId: - type: optional - docs: The ID of the site that the form was submitted from - data: - type: optional> - docs: The data submitted in the form - schema: - type: optional> - docs: A list of fields from the submitted form - submittedAt: - type: optional - docs: The timestamp the form was submitted - id: - type: optional - docs: the ID of the event - formId: - type: optional - docs: The ID of the form submission - formElementId: - type: optional - docs: The uniqueID of the Form element - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - FormSubmissionTrigger: - docs: The Webhook payload for when a form is submitted - properties: - triggerType: - type: optional - docs: The type of event that triggered the request - payload: - type: optional - docs: The payload of data sent from Webflow - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SitePublishPayload: - docs: The payload of data sent from Webflow - properties: - siteId: - type: optional - docs: The ID of the site that was published - publishedOn: - type: optional - docs: The timestamp of the publish event - domains: - type: optional> - docs: The domains that were published - publishedBy: - type: optional> - docs: The name andID of the user who published the site - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - SitePublish: - docs: The Webhook payload for when a Site is published - properties: - triggerType: - type: optional - docs: The type of event that triggered the request - payload: - type: optional - docs: The payload of data sent from Webflow - source: - openapi: ../../../openapi/referenced-specs/v2.yml - NewOrder: - docs: The Webhook payload for when a new order is created - properties: - triggerType: - type: optional - docs: The type of event that triggered the request - payload: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - UpdatedOrder: - docs: The Webhook payload for when an order is updated - properties: - triggerType: - type: optional - docs: The type of event that triggered the request - payload: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SingleLocaleCreatedPayloadFieldData: - properties: - name: string - slug: string - extra-properties: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - SingleLocaleCreatedPayload: - properties: - id: - type: string - docs: Unique identifier for the Item - validation: - format: uuid - workspaceId: - type: string - docs: Unique identifier of the workspace - validation: - format: uuid - siteId: - type: string - docs: Unique identifier of the site - validation: - format: uuid - collectionId: - type: string - docs: Unique identifier of the collection - validation: - format: uuid - cmsLocaleId: - type: optional - docs: Unique identifier of the CMS locale for this item - validation: - format: uuid - lastPublished: - type: optional - lastUpdated: - type: optional - createdOn: - type: optional - isArchived: - type: optional - isDraft: - type: optional - fieldData: SingleLocaleCreatedPayloadFieldData - source: - openapi: ../../../openapi/referenced-specs/v2.yml - LocalizedItem: - properties: - _cid: - type: string - docs: Collection ID the item belongs to - validation: - format: uuid - _id: - type: string - docs: Unique identifier for the item - validation: - format: uuid - _locale: - type: string - docs: Locale identifier for this version of the item - validation: - format: uuid - _draft: - type: boolean - docs: Whether the item is in draft state - _archived: - type: boolean - docs: Whether the item is archived - name: - type: string - docs: Name of the item - slug: - type: string - docs: URL-friendly version of the name - updated-on: - type: datetime - docs: Timestamp of last update - updated-by: - type: string - docs: Identifier of user who last updated the item - created-on: - type: datetime - docs: Timestamp of creation - created-by: - type: string - docs: Identifier of user who created the item - published-on: - type: optional - docs: Timestamp of last publish, if published - published-by: - type: optional - docs: Identifier of user who last published the item - source: - openapi: ../../../openapi/referenced-specs/v2.yml - MultiLocaleCreatedPayload: - properties: - siteId: - type: string - docs: Unique identifier of the site - validation: - format: uuid - workspaceId: - type: string - docs: Unique identifier of the workspace - validation: - format: uuid - collectionId: - type: string - docs: Unique identifier of the collection - validation: - format: uuid - cmsLocaleId: - type: optional - docs: Unique identifier of the CMS locale for this item - validation: - format: uuid - fieldData: - type: map - docs: Collection of localized items, keyed by locale index (0-n) - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CollectionItemCreatedPayload: - discriminated: false - union: - - type: SingleLocaleCreatedPayload - - type: MultiLocaleCreatedPayload - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CollectionItemCreated: - docs: The Webhook payload for when a Collection Item is created - properties: - triggerType: - type: literal<"collection_item_created"> - docs: The type of event that triggered the request - payload: CollectionItemCreatedPayload - source: - openapi: ../../../openapi/referenced-specs/v2.yml - SingleLocaleChangedPayloadFieldData: - properties: - name: string - slug: string - extra-properties: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - SingleLocaleChangedPayload: - properties: - id: - type: string - docs: Unique identifier for the Item - validation: - format: uuid - workspaceId: - type: string - docs: Unique identifier of the workspace - validation: - format: uuid - siteId: - type: string - docs: Unique identifier of the site - validation: - format: uuid - collectionId: - type: string - docs: Unique identifier of the collection - validation: - format: uuid - cmsLocaleId: - type: optional - docs: Unique identifier of the CMS locale for this item - validation: - format: uuid - lastPublished: - type: optional - lastUpdated: - type: optional - createdOn: - type: optional - isArchived: - type: optional - isDraft: - type: optional - fieldData: SingleLocaleChangedPayloadFieldData - source: - openapi: ../../../openapi/referenced-specs/v2.yml - MultiLocaleChangedPayloadFieldData: - properties: - name: string - slug: string - _locale: - type: string - docs: Locale identifier for this version of the item - validation: - format: uuid - extra-properties: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - MultiLocaleChangedPayload: - properties: - id: - type: string - docs: Unique identifier for the Item - validation: - format: uuid - workspaceId: - type: string - docs: Unique identifier of the workspace - validation: - format: uuid - siteId: - type: string - docs: Unique identifier of the site - validation: - format: uuid - collectionId: - type: string - docs: Unique identifier of the collection - validation: - format: uuid - cmsLocaleId: - type: optional - docs: Unique identifier of the CMS locale for this item - validation: - format: uuid - lastPublished: - type: optional - lastUpdated: - type: optional - createdOn: - type: optional - isArchived: - type: optional - isDraft: - type: optional - fieldData: MultiLocaleChangedPayloadFieldData - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CollectionItemChangedPayload: - discriminated: false - union: - - type: SingleLocaleChangedPayload - - type: MultiLocaleChangedPayload - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CollectionItemChanged: - docs: The Webhook payload for when a Collection Item is changed - properties: - triggerType: - type: literal<"collection_item_changed"> - docs: The type of event that triggered the request - payload: CollectionItemChangedPayload - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CollectionItemRemovedPayloadFieldData: - properties: - name: string - slug: string - extra-properties: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CollectionItemRemovedPayload: - docs: The payload of data sent from Webflow - properties: - id: - type: optional - docs: The ID of the collection item that was deleted - siteId: - type: optional - docs: The ID of the site - workspaceId: - type: optional - docs: The ID of the workspace - collectionId: - type: optional - docs: The ID of the collection - cmsLocaleId: - type: optional - docs: Unique identifier of the CMS locale for this item - validation: - format: uuid - lastPublished: optional - lastUpdated: optional - createdOn: optional - isArchived: optional - isDraft: optional - fieldData: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CollectionItemRemoved: - properties: - triggerType: - type: optional - docs: The type of event that triggered the request - payload: - type: optional - docs: The payload of data sent from Webflow - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CollectionItemUnpublishedPayloadFieldData: - properties: - name: string - slug: string - extra-properties: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CollectionItemUnpublishedPayload: - docs: The payload of data sent from Webflow - properties: - id: - type: optional - docs: The ID of the collection item that was unpublished - siteId: - type: optional - docs: The ID of the site - workspaceId: - type: optional - docs: The ID of the workspace - collectionId: - type: optional - docs: The ID of the collection - cmsLocaleId: - type: optional - docs: Unique identifier of the CMS locale for this item - validation: - format: uuid - lastPublished: optional - lastUpdated: optional - createdOn: optional - isArchived: optional - isDraft: optional - fieldData: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CollectionItemUnpublished: - properties: - triggerType: - type: optional - docs: The type of event that triggered the request - payload: - type: optional - docs: The payload of data sent from Webflow - source: - openapi: ../../../openapi/referenced-specs/v2.yml - PageCreatedWebhookPayload: - docs: The payload of data sent from Webflow - properties: - siteId: optional - pageId: optional - pageTitle: optional - createdOn: optional - publishedPath: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - PageCreatedWebhook: - docs: The Webhook payload for when a Page is created - properties: - triggerType: - type: optional - docs: The type of event that triggered the request - payload: - type: optional - docs: The payload of data sent from Webflow - source: - openapi: ../../../openapi/referenced-specs/v2.yml - PageMetadataUpdatedWebhookPayload: - docs: The payload of data sent from Webflow - properties: - siteId: optional - pageId: optional - pageTitle: optional - lastUpdated: optional - publishedPath: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - PageMetadataUpdatedWebhook: - docs: The Webhook payload for when a Page's metadata is updated - properties: - triggerType: - type: optional - docs: The type of event that triggered the request - payload: - type: optional - docs: The payload of data sent from Webflow - source: - openapi: ../../../openapi/referenced-specs/v2.yml - PageDeletedWebhookPayload: - docs: The payload of data sent from Webflow - properties: - siteId: optional - pageId: optional - pageTitle: optional - deletedOn: optional - publishedPath: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - PageDeletedWebhook: - docs: The Webhook payload for when a Page is deleted - properties: - triggerType: - type: optional - docs: The type of event that triggered the request - payload: - type: optional - docs: The payload of data sent from Webflow - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CommentPayloadAuthor: - properties: - userId: - type: string - docs: The unique identifier of the author - email: - type: string - docs: Email of the author - name: - type: string - docs: Name of the author - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CommentPayloadMentionedUsersItem: - properties: - userId: - type: string - docs: The unique identifier of the mentioned user - email: - type: string - docs: Email of the user - name: - type: string - docs: Name of the User - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CommentPayload: - docs: > - The comment webhook payload contains data for the thread and for replies. - Check the type to determine if the payload is for a thread or a reply. - The webhook payload may be delayed by up to 5 minutes. - properties: - threadId: - type: optional - docs: Unique identifier for the comment thread - access: read-only - commentId: - type: optional - docs: Unique identifier for the comment reply - access: read-only - type: - type: optional - docs: The type of comment payload - access: read-only - siteId: - type: optional - docs: The site unique identifier - access: read-only - pageId: - type: optional - docs: The page unique identifier - access: read-only - localeId: - type: optional - docs: The locale unique identifier - access: read-only - itemId: - type: optional - docs: The item unique identifier - access: read-only - breakpoint: - type: optional - docs: The breakpoint the comment was left on - access: read-only - url: - type: optional - docs: The URL of the page the comment was left on - access: read-only - content: - type: string - docs: The content of the comment reply - isResolved: - type: boolean - docs: Boolean determining if the comment thread is resolved - default: false - author: CommentPayloadAuthor - mentionedUsers: - docs: >- - List of mentioned users. This is an empty array until email - notifications are sent, which can take up to 5 minutes after the - comment is created. - type: list - createdOn: - type: optional - docs: The date the item was created - access: read-only - lastUpdated: - type: optional - docs: The date the item was last updated - access: read-only - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Comment: - docs: The Webhook payload for when a comment thread or reply is made on a Site - properties: - triggerType: - type: optional - docs: The type of event that triggered the request - payload: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/accessGroups.yml b/.mock/definition/accessGroups.yml deleted file mode 100644 index 76895330..00000000 --- a/.mock/definition/accessGroups.yml +++ /dev/null @@ -1,81 +0,0 @@ -types: - AccessGroupsListRequestSort: - enum: - - value: CreatedOn - name: CreatedOnAscending - docs: Sorts users in ascending order based on their created date - - value: '-CreatedOn' - name: CreatedOnDescending - docs: Sorts users in descending order based on their created date - source: - openapi: ../../../openapi/referenced-specs/v2.yml -imports: - root: __package__.yml -service: - auth: false - base-path: '' - endpoints: - list: - path: /sites/{site_id}/accessgroups - method: GET - auth: true - docs: | - Get a list of access groups for a site - - Required scope | `users:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: List Access Groups - request: - name: AccessGroupsListRequest - query-parameters: - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - sort: - type: optional - docs: | - Sort string to use when ordering access groups - Can be prefixed with a `-` to reverse the sort (ex. `-CreatedOn`) - response: - docs: Request was successful - type: root.AccessGroupList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - count: 1 - limit: 10 - offset: 0 - total: 1 - accessGroups: - - id: 62be58d404be8a6cc900c081 - name: Research Team - shortId: rt - slug: hitchhikers-guide-research-team - createdOn: '2022-08-01T19:41:48Z' - - id: 65a96161991e77bbb4a6c573 - name: Admin - shortId: ad - slug: admin - createdOn: '2022-08-01T19:41:48Z' - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/api.yml b/.mock/definition/api.yml deleted file mode 100644 index b881d163..00000000 --- a/.mock/definition/api.yml +++ /dev/null @@ -1,20 +0,0 @@ -name: api -error-discrimination: - strategy: status-code -display-name: Data API -environments: - Data API: - urls: - Base: https://api.webflow.com/v2 - Data API: https://api.webflow.com/v2 - Content Delivery API: https://api-cdn.webflow.com/v2 - Production: https://api.webflow.com/v2 - CDN: https://api-cdn.webflow.com/v2 -default-environment: Data API -default-url: Base -auth-schemes: - BearerToken: - scheme: bearer - token: - name: accessToken -auth: BearerToken diff --git a/.mock/definition/assets.yml b/.mock/definition/assets.yml deleted file mode 100644 index 3d36d0b6..00000000 --- a/.mock/definition/assets.yml +++ /dev/null @@ -1,454 +0,0 @@ -imports: - root: __package__.yml -service: - auth: false - base-path: '' - endpoints: - list: - path: /sites/{site_id}/assets - method: GET - auth: true - docs: | - List of assets uploaded to a site - - Required scope | `assets:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: List Assets - response: - docs: Request was successful - type: root.Assets - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - assets: - - id: 63e5889e7fe4eafa7384cea4 - contentType: image/png - size: 2212772 - siteId: 63938b302ea6b0aa6f3d8745 - hostedUrl: >- - https://s3.amazonaws.com/webflow-prod-assets/63938b302ea6b0aa6f3d8745/63e5889e7fe4eafa7384cea4_Vectors-Wrapper.svg - originalFileName: Candy-Wrapper.svg - displayName: 63e5889e7fe4eafa7384cea4_Candy-Wrapper.png - lastUpdated: '2023-03-01T23:42:57Z' - createdOn: '2023-02-09T23:58:22Z' - variants: - - hostedUrl: >- - https://s3.amazonaws.com/webflow-prod-assets/6258612d1ee792848f805dcf/660d83ce30f3a599ddb0bdb3_Screenshot%202024-03-20%20at%209.03.24%E2%80%AFPM-p-500.png - originalFileName: >- - Screenshot%202024-03-20%20at%209.03.24%E2%80%AFPM-p-500.png - displayName: >- - 660d83ce30f3a599ddb0bdb3_Screenshot%202024-03-20%20at%209.03.24%E2%80%AFPM-p-500.png - format: png - width: 500 - height: 900 - quality: 100 - altText: A single candy wrapper - - id: 63e5889e7fe4eafa7384cea5 - contentType: image/png - size: 2212772 - siteId: 63938b302ea6b0aa6f3d8745 - hostedUrl: >- - https://s3.amazonaws.com/webflow-prod-assets/63938b302ea6b0aa6f3d8745/63e5889e7fe4eafa7384cea4_Vectors-Wrapper.svg - originalFileName: Gum-Wrapper.svg - displayName: 63e5889e7fe4eafa7384cea5_Gum-Wrapper.png - lastUpdated: '2023-03-01T23:42:57Z' - createdOn: '2023-02-09T23:58:22Z' - variants: - - hostedUrl: >- - https://s3.amazonaws.com/webflow-prod-assets/6258612d1ee792848f805dcf/660d83ce30f3a599ddb0bdb3_Screenshot%202024-03-20%20at%209.03.24%E2%80%AFPM-p-500.png - originalFileName: >- - Screenshot%202024-03-20%20at%209.03.24%E2%80%AFPM-p-500.png - displayName: >- - 660d83ce30f3a599ddb0bdb3_Screenshot%202024-03-20%20at%209.03.24%E2%80%AFPM-p-500.png - format: png - width: 500 - height: 900 - quality: 100 - altText: A single gum wrapper - pagination: - limit: 2 - offset: 0 - total: 2 - create: - path: /sites/{site_id}/assets - method: POST - auth: true - docs: > - The first step in uploading an asset to a site. - - - - This endpoint generates a response with the following information: - `uploadUrl` and `uploadDetails`. - - - - Use these properties in the header of a [POST request to Amazson - s3](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPOST.html) - to complete the upload. - - - - To learn more about how to upload assets to Webflow, see our [assets - guide](/data/docs/working-with-assets). - - Required scope | `assets:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Upload Asset - request: - name: AssetsCreateRequest - body: - properties: - fileName: - type: string - docs: >- - File name including file extension. File names must be less than - 100 characters. - fileHash: - type: string - docs: MD5 hash of the file - parentFolder: - type: optional - docs: ID of the Asset folder (optional) - content-type: application/json - response: - docs: Request was successful - type: root.AssetUpload - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: - fileName: file.png - fileHash: 3c7d87c9575702bc3b1e991f4d3c638e - response: - body: - uploadDetails: - acl: public-read - bucket: webflow-bucket-name - X-Amz-Algorithm: AWS4-HMAC-SHA256 - X-Amz-Credential: ///s3/aws4_request - X-Amz-Date: - key: /_ - Policy: - X-Amz-Signature: - success_action_status: '201' - content-type: image/png - Cache-Control: max-age=31536000, must-revalidate - contentType: image/png - id: 64358b9544249dc43d37d2b7 - parentFolder: 6436b1ce5281cace05b65aea - uploadUrl: >- - https://s3.amazonaws.com/webflow-dev-assets/643021114e290e0d3a0602b2/64358b9544249dc43d37d2b7_Screenshot%202023-04-11%20at%209.50.42%20AM.png - assetUrl: >- - https://s3.amazonaws.com/webflow-prod-assets/6258612d1ee792848f805dcf/660d907ab9e91e3e9f56385e_paranoidAndroid-2024.png - hostedUrl: >- - https://dev-assets.website-files.com/643021114e290e0d3a0602b2/64358b9544249dc43d37d2b7_Screenshot%202023-04-11%20at%209.50.42%20AM.png - originalFileName: file.png - createdOn: '2023-04-11T16:32:21Z' - lastUpdated: '2023-04-12T20:31:03Z' - get: - path: /assets/{asset_id} - method: GET - auth: true - docs: | - Get details about an asset - - Required scope | `assets:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - asset_id: - type: string - docs: Unique identifier for an Asset on a site - display-name: Get Asset - response: - docs: Request was successful - type: root.Asset - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - asset_id: 580e63fc8c9a982ac9b8b745 - response: - body: - id: 63e5889e7fe4eafa7384cea4 - contentType: image/png - size: 2212772 - siteId: 63938b302ea6b0aa6f3d8745 - hostedUrl: >- - https://s3.amazonaws.com/webflow-prod-assets/63938b302ea6b0aa6f3d8745/63e5889e7fe4eafa7384cea4_Vectors-Wrapper.svg - originalFileName: Candy-Wrapper.svg - displayName: 63e5889e7fe4eafa7384cea4_Candy-Wrapper.png - lastUpdated: '2023-03-01T23:42:57Z' - createdOn: '2023-02-09T23:58:22Z' - variants: - - hostedUrl: >- - https://s3.amazonaws.com/webflow-prod-assets/6258612d1ee792848f805dcf/660d83ce30f3a599ddb0bdb3_Screenshot%202024-03-20%20at%209.03.24%E2%80%AFPM-p-500.png - originalFileName: Screenshot%202024-03-20%20at%209.03.24%E2%80%AFPM-p-500.png - displayName: >- - 660d83ce30f3a599ddb0bdb3_Screenshot%202024-03-20%20at%209.03.24%E2%80%AFPM-p-500.png - format: png - width: 500 - height: 900 - quality: 100 - altText: A single candy wrapper - delete: - path: /assets/{asset_id} - method: DELETE - auth: true - docs: | - Delete an Asset - - Required Scope: `assets: write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - asset_id: - type: string - docs: Unique identifier for an Asset on a site - display-name: Delete Asset - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - asset_id: 580e63fc8c9a982ac9b8b745 - update: - path: /assets/{asset_id} - method: PATCH - auth: true - docs: | - Update details of an Asset. - - Required scope | `assets:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - asset_id: - type: string - docs: Unique identifier for an Asset on a site - display-name: Update Asset - request: - name: AssetsUpdateRequest - body: - properties: - localeId: - type: optional - docs: >- - Unique identifier for a specific locale. Applicable, when using - localization. - displayName: - type: optional - docs: A human readable name for the asset - content-type: application/json - response: - docs: Request was successful - type: root.Asset - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - asset_id: 580e63fc8c9a982ac9b8b745 - request: {} - response: - body: - id: 63e5889e7fe4eafa7384cea4 - contentType: image/png - size: 2212772 - siteId: 63938b302ea6b0aa6f3d8745 - hostedUrl: >- - https://s3.amazonaws.com/webflow-prod-assets/63938b302ea6b0aa6f3d8745/63e5889e7fe4eafa7384cea4_Vectors-Wrapper.svg - originalFileName: Candy-Wrapper.svg - displayName: 63e5889e7fe4eafa7384cea4_Candy-Wrapper.png - lastUpdated: '2023-03-01T23:42:57Z' - createdOn: '2023-02-09T23:58:22Z' - variants: - - hostedUrl: >- - https://s3.amazonaws.com/webflow-prod-assets/6258612d1ee792848f805dcf/660d83ce30f3a599ddb0bdb3_Screenshot%202024-03-20%20at%209.03.24%E2%80%AFPM-p-500.png - originalFileName: Screenshot%202024-03-20%20at%209.03.24%E2%80%AFPM-p-500.png - displayName: >- - 660d83ce30f3a599ddb0bdb3_Screenshot%202024-03-20%20at%209.03.24%E2%80%AFPM-p-500.png - format: png - width: 500 - height: 900 - quality: 100 - altText: A single candy wrapper - list-folders: - path: /sites/{site_id}/asset_folders - method: GET - auth: true - docs: | - List Asset Folders within a given site - - Required scope | `assets:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: List Asset Folders - response: - docs: Request was successful - type: root.AssetFolderList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - assetFolders: - - id: 6390c49774a71f0e3c1a08ee - displayName: emoji icons - assets: - - 63e5889e7fe4eafa7384cea4 - - 659595234426a9fcbad57043 - siteId: 6390c49674a71f84b51a08d8 - createdOn: '2018-10-14T21:55:49Z' - lastUpdated: '2022-12-07T16:51:37Z' - pagination: - limit: 1 - offset: 0 - total: 1 - create-folder: - path: /sites/{site_id}/asset_folders - method: POST - auth: true - docs: | - Create an Asset Folder within a given site - - Required scope | `assets:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Create Asset Folder - request: - name: AssetsCreateFolderRequest - body: - properties: - displayName: - type: string - docs: A human readable name for the Asset Folder - parentFolder: - type: optional - docs: >- - An (optional) pointer to a parent Asset Folder (or null for - root) - content-type: application/json - response: - docs: Request was successful - type: root.AssetFolder - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: - displayName: my asset folder - response: - body: - id: 6390c49774a71f0e3c1a08ee - displayName: emoji icons - parentFolder: 6390c49774a71f99f21a08eb - assets: - - 63e5889e7fe4eafa7384cea4 - - 659595234426a9fcbad57043 - siteId: 6390c49674a71f84b51a08d8 - createdOn: '2018-10-14T21:55:49Z' - lastUpdated: '2022-12-07T16:51:37Z' - get-folder: - path: /asset_folders/{asset_folder_id} - method: GET - auth: true - docs: | - Get details about a specific Asset Folder - - Required scope | `assets:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - asset_folder_id: - type: string - docs: Unique identifier for an Asset Folder - display-name: Get Asset Folder - response: - docs: Request was successful - type: root.AssetFolder - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - asset_folder_id: 6390c49774a71f0e3c1a08ee - response: - body: - id: 6390c49774a71f0e3c1a08ee - displayName: emoji icons - parentFolder: 6390c49774a71f99f21a08eb - assets: - - 63e5889e7fe4eafa7384cea4 - - 659595234426a9fcbad57043 - siteId: 6390c49674a71f84b51a08d8 - createdOn: '2018-10-14T21:55:49Z' - lastUpdated: '2022-12-07T16:51:37Z' - source: - openapi: ../../../openapi/referenced-specs/v2.yml - display-name: Assets -docs: Assets are files that are uploaded to your Webflow account. diff --git a/.mock/definition/collections.yml b/.mock/definition/collections.yml deleted file mode 100644 index effcb1dd..00000000 --- a/.mock/definition/collections.yml +++ /dev/null @@ -1,339 +0,0 @@ -imports: - root: __package__.yml -service: - auth: false - base-path: '' - endpoints: - list: - path: /sites/{site_id}/collections - method: GET - auth: true - docs: | - List of all Collections within a Site. - - Required scope | `cms:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: List Collections - response: - docs: Request was successful - type: root.CollectionList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - collections: - - id: 63692ab61fb2852f582ba8f5 - displayName: Products - singularName: Product - slug: product - createdOn: '2019-06-12T13:35:14Z' - lastUpdated: '2022-11-17T15:08:50Z' - - id: 63692ab61fb2856e6a2ba8f6 - displayName: Categories - singularName: Category - slug: category - createdOn: '2019-06-12T13:35:14Z' - lastUpdated: '2022-11-17T15:08:50Z' - - id: 63692ab61fb285a8562ba8f4 - displayName: SKUs - singularName: SKU - slug: sku - createdOn: '2019-06-12T13:35:14Z' - lastUpdated: '2022-11-17T15:08:50Z' - create: - path: /sites/{site_id}/collections - method: POST - auth: true - docs: > - Create a Collection for a site with collection fields. - - - Each collection includes the required _name_ and _slug_ fields, which - are generated automatically. You can update the `displayName` of these - fields, but the slug for them cannot be changed. Fields slugs are - automatically converted to lowercase. Spaces in slugs are replaced with - hyphens. - - - Required scope | `cms:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Create Collection - request: - name: CollectionsCreateRequest - body: - properties: - displayName: - type: string - docs: Name of the collection. Each collection name must be distinct. - singularName: - type: string - docs: Singular name of each item. - slug: - type: optional - docs: Part of a URL that identifier - fields: - type: optional> - docs: An array of custom fields to add to the collection - content-type: application/json - response: - docs: Request was successful - type: root.Collection - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: - displayName: Blog Posts - singularName: Blog Post - slug: posts - fields: - - isRequired: true - type: PlainText - displayName: Title - helpText: The title of the blog post - - isRequired: true - type: RichText - displayName: Content - helpText: The content of the blog post - - isRequired: true - type: Reference - displayName: Author - helpText: The author of the blog post - metadata: - collectionId: 23cc2d952d4e4631ffd4345d2743db4e - response: - body: - id: 562ac0395358780a1f5e6fbd - displayName: Blog Posts - singularName: Blog Post - slug: posts - createdOn: '2016-10-24T19:41:48Z' - lastUpdated: '2016-10-24T19:42:38Z' - fields: - - id: id - isRequired: true - isEditable: true - type: PlainText - slug: title - displayName: Title - helpText: The title of the blog post - - id: id - isRequired: true - isEditable: true - type: RichText - slug: content - displayName: Content - helpText: The content of the blog post - - id: id - isRequired: true - isEditable: true - type: Reference - slug: author - displayName: Author - helpText: The author of the blog post - get: - path: /collections/{collection_id} - method: GET - auth: true - docs: | - Get the full details of a collection from its ID. - - Required scope | `cms:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - display-name: Get Collection Details - response: - docs: Request was successful - type: root.Collection - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - response: - body: - id: 7f15043107e2fc95644e93807ee25dd6 - displayName: Guide Entries - singularName: Guide Entry - slug: guide-entry - createdOn: '2024-04-12T12:42:00Z' - lastUpdated: '2024-04-12T12:42:00Z' - fields: - - id: 5e2a1b3c4d5e6f7890a1b2c3 - isRequired: true - isEditable: true - type: PlainText - slug: name - displayName: Entry Title - helpText: Name of the entry. - - id: 5e2a1b3c4d5e6f7890a1b2c4 - isRequired: true - isEditable: true - type: PlainText - slug: slug - displayName: Slug - helpText: Slug of the entry. - - id: 6f7e8d9c0b1a2e3d4c5b6a7f - isRequired: false - isEditable: true - type: PlainText - slug: summary - displayName: Summary - helpText: A short summary of the entry. - - id: 1a2b3c4d5e6f7a8b9c0d1e2f - isRequired: false - isEditable: true - type: RichText - slug: entry-html - displayName: Entry HTML - helpText: The HTML content of the entry. - - id: 7e8d9c0b1a2e3d4c5b6a7f8e - isRequired: false - isEditable: true - type: Image - slug: illustration-image - displayName: Illustration Image - helpText: An image of the entry. - - id: 2f3e4d5c6b7a8e9d0c1b2a3f - isRequired: false - isEditable: true - type: VideoLink - slug: demonstration-video - displayName: Demonstration Video - helpText: A video of the entry. - - id: 8e9d0c1b2a3f4e5d6c7b8a9e - isRequired: false - isEditable: true - type: Link - slug: more-info-link - displayName: More Info Link - helpText: A link to more information about the entry. - - id: 3f4e5d6c7b8a9e0d1c2b3a4f - isRequired: false - isEditable: true - type: Number - slug: importance-level - displayName: Importance Level - helpText: The importance level of the entry. - - id: 9e0d1c2b3a4f5e6d7c8b9a0e - isRequired: false - isEditable: true - type: Switch - slug: is-essential - displayName: Is Essential - helpText: Is this entry essential? - - id: 4f5e6d7c8b9a0e1d2c3b4a5f - isRequired: false - isEditable: true - type: Color - slug: first-mentioned - displayName: First Mentioned - helpText: Date of the first mention of the subject. - - id: 0e1d2c3b4a5f6e7d8c9b0a1e - isRequired: false - isEditable: true - type: Color - slug: towel-color - displayName: Towel Color - helpText: The color of the towel. - - id: 5f6e7d8c9b0a1e2d3c4b5a6f - isRequired: false - isEditable: true - type: Reference - slug: related-entry - displayName: Related Entry - helpText: A related entry. - - id: 1e2d3c4b5a6f7e8d9c0b1a2f - isRequired: false - isEditable: true - type: MultiReference - slug: mentioned-in-entries - displayName: Mentioned In Entries - helpText: Entries that mention this subject. - - id: 6f7e8d9c0b1a2e3d4c5b6a8f - isRequired: false - isEditable: true - type: Option - slug: item-type - displayName: Item Type - helpText: The type of item. - - id: 2e3d4c5b6a7f8e9d0c1b2a4f - isRequired: false - isEditable: true - type: File - slug: guide-file - displayName: Guide File - - id: 7f8e9d0c1b2a3f4e5d6c8b9e - isRequired: false - isEditable: true - type: Email - slug: contributor-email - displayName: Contributor Email - - id: 3a4f5e6d7c8b9a0e1d2c4b5f - isRequired: false - isEditable: true - type: Phone - slug: emergency-contact - displayName: Emergency Contact - delete: - path: /collections/{collection_id} - method: DELETE - auth: true - docs: | - Delete a collection using its ID. - - Required scope | `cms:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - display-name: Delete Collection - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - source: - openapi: ../../../openapi/referenced-specs/v2.yml - display-name: Collections -docs: Collections are CMS collections of items. diff --git a/.mock/definition/collections/fields.yml b/.mock/definition/collections/fields.yml deleted file mode 100644 index a7af253c..00000000 --- a/.mock/definition/collections/fields.yml +++ /dev/null @@ -1,206 +0,0 @@ -imports: - root: ../__package__.yml -service: - auth: false - base-path: '' - endpoints: - create: - path: /collections/{collection_id}/fields - method: POST - auth: true - docs: > - Create a custom field in a collection. - - - Field validation is currently not available through the API. - - - Bulk creation of fields is not supported with this endpoint. To add - multiple fields at once, include them when you [create the - collection.](/data/v2.0.0/reference/cms/collections/create) - - - Required scope | `cms:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - display-name: Create Collection Field - request: - body: root.FieldCreate - content-type: application/json - response: - docs: Request was successful - type: root.FieldCreate - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - name: StaticField - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - id: 562ac0395358780a1f5e6fbc - isEditable: true - isRequired: false - type: RichText - displayName: Post Body - helpText: Add the body of your post here - response: - body: - id: 562ac0395358780a1f5e6fbc - isEditable: true - isRequired: false - type: RichText - displayName: Post Body - helpText: Add the body of your post here - - name: OptionField - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - id: 562ac0395358780a1f5e6fbc - isEditable: true - isRequired: false - type: Option - displayName: Post Type - helpText: Add the body of your post here - metadata: - options: - - name: Feature - - name: News - - name: Product Highlight - response: - body: - id: 562ac0395358780a1f5e6fbc - isEditable: true - isRequired: false - type: Option - displayName: Post Type - helpText: Add the body of your post here - metadata: - options: - - name: Feature - - name: News - - name: Product Highlight - - name: ReferenceField - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - id: 562ac0395358780a1f5e6fbd - isEditable: true - isRequired: false - type: Reference - displayName: Author - helpText: Add the post author here - metadata: - collectionId: 63692ab61fb2852f582ba8f5 - response: - body: - id: 562ac0395358780a1f5e6fbd - isEditable: true - isRequired: false - type: Reference - displayName: Author - helpText: Add the post author here - metadata: - collectionId: 63692ab61fb2852f582ba8f5 - delete: - path: /collections/{collection_id}/fields/{field_id} - method: DELETE - auth: true - docs: > - Delete a custom field in a collection. This endpoint does not currently - support bulk deletion. - - - Required scope | `cms:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - field_id: - type: string - docs: Unique identifier for a Field in a collection - display-name: Delete Collection Field - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - field_id: 580e63fc8c9a982ac9b8b745 - update: - path: /collections/{collection_id}/fields/{field_id} - method: PATCH - auth: true - docs: | - Update a custom field in a collection. - - Required scope | `cms:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - field_id: - type: string - docs: Unique identifier for a Field in a collection - display-name: Update Collection Field - request: - name: FieldUpdate - body: - properties: - isRequired: - type: optional - docs: Define whether a field is required in a collection - displayName: - type: optional - docs: The name of a field - helpText: - type: optional - docs: Additional text to help anyone filling out this field - content-type: application/json - response: - docs: Request was successful - type: root.Field - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - field_id: 580e63fc8c9a982ac9b8b745 - request: - isRequired: false - displayName: Post Body - helpText: Add the body of your post here - response: - body: - id: 75821f618da60c18383330bcc0ca488b - isRequired: false - isEditable: true - type: RichText - slug: post-body - displayName: Post Body - helpText: Add the body of your post here - validations: - additionalProperties: additionalProperties - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/collections/items.yml b/.mock/definition/collections/items.yml deleted file mode 100644 index 22270578..00000000 --- a/.mock/definition/collections/items.yml +++ /dev/null @@ -1,1765 +0,0 @@ -imports: - root: ../__package__.yml -types: - ItemsListItemsRequestSortBy: - enum: - - lastPublished - - name - - slug - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ItemsListItemsRequestSortOrder: - enum: - - asc - - desc - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Multiple Items: - properties: - items: - type: optional> - docs: An array of items to create - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - ItemsCreateItemRequestBody: - discriminated: false - union: - - root.CollectionItemPostSingle - - type: Multiple Items - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ItemsDeleteItemsRequestItemsItem: - properties: - id: - type: string - docs: Unique identifier for the Item - cmsLocaleIds: - type: optional> - docs: Array of identifiers for the locales where the item will be created - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - ItemsUpdateItemsResponse: - discriminated: false - union: - - type: root.CollectionItem - - type: root.CollectionItemList - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ItemsListItemsLiveRequestSortBy: - enum: - - lastPublished - - name - - slug - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ItemsListItemsLiveRequestSortOrder: - enum: - - asc - - desc - source: - openapi: ../../../openapi/referenced-specs/v2.yml - Multiple Live Items: - properties: - items: - type: optional> - docs: List of collection items to create - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - ItemsCreateItemLiveRequestBody: - discriminated: false - union: - - type: root.CollectionItem - - type: Multiple Live Items - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ItemsDeleteItemsLiveRequestItemsItem: - properties: - id: - type: string - docs: Unique identifier for the Item - cmsLocaleIds: - type: optional> - docs: Array of identifiers for the locales where the item will be created - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Single CMS Item: - properties: - name: - type: string - docs: The name of the item. - slug: - type: string - docs: >- - URL slug for the item in your site. - - Note: Updating the item slug will break all links referencing the old - slug. - extra-properties: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CreateBulkCollectionItemRequestBodyFieldDataItem: - docs: A single CMS item to create - properties: - name: - type: string - docs: The name of the item. - slug: - type: string - docs: >- - URL slug for the item in your site. - - Note: Updating the item slug will break all links referencing the old - slug. - extra-properties: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - CreateBulkCollectionItemRequestBodyFieldData: - discriminated: false - union: - - type: Single CMS Item - - docs: A list of CMS items to create - type: list - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Item IDs: - docs: An array of Item IDs in a single locale - properties: - itemIds: - type: optional> - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - ItemsPublishItemRequestItemsItemsItem: - properties: - id: - type: string - docs: The ID of the CMS item - cmsLocaleIds: - type: optional> - docs: Array of identifiers for the locales where the item will be published - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - Item IDs with Locales: - docs: An array of Item IDs with included `cmsLocaleIds` - properties: - items: - type: optional> - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - ItemsPublishItemRequest: - discriminated: false - union: - - type: Item IDs - docs: An array of Item IDs in a single locale - - type: Item IDs with Locales - docs: An array of Item IDs with included `cmsLocaleIds` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ItemsPublishItemResponse: - properties: - publishedItemIds: optional> - errors: optional> - source: - openapi: ../../../openapi/referenced-specs/v2.yml -service: - auth: false - base-path: '' - endpoints: - list-items: - path: /collections/{collection_id}/items - method: GET - auth: true - docs: | - List of all Items within a Collection. - - Required scope | `CMS:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - display-name: List Collection Items - request: - name: ItemsListItemsRequest - query-parameters: - cmsLocaleId: - type: optional - docs: >- - Unique identifier for a CMS Locale. This UID is different from the - Site locale identifier and is listed as `cmsLocaleId` in the Sites - response. To query multiple locales, input a comma separated - string. - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - name: - type: optional - docs: Filter by the exact name of the item(s) - slug: - type: optional - docs: Filter by the exact slug of the item - lastPublished: - type: optional - docs: Filter by the last published date of the item(s) - sortBy: - type: optional - docs: Sort results by the provided value - sortOrder: - type: optional - docs: Sorts the results by asc or desc - response: - docs: Request was successful - type: root.CollectionItemList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - response: - body: - items: - - id: 62b720ef280c7a7a3be8cabe - cmsLocaleId: 66f6e966c9e1dc700a857ca3 - lastPublished: '2022-06-30T13:35:20.878Z' - lastUpdated: '2022-06-25T14:51:27.809Z' - createdOn: '2022-06-25T14:51:27.809Z' - isArchived: false - isDraft: false - fieldData: - name: Senior Data Analyst - slug: senior-data-analyst - url: https://boards.greenhouse.io/webflow/jobs/26567701 - department: Data - - id: 62c880ef281c7b7b4cf9dabc - cmsLocaleId: 66f6e966c9e1dc700a857ca3 - lastPublished: '2023-04-15T10:25:18.123Z' - lastUpdated: '2023-04-10T11:45:30.567Z' - createdOn: '2023-04-10T11:45:30.567Z' - isArchived: false - isDraft: false - fieldData: - name: Product Manager - slug: product-manager - url: https://boards.greenhouse.io/webflow/jobs/31234567 - department: Product - pagination: - limit: 25 - offset: 0 - total: 2 - create-item: - path: /collections/{collection_id}/items - method: POST - auth: true - docs: > - Create Item(s) in a Collection. - - - - To create items across multiple locales, please use [this - endpoint.](/data/reference/cms/collection-items/staged-items/create-items) - - - Required scope | `CMS:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - display-name: Create Collection Item(s) - request: - body: ItemsCreateItemRequestBody - query-parameters: - skipInvalidFiles: - type: optional - default: true - docs: >- - When true, invalid files are skipped and processing continues. - When false, the entire request fails if any file is invalid. - name: ItemsCreateItemRequest - content-type: application/json - response: - docs: Request was successful - type: root.CollectionItem - status-code: 202 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - name: SingleItem - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - isArchived: false - isDraft: false - fieldData: - name: Pan Galactic Gargle Blaster Recipe - slug: pan-galactic-gargle-blaster - date: '2022-11-18T00:00:00.000Z' - featured: true - color: '#db4b68' - response: - body: - id: 42b720ef280c7a7a3be8cabe - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2022-11-29T16:22:43.159Z' - lastUpdated: '2022-11-17T17:19:43.282Z' - createdOn: '2022-11-17T17:11:57.148Z' - isArchived: false - isDraft: false - fieldData: - name: Pan Galactic Gargle Blaster Recipe - slug: pan-galactic-gargle-blaster - color: '#db4b68' - date: '2022-11-18T00:00:00.000Z' - featured: true - - name: MultipleItems - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - items: - - isArchived: false - isDraft: false - fieldData: - name: Senior Data Analyst - slug: senior-data-analyst - url: https://boards.greenhouse.io/webflow/jobs/26567701 - department: Data - - isArchived: false - isDraft: false - fieldData: - name: Product Manager - slug: product-manager - url: https://boards.greenhouse.io/webflow/jobs/31234567 - department: Product - response: - body: - id: id - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2023-03-17T18:47:35.560Z' - lastUpdated: '2023-03-17T18:47:35.560Z' - createdOn: '2023-03-17T18:47:35.560Z' - isArchived: true - isDraft: true - fieldData: - name: My new item - slug: my-new-item - date: '2022-11-18T00:00:00.000Z' - featured: false - color: '#db4b68' - delete-items: - path: /collections/{collection_id}/items - method: DELETE - auth: true - docs: > - Delete Items from a Collection. - - - Items will only be deleted in the primary - locale unless a `cmsLocaleId` is included in the request. - - - Required scope | `CMS:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - display-name: Delete Collection Items - request: - name: ItemsDeleteItemsRequest - body: - properties: - items: list - content-type: application/json - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - items: - - id: 580e64008c9a982ac9b8b754 - update-items: - path: /collections/{collection_id}/items - method: PATCH - auth: true - docs: > - Update a single item or multiple items in a Collection. - - - The limit for this endpoint is 100 items. - - - Items will only be updated in the primary - locale, unless a `cmsLocaleId` is included in the request. - - - Required scope | `CMS:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - display-name: Update Collection Items - request: - name: ItemsUpdateItemsRequest - query-parameters: - skipInvalidFiles: - type: optional - default: true - docs: >- - When true, invalid files are skipped and processing continues. - When false, the entire request fails if any file is invalid. - body: - properties: - items: optional> - content-type: application/json - response: - docs: Request was successful - type: ItemsUpdateItemsResponse - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - name: LocalizedItems - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - items: - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - fieldData: - name: Ne Paniquez Pas - slug: ne-paniquez-pas - featured: false - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - fieldData: - name: No Entrar en Pánico - slug: no-entrar-en-panico - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - fieldData: - name: Au Revoir et Merci pour Tous les Poissons - slug: au-revoir-et-merci - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - fieldData: - name: Hasta Luego y Gracias por Todo el Pescado - slug: hasta-luego-y-gracias - featured: false - response: - body: - items: - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: Ne Paniquez Pas - slug: ne-paniquez-pas - featured: false - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: No Entrar en Pánico - slug: no-entrar-en-panico - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: Au Revoir et Merci pour Tous les Poissons - slug: au-revoir-et-merci - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: Hasta Luego y Gracias por Todo el Pescado - slug: hasta-luego-y-gracias - featured: false - pagination: - limit: 25 - offset: 0 - total: 4 - - name: MultipleItems - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - items: - - id: 580e64008c9a982ac9b8b754 - isArchived: false - isDraft: false - fieldData: - name: Senior Data Analyst - slug: senior-data-analyst - url: https://boards.greenhouse.io/webflow/jobs/26567701 - department: Data - - id: 580e64008c9a982ac9b8b754 - isArchived: false - isDraft: false - fieldData: - name: Product Manager - slug: product-manager - url: https://boards.greenhouse.io/webflow/jobs/31234567 - department: Product - response: - body: - items: - - id: 62b720ef280c7a7a3be8cabe - cmsLocaleId: 66f6e966c9e1dc700a857ca3 - lastPublished: '2022-06-30T13:35:20.878Z' - lastUpdated: '2022-06-25T14:51:27.809Z' - createdOn: '2022-06-25T14:51:27.809Z' - isArchived: false - isDraft: false - fieldData: - name: Senior Data Analyst - slug: senior-data-analyst - url: https://boards.greenhouse.io/webflow/jobs/26567701 - department: Data - - id: 62c880ef281c7b7b4cf9dabc - cmsLocaleId: 66f6e966c9e1dc700a857ca3 - lastPublished: '2023-04-15T10:25:18.123Z' - lastUpdated: '2023-04-10T11:45:30.567Z' - createdOn: '2023-04-10T11:45:30.567Z' - isArchived: false - isDraft: false - fieldData: - name: Product Manager - slug: product-manager - url: https://boards.greenhouse.io/webflow/jobs/31234567 - department: Product - pagination: - limit: 25 - offset: 0 - total: 2 - list-items-live: - path: /collections/{collection_id}/items/live - method: GET - auth: true - docs: | - List all published items in a collection. - - - To serve content to your other frontends applications, enterprise sites have access to a dedicated [content delivery API](/data/docs/cms-content-delivery), available at api-cdn.webflow.com. - - - - Required scope | `CMS:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - display-name: List Live Collection Items - request: - name: ItemsListItemsLiveRequest - query-parameters: - cmsLocaleId: - type: optional - docs: >- - Unique identifier for a CMS Locale. This UID is different from the - Site locale identifier and is listed as `cmsLocaleId` in the Sites - response. To query multiple locales, input a comma separated - string. - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - name: - type: optional - docs: Filter by the exact name of the item(s) - slug: - type: optional - docs: Filter by the exact slug of the item - lastPublished: - type: optional - docs: Filter by the last published date of the item(s) - sortBy: - type: optional - docs: Sort results by the provided value - sortOrder: - type: optional - docs: Sorts the results by asc or desc - response: - docs: Request was successful - type: root.CollectionItemList - status-code: 200 - url: Data API - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - response: - body: - items: - - id: 62b720ef280c7a7a3be8cabe - cmsLocaleId: 66f6e966c9e1dc700a857ca3 - lastPublished: '2022-06-30T13:35:20.878Z' - lastUpdated: '2022-06-25T14:51:27.809Z' - createdOn: '2022-06-25T14:51:27.809Z' - isArchived: false - isDraft: false - fieldData: - name: Senior Data Analyst - slug: senior-data-analyst - url: https://boards.greenhouse.io/webflow/jobs/26567701 - department: Data - - id: 62c880ef281c7b7b4cf9dabc - cmsLocaleId: 66f6e966c9e1dc700a857ca3 - lastPublished: '2023-04-15T10:25:18.123Z' - lastUpdated: '2023-04-10T11:45:30.567Z' - createdOn: '2023-04-10T11:45:30.567Z' - isArchived: false - isDraft: false - fieldData: - name: Product Manager - slug: product-manager - url: https://boards.greenhouse.io/webflow/jobs/31234567 - department: Product - pagination: - limit: 25 - offset: 0 - total: 2 - create-item-live: - path: /collections/{collection_id}/items/live - method: POST - auth: true - docs: > - Create item(s) in a collection that will be immediately published to the - live site. - - - - To create items across multiple locales, [please use this - endpoint.](/data/reference/cms/collection-items/staged-items/create-items) - - - - Required scope | `CMS:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - display-name: Create Live Collection Item(s) - request: - body: ItemsCreateItemLiveRequestBody - query-parameters: - skipInvalidFiles: - type: optional - default: true - docs: >- - When true, invalid files are skipped and processing continues. - When false, the entire request fails if any file is invalid. - name: ItemsCreateItemLiveRequest - content-type: application/json - response: - docs: Request was successful - type: root.CollectionItem - status-code: 202 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - name: SingleItem - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - isArchived: false - isDraft: false - fieldData: - name: Pan Galactic Gargle Blaster Recipe - slug: pan-galactic-gargle-blaster - date: '2022-11-18T00:00:00.000Z' - featured: true - color: '#db4b68' - response: - body: - id: 42b720ef280c7a7a3be8cabe - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2022-11-29T16:22:43.159Z' - lastUpdated: '2022-11-17T17:19:43.282Z' - createdOn: '2022-11-17T17:11:57.148Z' - isArchived: false - isDraft: false - fieldData: - name: Pan Galactic Gargle Blaster Recipe - slug: pan-galactic-gargle-blaster - color: '#db4b68' - date: '2022-11-18T00:00:00.000Z' - featured: true - - name: MultipleItems - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - items: - - isArchived: false - isDraft: false - fieldData: - name: Senior Data Analyst - slug: senior-data-analyst - url: https://boards.greenhouse.io/webflow/jobs/26567701 - department: Data - - isArchived: false - isDraft: false - fieldData: - name: Product Manager - slug: product-manager - url: https://boards.greenhouse.io/webflow/jobs/31234567 - department: Product - response: - body: - id: 42b720ef280c7a7a3be8cabe - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2022-11-29T16:22:43.159Z' - lastUpdated: '2022-11-17T17:19:43.282Z' - createdOn: '2022-11-17T17:11:57.148Z' - isArchived: false - isDraft: false - fieldData: - name: Pan Galactic Gargle Blaster Recipe - slug: pan-galactic-gargle-blaster - color: '#db4b68' - date: '2022-11-18T00:00:00.000Z' - featured: true - delete-items-live: - path: /collections/{collection_id}/items/live - method: DELETE - auth: true - docs: > - Unpublish up to 100 items from the live site and set the `isDraft` - property to `true`. - - - Items will only be unpublished in the - primary locale unless a `cmsLocaleId` is included in the request. - - - Required scope | `CMS:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - display-name: Unpublish Live Collection Items - request: - name: ItemsDeleteItemsLiveRequest - body: - properties: - items: list - content-type: application/json - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - items: - - id: 580e64008c9a982ac9b8b754 - update-items-live: - path: /collections/{collection_id}/items/live - method: PATCH - auth: true - docs: > - Update a single published item or multiple published items (up to 100) - in a Collection - - - Items will only be updated in the primary - locale, unless a `cmsLocaleId` is included in the request. - - - Required scope | `CMS:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - display-name: Update Live Collection Items - request: - name: ItemsUpdateItemsLiveRequest - query-parameters: - skipInvalidFiles: - type: optional - default: true - docs: >- - When true, invalid files are skipped and processing continues. - When false, the entire request fails if any file is invalid. - body: - properties: - items: optional> - content-type: application/json - response: - docs: Request was successful - type: root.CollectionItemListNoPagination - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - name: LocalizedItems - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - items: - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - fieldData: - name: Ne Paniquez Pas - slug: ne-paniquez-pas - featured: false - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - fieldData: - name: No Entrar en Pánico - slug: no-entrar-en-panico - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - fieldData: - name: Au Revoir et Merci pour Tous les Poissons - slug: au-revoir-et-merci - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - fieldData: - name: Hasta Luego y Gracias por Todo el Pescado - slug: hasta-luego-y-gracias - featured: false - response: - body: - items: - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: Ne Paniquez Pas - slug: ne-paniquez-pas - featured: false - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: No Entrar en Pánico - slug: no-entrar-en-panico - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: Au Revoir et Merci pour Tous les Poissons - slug: au-revoir-et-merci - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: Hasta Luego y Gracias por Todo el Pescado - slug: hasta-luego-y-gracias - featured: false - - name: MultipleItems - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - items: - - id: 580e64008c9a982ac9b8b754 - isArchived: false - isDraft: false - fieldData: - name: Senior Data Analyst - slug: senior-data-analyst - url: https://boards.greenhouse.io/webflow/jobs/26567701 - department: Data - - id: 580e64008c9a982ac9b8b754 - isArchived: false - isDraft: false - fieldData: - name: Product Manager - slug: product-manager - url: https://boards.greenhouse.io/webflow/jobs/31234567 - department: Product - response: - body: - items: - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: Ne Paniquez Pas - slug: ne-paniquez-pas - featured: false - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: No Entrar en Pánico - slug: no-entrar-en-panico - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: Au Revoir et Merci pour Tous les Poissons - slug: au-revoir-et-merci - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: Hasta Luego y Gracias por Todo el Pescado - slug: hasta-luego-y-gracias - featured: false - - name: Multiple items updated across multiple locales - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - items: - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - fieldData: - name: Ne Paniquez Pas - slug: ne-paniquez-pas - featured: false - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - fieldData: - name: No Entrar en Pánico - slug: no-entrar-en-panico - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - fieldData: - name: Au Revoir et Merci pour Tous les Poissons - slug: au-revoir-et-merci - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - fieldData: - name: Hasta Luego y Gracias por Todo el Pescado - slug: hasta-luego-y-gracias - featured: false - response: - body: - items: - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: Ne Paniquez Pas - slug: ne-paniquez-pas - featured: false - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: No Entrar en Pánico - slug: no-entrar-en-panico - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: Au Revoir et Merci pour Tous les Poissons - slug: au-revoir-et-merci - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - lastPublished: '2024-09-27T17:38:29.066Z' - lastUpdated: '2024-09-27T17:38:29.066Z' - createdOn: '2024-09-27T17:38:29.066Z' - isArchived: false - isDraft: false - fieldData: - name: Hasta Luego y Gracias por Todo el Pescado - slug: hasta-luego-y-gracias - featured: false - - name: Multiple items updated in a single locale - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - items: - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - fieldData: - name: Ne Paniquez Pas - slug: ne-paniquez-pas - featured: false - - id: 66f6ed9576ddacf3149d5ea6 - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - fieldData: - name: No Entrar en Pánico - slug: no-entrar-en-panico - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca5 - fieldData: - name: Au Revoir et Merci pour Tous les Poissons - slug: au-revoir-et-merci - featured: false - - id: 66f6ed9576ddacf3149d5eaa - cmsLocaleId: 66f6e966c9e1dc700a857ca4 - fieldData: - name: Hasta Luego y Gracias por Todo el Pescado - slug: hasta-luego-y-gracias - featured: false - response: - body: - items: - - id: 62b720ef280c7a7a3be8cabe - cmsLocaleId: 66f6e966c9e1dc700a857ca3 - lastPublished: '2022-06-30T13:35:20.878Z' - lastUpdated: '2022-06-25T14:51:27.809Z' - createdOn: '2022-06-25T14:51:27.809Z' - isArchived: false - isDraft: false - fieldData: - name: Senior Data Analyst - slug: senior-data-analyst - url: https://boards.greenhouse.io/webflow/jobs/26567701 - department: Data - - id: 62c880ef281c7b7b4cf9dabc - cmsLocaleId: 66f6e966c9e1dc700a857ca3 - lastPublished: '2023-04-15T10:25:18.123Z' - lastUpdated: '2023-04-10T11:45:30.567Z' - createdOn: '2023-04-10T11:45:30.567Z' - isArchived: false - isDraft: false - fieldData: - name: Product Manager - slug: product-manager - url: https://boards.greenhouse.io/webflow/jobs/31234567 - department: Product - create-items: - path: /collections/{collection_id}/items/bulk - method: POST - auth: true - docs: > - Create an item or multiple items in a CMS Collection across multiple - corresponding locales. - - - - - This endpoint can create up to 100 items in a request. - - If the `cmsLocaleIds` parameter is not included in the request, an item will only be created in the primary locale. - - - - Required scope | `CMS:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - display-name: Create Collection Items - request: - name: CreateBulkCollectionItemRequestBody - query-parameters: - skipInvalidFiles: - type: optional - default: true - docs: >- - When true, invalid files are skipped and processing continues. - When false, the entire request fails if any file is invalid. - body: - properties: - cmsLocaleIds: - type: optional> - docs: >- - Array of identifiers for the locales where the item will be - created - isArchived: - type: optional - docs: Indicates whether the item is archived. - default: false - isDraft: - type: optional - docs: Indicates whether the item is in draft state. - default: true - fieldData: CreateBulkCollectionItemRequestBodyFieldData - content-type: application/json - response: - docs: Request was successful - type: root.BulkCollectionItem - status-code: 202 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - name: Create a single item across multiple locales - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - cmsLocaleIds: - - 66f6e966c9e1dc700a857ca3 - - 66f6e966c9e1dc700a857ca4 - - 66f6e966c9e1dc700a857ca5 - isArchived: false - isDraft: false - fieldData: - name: Don’t Panic - slug: dont-panic - response: - body: - id: 580e64008c9a982ac9b8b754 - cmsLocaleIds: - - 653ad57de882f528b32e810e - - 6514390aea353fc691d69827 - - 65143930ea353fc691d69cd8 - lastPublished: '2023-03-17T18:47:35.560Z' - lastUpdated: '2023-03-17T18:47:35.560Z' - createdOn: '2023-03-17T18:47:35.560Z' - isArchived: true - isDraft: true - fieldData: - name: My new item - slug: my-new-item - date: '2022-11-18T00:00:00.000Z' - featured: false - color: '#db4b68' - - name: Create multiple items across multiple locales - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - cmsLocaleIds: - - 66f6e966c9e1dc700a857ca3 - - 66f6e966c9e1dc700a857ca4 - isArchived: false - isDraft: false - fieldData: - - name: Don’t Panic - slug: dont-panic - - name: So Long and Thanks for All the Fish - slug: so-long-and-thanks - response: - body: - id: 580e64008c9a982ac9b8b754 - cmsLocaleIds: - - 653ad57de882f528b32e810e - - 6514390aea353fc691d69827 - - 65143930ea353fc691d69cd8 - lastPublished: '2023-03-17T18:47:35.560Z' - lastUpdated: '2023-03-17T18:47:35.560Z' - createdOn: '2023-03-17T18:47:35.560Z' - isArchived: true - isDraft: true - fieldData: - name: My new item - slug: my-new-item - date: '2022-11-18T00:00:00.000Z' - featured: false - color: '#db4b68' - - name: Single item created across multiple locales - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - cmsLocaleIds: - - 66f6e966c9e1dc700a857ca3 - - 66f6e966c9e1dc700a857ca4 - - 66f6e966c9e1dc700a857ca5 - isArchived: false - isDraft: false - fieldData: - name: Don’t Panic - slug: dont-panic - response: - body: - id: 580e64008c9a982ac9b8b754 - cmsLocaleIds: - - 653ad57de882f528b32e810e - - 6514390aea353fc691d69827 - - 65143930ea353fc691d69cd8 - lastPublished: '2023-03-17T18:47:35.560Z' - lastUpdated: '2023-03-17T18:47:35.560Z' - createdOn: '2023-03-17T18:47:35.560Z' - isArchived: true - isDraft: true - fieldData: - name: My new item - slug: my-new-item - date: '2022-11-18T00:00:00.000Z' - featured: false - color: '#db4b68' - - name: Multiple items created across multiple locales - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - cmsLocaleIds: - - 66f6e966c9e1dc700a857ca3 - - 66f6e966c9e1dc700a857ca4 - - 66f6e966c9e1dc700a857ca5 - isArchived: false - isDraft: false - fieldData: - name: Don’t Panic - slug: dont-panic - response: - body: - id: 580e64008c9a982ac9b8b754 - cmsLocaleIds: - - 653ad57de882f528b32e810e - - 6514390aea353fc691d69827 - - 65143930ea353fc691d69cd8 - lastPublished: '2023-03-17T18:47:35.560Z' - lastUpdated: '2023-03-17T18:47:35.560Z' - createdOn: '2023-03-17T18:47:35.560Z' - isArchived: true - isDraft: true - fieldData: - name: My new item - slug: my-new-item - date: '2022-11-18T00:00:00.000Z' - featured: false - color: '#db4b68' - get-item: - path: /collections/{collection_id}/items/{item_id} - method: GET - auth: true - docs: | - Get details of a selected Collection Item. - - Required scope | `CMS:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - item_id: - type: string - docs: Unique identifier for an Item - display-name: Get Collection Item - request: - name: ItemsGetItemRequest - query-parameters: - cmsLocaleId: - type: optional - docs: >- - Unique identifier for a CMS Locale. This UID is different from the - Site locale identifier and is listed as `cmsLocaleId` in the Sites - response. To query multiple locales, input a comma separated - string. - response: - docs: Request was successful - type: root.CollectionItem - status-code: 200 - url: Production - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - item_id: 580e64008c9a982ac9b8b754 - response: - body: - id: 42b720ef280c7a7a3be8cabe - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2022-11-29T16:22:43.159Z' - lastUpdated: '2022-11-17T17:19:43.282Z' - createdOn: '2022-11-17T17:11:57.148Z' - isArchived: false - isDraft: false - fieldData: - name: Pan Galactic Gargle Blaster Recipe - slug: pan-galactic-gargle-blaster - color: '#db4b68' - date: '2022-11-18T00:00:00.000Z' - featured: true - delete-item: - path: /collections/{collection_id}/items/{item_id} - method: DELETE - auth: true - docs: | - Delete an item from a collection. - - Required scope | `CMS:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - item_id: - type: string - docs: Unique identifier for an Item - display-name: Delete Collection Item - request: - name: ItemsDeleteItemRequest - query-parameters: - cmsLocaleId: - type: optional - docs: >- - Unique identifier for a CMS Locale. This UID is different from the - Site locale identifier and is listed as `cmsLocaleId` in the Sites - response. To query multiple locales, input a comma separated - string. - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - item_id: 580e64008c9a982ac9b8b754 - update-item: - path: /collections/{collection_id}/items/{item_id} - method: PATCH - auth: true - docs: | - Update a selected Item in a Collection. - - Required scope | `CMS:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - item_id: - type: string - docs: Unique identifier for an Item - display-name: Update Collection Item - request: - body: root.CollectionItemPatchSingle - query-parameters: - skipInvalidFiles: - type: optional - default: true - docs: >- - When true, invalid files are skipped and processing continues. - When false, the entire request fails if any file is invalid. - name: ItemsUpdateItemRequest - content-type: application/json - response: - docs: Request was successful - type: root.CollectionItem - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - item_id: 580e64008c9a982ac9b8b754 - request: - isArchived: false - isDraft: false - fieldData: - name: Pan Galactic Gargle Blaster Recipe - slug: pan-galactic-gargle-blaster - date: '2022-11-18T00:00:00.000Z' - featured: true - color: '#db4b68' - response: - body: - id: 42b720ef280c7a7a3be8cabe - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2022-11-29T16:22:43.159Z' - lastUpdated: '2022-11-17T17:19:43.282Z' - createdOn: '2022-11-17T17:11:57.148Z' - isArchived: false - isDraft: false - fieldData: - name: Pan Galactic Gargle Blaster Recipe - slug: pan-galactic-gargle-blaster - color: '#db4b68' - date: '2022-11-18T00:00:00.000Z' - featured: true - get-item-live: - path: /collections/{collection_id}/items/{item_id}/live - method: GET - auth: true - docs: | - Get details of a selected Collection live Item. - - - To serve content to your other frontends applications, enterprise sites have access to a dedicated [content delivery API](/data/docs/cms-content-delivery), available at api-cdn.webflow.com. - - - - Required scope | `CMS:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - item_id: - type: string - docs: Unique identifier for an Item - display-name: Get Live Collection Item - request: - name: ItemsGetItemLiveRequest - query-parameters: - cmsLocaleId: - type: optional - docs: >- - Unique identifier for a CMS Locale. This UID is different from the - Site locale identifier and is listed as `cmsLocaleId` in the Sites - response. To query multiple locales, input a comma separated - string. - response: - docs: Request was successful - type: root.CollectionItem - status-code: 200 - url: Data API - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - item_id: 580e64008c9a982ac9b8b754 - response: - body: - id: 42b720ef280c7a7a3be8cabe - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2022-11-29T16:22:43.159Z' - lastUpdated: '2022-11-17T17:19:43.282Z' - createdOn: '2022-11-17T17:11:57.148Z' - isArchived: false - isDraft: false - fieldData: - name: Pan Galactic Gargle Blaster Recipe - slug: pan-galactic-gargle-blaster - color: '#db4b68' - date: '2022-11-18T00:00:00.000Z' - featured: true - delete-item-live: - path: /collections/{collection_id}/items/{item_id}/live - method: DELETE - auth: true - docs: > - Unpublish a live item from the site and set the `isDraft` property to - `true`. - - - For bulk unpublishing, please use [this - endpoint.](/data/v2.0.0/reference/cms/collection-items/live-items/delete-items-live) - - - Required scope | `CMS:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - item_id: - type: string - docs: Unique identifier for an Item - display-name: Unpublish Live Collection Item - request: - name: ItemsDeleteItemLiveRequest - query-parameters: - cmsLocaleId: - type: optional - docs: >- - Unique identifier for a CMS Locale. This UID is different from the - Site locale identifier and is listed as `cmsLocaleId` in the Sites - response. To query multiple locales, input a comma separated - string. - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - item_id: 580e64008c9a982ac9b8b754 - update-item-live: - path: /collections/{collection_id}/items/{item_id}/live - method: PATCH - auth: true - docs: > - Update a selected live Item in a Collection. The updates for this Item - will be published to the live site. - - - Required scope | `CMS:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - item_id: - type: string - docs: Unique identifier for an Item - display-name: Update Live Collection Item - request: - body: root.CollectionItemPatchSingle - query-parameters: - skipInvalidFiles: - type: optional - default: true - docs: >- - When true, invalid files are skipped and processing continues. - When false, the entire request fails if any file is invalid. - name: ItemsUpdateItemLiveRequest - content-type: application/json - response: - docs: Request was successful - type: root.CollectionItem - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - item_id: 580e64008c9a982ac9b8b754 - request: - isArchived: false - isDraft: false - fieldData: - name: Pan Galactic Gargle Blaster Recipe - slug: pan-galactic-gargle-blaster - date: '2022-11-18T00:00:00.000Z' - featured: true - color: '#db4b68' - response: - body: - id: 42b720ef280c7a7a3be8cabe - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2022-11-29T16:22:43.159Z' - lastUpdated: '2022-11-17T17:19:43.282Z' - createdOn: '2022-11-17T17:11:57.148Z' - isArchived: false - isDraft: false - fieldData: - name: Pan Galactic Gargle Blaster Recipe - slug: pan-galactic-gargle-blaster - color: '#db4b68' - date: '2022-11-18T00:00:00.000Z' - featured: true - publish-item: - path: /collections/{collection_id}/items/publish - method: POST - auth: true - docs: | - Publish an item or multiple items. - - Required scope | `cms:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - collection_id: - type: string - docs: Unique identifier for a Collection - display-name: Publish Collection Item - request: - body: ItemsPublishItemRequest - content-type: application/json - response: - docs: Request was successful - type: ItemsPublishItemResponse - status-code: 202 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - name: PrimaryLocale - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - itemIds: - - 643fd856d66b6528195ee2ca - - 643fd856d66b6528195ee2cb - - 643fd856d66b6528195ee2cc - response: - body: - publishedItemIds: - - 643fd856d66b6528195ee2ca - - 643fd856d66b6528195ee2cb - errors: - - Staging item ID 643fd856d66b6528195ee2cf not found. - - name: SecondaryLocale - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - items: - - id: 643fd856d66b6528195ee2ca - cmsLocaleIds: - - 653ad57de882f528b32e810e - - id: 643fd856d66b6528195ee2cb - cmsLocaleIds: - - 653ad57de882f528b32e810e - - id: 643fd856d66b6528195ee2cc - cmsLocaleIds: - - 653ad57de882f528b32e810e - response: - body: - publishedItemIds: - - 643fd856d66b6528195ee2ca - - 643fd856d66b6528195ee2cb - errors: - - Staging item ID 643fd856d66b6528195ee2cf not found. - - name: MultipleLocales - path-parameters: - collection_id: 580e63fc8c9a982ac9b8b745 - request: - items: - - id: 643fd856d66b6528195ee2ca - cmsLocaleIds: - - 653ad57de882f528b32e810e - - 6514390aea353fc691d69827 - - 65143930ea353fc691d69cd8 - response: - body: - publishedItemIds: - - 643fd856d66b6528195ee2ca - - 643fd856d66b6528195ee2cb - errors: - - Staging item ID 643fd856d66b6528195ee2cf not found. - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/comments.yml b/.mock/definition/comments.yml deleted file mode 100644 index 91de1be8..00000000 --- a/.mock/definition/comments.yml +++ /dev/null @@ -1,40 +0,0 @@ -imports: - root: __package__.yml -webhooks: - comment_created: - audiences: [] - method: POST - display-name: New Comment Thread - headers: {} - payload: root.Comment - examples: - - payload: - triggerType: comment_created - payload: - threadId: 679d2ddb5196117ad04d1ffa - commentId: 679d2ddb5196117ad04d1ff8 - type: new_comment - siteId: 679826b3b20b045e176bc4b5 - pageId: 679826b3b20b045e176bc4bc - localeId: 67993753d910db250db64b3e - breakpoint: main - url: >- - https://webflow.com/design/site-slug-4ec832?workflow=comment&commentId=679d2ddb5196117ad04d1ffa&pageId=679826b3b20b045e176bc4bc - content: 'This comment mentions another user [[6287ec36a841b25637c663df]] ' - isResolved: false - author: - userId: 6287ec36a841b25637c663df - email: ford.prefect@heartofgold.spaceship - name: Ford Prefect - mentionedUsers: - - userId: 6287ec36a841b25637c663df - email: arthur.dent@heartofgold.spaceship - name: Arthur Dent - createdOn: '2025-01-31T20:08:59.759Z' - lastUpdated: '2025-01-31T20:08:59.759Z' - docs: | - Information about a new comment thread or reply - - - There may be a delay of up to 5 minutes before new comments appear in the system and trigger the webhook notification. - diff --git a/.mock/definition/components.yml b/.mock/definition/components.yml deleted file mode 100644 index 2aacf19e..00000000 --- a/.mock/definition/components.yml +++ /dev/null @@ -1,504 +0,0 @@ -imports: - root: __package__.yml -service: - auth: false - base-path: '' - endpoints: - list: - path: /sites/{site_id}/components - method: GET - auth: true - docs: | - List of all components for a site. - - Required scope | `components:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: List Components - request: - name: ComponentsListRequest - query-parameters: - branchId: - type: optional - docs: Scope the operation to work on a specific branch. - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - response: - docs: Request was successful - type: root.ComponentList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - query-parameters: - branchId: 68026fa68ef6dc744c75b833 - response: - body: - components: - - id: 6596da6045e56dee495bcbba - name: Primary Button - group: Buttons - description: A default button component that can be used across the site - readonly: true - - id: 658205daa3e8206a523b5ad4 - name: Secondary Button - group: Buttons - description: >- - A secondary button component that can be used across the - site - readonly: true - - id: 6258612d1ee792848f805dcf - name: Card - readonly: true - - id: 68a2b1d1ee792848f805dcf - name: Nav - readonly: true - pagination: - limit: 20 - offset: 0 - total: 4 - get-content: - path: /sites/{site_id}/components/{component_id}/dom - method: GET - auth: true - docs: > - Get static content from a component definition. This includes text - nodes, image nodes, select nodes, text input nodes, submit button nodes, - and nested component instances. - - To retrieve dynamic content set by component properties, use the [get - component - properties](/data/reference/pages-and-components/components/get-properties) - endpoint. - - - 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 | `components:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - component_id: - type: string - docs: Unique identifier for a Component - display-name: Get Component Content - request: - name: ComponentsGetContentRequest - query-parameters: - localeId: - type: optional - docs: >- - Unique identifier for a specific locale. Applicable, when using - localization. - branchId: - type: optional - docs: Scope the operation to work on a specific branch. - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - response: - docs: Request was successful - type: root.ComponentDom - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - component_id: 8505ba55-ef72-629e-f85c-33e4b703d48b - query-parameters: - localeId: 65427cf400e02b306eaa04a0 - branchId: 68026fa68ef6dc744c75b833 - response: - body: - componentId: 69118560-d0bc-15fc-bbf8-b8fe5f6535b5 - nodes: - - id: id - text: {} - attributes: - key: value - type: text - - id: id - text: {} - attributes: - key: value - type: text - - id: id - image: {} - attributes: - key: value - type: image - - id: id - placeholder: placeholder - attributes: - key: value - type: text-input - - id: id - choices: - - value: value - text: text - attributes: - key: value - type: select - - id: id - value: value - waitingText: waitingText - attributes: - key: value - type: submit-button - - id: id - componentId: componentId - propertyOverrides: - - propertyId: 7dd14c08-2e96-8d3d-2b19-b5c03642a0f0 - type: component-instance - pagination: - limit: 7 - offset: 0 - total: 7 - update-content: - path: /sites/{site_id}/components/{component_id}/dom - method: POST - auth: true - docs: > - This endpoint updates content within a component defintion for - **secondary locales**. It supports updating up to 1000 nodes in a single - request. - - - Before making updates: - - 1. Use the [get component - content](/data/reference/pages-and-components/components/get-content) - endpoint to identify available content nodes and their types - - 2. If your component definition has a component instance nested within - it, retrieve the nested component instance's properties that you'll - override using the [get component - properties](/data/reference/pages-and-components/components/get-properties) - endpoint - - - - This endpoint is specifically for localizing component definitions. Ensure that the specified `localeId` is a valid **secondary locale** for the site otherwise the request will fail. - - - - Required scope | `components:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - component_id: - type: string - docs: Unique identifier for a Component - display-name: Update Component Content - request: - name: ComponentDomWrite - query-parameters: - localeId: - type: optional - docs: >- - Unique identifier for a specific locale. Applicable, when using - localization. - branchId: - type: optional - docs: Scope the operation to work on a specific branch. - body: - properties: - nodes: - docs: >- - List of DOM Nodes with the new content that will be updated in - each node. - type: list - content-type: application/json - response: - docs: Request was successful - type: ComponentsUpdateContentResponse - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - component_id: 8505ba55-ef72-629e-f85c-33e4b703d48b - query-parameters: - localeId: 65427cf400e02b306eaa04a0 - branchId: 68026fa68ef6dc744c75b833 - request: - nodes: - - nodeId: a245c12d-995b-55ee-5ec7-aa36a6cad623 - text:

The Hitchhiker's Guide to the Galaxy

- - nodeId: a245c12d-995b-55ee-5ec7-aa36a6cad627 - text: >- -

Don't Panic!

Always know where your towel - is.

- - nodeId: a245c12d-995b-55ee-5ec7-aa36a6cad635 - choices: - - value: choice-1 - text: First choice - - value: choice-2 - text: Second choice - - nodeId: a245c12d-995b-55ee-5ec7-aa36a6cad642 - placeholder: Enter something here... - - nodeId: a245c12d-995b-55ee-5ec7-aa36a6cad671 - value: Submit - waitingText: Submitting... - - nodeId: a245c12d-995b-55ee-5ec7-aa36a6cad629 - propertyOverrides: - - propertyId: 7dd14c08-2e96-8d3d-2b19-b5c03642a0f0 - text:

Time is an illusion

- - propertyId: 7dd14c08-2e96-8d3d-2b19-b5c03642a0f1 - text: Life, the Universe and Everything - response: - body: - errors: - - errors - get-properties: - path: /sites/{site_id}/components/{component_id}/properties - method: GET - auth: true - docs: > - Get the default property values of a component definition. - - - If you do not include a `localeId` in your request, the response - will return any properties that can be localized from the Primary - locale. - - - Required scope | `components:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - component_id: - type: string - docs: Unique identifier for a Component - display-name: Get Component Properties - request: - name: ComponentsGetPropertiesRequest - query-parameters: - localeId: - type: optional - docs: >- - Unique identifier for a specific locale. Applicable, when using - localization. - branchId: - type: optional - docs: Scope the operation to work on a specific branch. - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - response: - docs: Request was successful - type: root.ComponentProperties - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - component_id: 8505ba55-ef72-629e-f85c-33e4b703d48b - query-parameters: - localeId: 65427cf400e02b306eaa04a0 - branchId: 68026fa68ef6dc744c75b833 - response: - body: - componentId: 658205daa3e8206a523b5ad4 - properties: - - propertyId: a245c12d-995b-55ee-5ec7-aa36a6cad623 - type: Plain Text - label: Title - text: - text: The Hitchhiker's Guide to the Galaxy - - propertyId: a245c12d-995b-55ee-5ec7-aa36a6cad627 - type: Rich Text - label: Content - text: - html: >- -

Don't Panic!

Always know where your towel - is.

- pagination: - limit: 2 - offset: 0 - total: 2 - update-properties: - path: /sites/{site_id}/components/{component_id}/properties - method: POST - auth: true - docs: > - Update the default property values of a component definition in a - specificed locale. - - - Before making updates, use the [get component - properties](/data/reference/pages-and-components/components/get-properties) - endpoint to identify properties that can be updated in a secondary - locale. - - - The request requires a secondary locale ID. If a `localeId` is - missing, the request will not be processed and will result in an - error. - - - Required scope | `components:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - component_id: - type: string - docs: Unique identifier for a Component - display-name: Update Component Properties - request: - name: ComponentPropertiesWrite - query-parameters: - localeId: - type: optional - docs: >- - Unique identifier for a specific locale. Applicable, when using - localization. - branchId: - type: optional - docs: Scope the operation to work on a specific branch. - body: - properties: - properties: - docs: >- - A list of component properties to update within the specified - secondary locale. - type: list - content-type: application/json - response: - docs: Request was successful - type: ComponentsUpdatePropertiesResponse - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - component_id: 8505ba55-ef72-629e-f85c-33e4b703d48b - query-parameters: - localeId: 65427cf400e02b306eaa04a0 - branchId: 68026fa68ef6dc744c75b833 - request: - properties: - - propertyId: a245c12d-995b-55ee-5ec7-aa36a6cad623 - text: The Hitchhiker’s Guide to the Galaxy - - propertyId: a245c12d-995b-55ee-5ec7-aa36a6cad627 - text: >- -

Dont Panic!

Always know where your towel - is.

- response: - body: - errors: - - errors - source: - openapi: ../../../openapi/referenced-specs/v2.yml -types: - ComponentDomWriteNodesItem: - discriminated: false - union: - - type: root.Text Node - - type: root.Component Instance - - type: root.Select - - type: root.Text Input - - type: root.Submit Button - - type: root.Search Button - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - ComponentsUpdateContentResponse: - properties: - errors: - docs: A list of error messages, if any. - type: list - source: - openapi: ../../../openapi/referenced-specs/v2.yml - ComponentPropertiesWritePropertiesItem: - properties: - propertyId: - type: string - docs: The ID of the property. - text: - type: string - docs: > - The new string or HTML value used to update the component property in - the secondary locale. - - - The provided value must be compatible with the type of the component - property. - - - For example, attempting to update a single-line plain-text property - with a multi-line - - value will result in an error. - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - ComponentsUpdatePropertiesResponse: - properties: - errors: - docs: A list of error messages, if any. - type: list - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/ecommerce.yml b/.mock/definition/ecommerce.yml deleted file mode 100644 index b3e9857e..00000000 --- a/.mock/definition/ecommerce.yml +++ /dev/null @@ -1,43 +0,0 @@ -imports: - root: __package__.yml -service: - auth: false - base-path: '' - endpoints: - get-settings: - path: /sites/{site_id}/ecommerce/settings - method: GET - auth: true - docs: | - Retrieve ecommerce settings for a site. - - Required scope | `ecommerce:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Get Ecommerce Settings - response: - docs: Request was successful - type: root.EcommerceSettings - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - siteId: 5eb0b5583bf24e2d3a488969 - createdOn: '2018-10-04T15:21:02Z' - defaultCurrency: USD - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/forms.yml b/.mock/definition/forms.yml deleted file mode 100644 index f7044cfc..00000000 --- a/.mock/definition/forms.yml +++ /dev/null @@ -1,450 +0,0 @@ -imports: - root: __package__.yml -service: - auth: false - base-path: '' - endpoints: - list: - path: /sites/{site_id}/forms - method: GET - auth: true - docs: | - List forms for a given site. - - Required scope | `forms:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: List Forms - request: - name: FormsListRequest - query-parameters: - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - response: - docs: Request was successful - type: root.FormList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - forms: - - displayName: Email Form - createdOn: '2016-10-24T19:41:29Z' - lastUpdated: '2016-10-24T19:43:17Z' - fields: - '0': - displayName: Email - userVisible: true - '1': - displayName: Email - userVisible: true - responseSettings: - redirectUrl: https://example.com - redirectMethod: GET - sendEmailConfirmation: true - id: 589a331aa51e760df7ccb89e - siteId: 580e63e98c9a982ac9b8b741 - siteDomainId: 6419db964a9c436a4baf6248 - pageId: 6419db964a9c43f6a3af6348 - pageName: Home - formElementId: 4e038d2c-6a1e-4953-7be9-a59a2b453177 - workspaceId: 580e63fc8c9a982ac9b8b744 - - displayName: Name Form - createdOn: '2016-10-24T19:41:29Z' - lastUpdated: '2016-10-24T19:43:17Z' - fields: - '0': - displayName: Email - userVisible: true - responseSettings: - redirectUrl: https://example.com - redirectMethod: GET - sendEmailConfirmation: false - id: 580ff8d7ba3e45ba9fe588e9 - siteId: 580e63e98c9a982ac9b8b741 - siteDomainId: 6419db964a9c436a4baf6248 - pageId: 6419db964a9c43f6a3af6348 - pageName: Home - formElementId: 4e038d2c-6a1e-4953-7be9-a59a2b453177 - workspaceId: 580e63fc8c9a982ac9b8b744 - pagination: - limit: 25 - offset: 0 - total: 2 - get: - path: /forms/{form_id} - method: GET - auth: true - docs: | - Get information about a given form. - - Required scope | `forms:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - form_id: - type: string - docs: Unique identifier for a Form - display-name: Get Form Schema - response: - docs: Request was successful - type: root.Form - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - form_id: 580e63e98c9a982ac9b8b741 - response: - body: - displayName: Email Form - createdOn: '2016-10-24T19:41:29Z' - lastUpdated: '2016-10-24T19:43:17Z' - fields: - 660d5bcc9c0772150459dfb1: - displayName: Name - type: Plain - userVisible: true - 589a331aa51e760df7ccb89d: - displayName: Email - type: Email - placeholder: Enter your email - userVisible: true - responseSettings: - redirectUrl: https://example.com - redirectMethod: GET - sendEmailConfirmation: true - id: 589a331aa51e760df7ccb89e - siteId: 580e63e98c9a982ac9b8b741 - siteDomainId: 6419db964a9c436a4baf6248 - pageId: 6419db964a9c43f6a3af6348 - pageName: Home - formElementId: 4e038d2c-6a1e-4953-7be9-a59a2b453177 - workspaceId: 580e63fc8c9a982ac9b8b744 - list-submissions: - path: /forms/{form_id}/submissions - method: GET - auth: true - docs: | - List form submissions for a given form - - - When a form is used in a component definition, each instance of the form is considered a unique form. - - To get a combined list of submissions for a form that appears across multiple component instances, use the [List Form Submissions by Site](/data/reference/forms/form-submissions/list-submissions-by-site) endpoint. - - - Required scope | `forms:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - form_id: - type: string - docs: Unique identifier for a Form - display-name: List Form Submissions - request: - name: FormsListSubmissionsRequest - query-parameters: - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - response: - docs: Request was successful - type: root.FormSubmissionList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - form_id: 580e63e98c9a982ac9b8b741 - response: - body: - formSubmissions: - - id: 6321ca84df3949bfc6752327 - displayName: Sample Form - siteId: 62749158efef318abc8d5a0f - workspaceId: 62749158efef318abc8d5a0f - dateSubmitted: '2022-09-14T12:35:16Z' - formResponse: - First Name: Arthur - Last Name: Dent - - id: 660d64fabf6e0a0d4edab981 - displayName: Sample Form - siteId: 62749158efef318abc8d5a0f - workspaceId: 62749158efef318abc8d5a0f - dateSubmitted: '2022-09-14T12:35:16Z' - formResponse: - First Name: Ford - Last Name: Prefect - pagination: - limit: 25 - offset: 0 - total: 2 - get-submission: - path: /form_submissions/{form_submission_id} - method: GET - auth: true - docs: | - Get information about a given form submissio. - - Required scope | `forms:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - form_submission_id: - type: string - docs: Unique identifier for a Form Submission - display-name: Get Form Submission - response: - docs: Request was successful - type: root.FormSubmission - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - form_submission_id: 580e63e98c9a982ac9b8b741 - response: - body: - id: 6321ca84df3949bfc6752327 - displayName: Sample Form - siteId: 62749158efef318abc8d5a0f - workspaceId: 62749158efef318abc8d5a0f - dateSubmitted: '2022-09-14T12:35:16Z' - formResponse: - First Name: Arthur - Last Name: Dent - delete-submission: - path: /form_submissions/{form_submission_id} - method: DELETE - auth: true - docs: | - Delete a form submission - - - Required scope | `forms:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - form_submission_id: - type: string - docs: Unique identifier for a Form Submission - display-name: Delete Form Submission - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - form_submission_id: 580e63e98c9a982ac9b8b741 - update-submission: - path: /form_submissions/{form_submission_id} - method: PATCH - auth: true - docs: | - Update hidden fields on a form submission - - Required scope | `forms:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - form_submission_id: - type: string - docs: Unique identifier for a Form Submission - display-name: Modify Form Submission - request: - name: FormsUpdateSubmissionRequest - body: - properties: - formSubmissionData: - type: optional> - docs: >- - An existing **hidden field** defined on the form schema, and the - corresponding value to set - content-type: application/json - response: - docs: Request was successful - type: root.FormSubmission - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - form_submission_id: 580e63e98c9a982ac9b8b741 - request: {} - response: - body: - id: 6321ca84df3949bfc6752327 - displayName: Sample Form - siteId: 62749158efef318abc8d5a0f - workspaceId: 62749158efef318abc8d5a0f - dateSubmitted: '2022-09-14T12:35:16Z' - formResponse: - First Name: Arthur - Last Name: Dent - list-submissions-by-site: - path: /sites/{site_id}/form_submissions - method: GET - auth: true - docs: > - List form submissions for a given site. This endpoint differs from the - existing [List Form Submissions - endpoint](/data/reference/forms/form-submissions/list-submissions) by - accepting `siteId` as a path parameter and `elementId` as a query - parameter. You can get the `elementId` from the [List forms - endpoint](/data/reference/forms/forms/list). - - - - - Required scope | `forms:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: List Form Submissions by Site - request: - name: FormsListSubmissionsBySiteRequest - query-parameters: - elementId: - type: optional - docs: Identifier for an element - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - response: - docs: Request was successful - type: root.FormSubmissionList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - query-parameters: - elementId: 18259716-3e5a-646a-5f41-5dc4b9405aa0 - response: - body: - formSubmissions: - - id: 6321ca84df3949bfc6752327 - displayName: Sample Form - siteId: 62749158efef318abc8d5a0f - workspaceId: 62749158efef318abc8d5a0f - dateSubmitted: '2022-09-14T12:35:16Z' - formResponse: - First Name: Arthur - Last Name: Dent - - id: 660d64fabf6e0a0d4edab981 - displayName: Sample Form - siteId: 62749158efef318abc8d5a0f - workspaceId: 62749158efef318abc8d5a0f - dateSubmitted: '2022-09-14T12:35:16Z' - formResponse: - First Name: Ford - Last Name: Prefect - pagination: - limit: 25 - offset: 0 - total: 2 - source: - openapi: ../../../openapi/referenced-specs/v2.yml - display-name: Forms -docs: Forms are forms that are created on your Webflow site. -webhooks: - form_submission: - audiences: [] - method: POST - display-name: Form Submission - headers: {} - payload: root.FormSubmissionTrigger - examples: - - payload: - triggerType: form_submission - payload: - name: Contact Us - siteId: 65427cf400e02b306eaa049c - data: - First Name: Zaphod - Last Name: Beeblebrox - email: zaphod@heartofgold.ai - Phone Number: 15550000000 - schema: - - fieldName: First Name - fieldType: FormTextInput - fieldElementId: 285042f7-d554-dc7f-102c-aa10d6a2d2c4 - - fieldName: Last Name - fieldType: FormTextInput - fieldElementId: 285042f7-d554-dc7f-102c-aa10d6a2d2c5 - - fieldName: email - fieldType: FormTextInput - fieldElementId: 285042f7-d554-dc7f-102c-aa10d6a2d2c6 - - fieldName: Phone Number - fieldType: FormTextInput - fieldElementId: 285042f7-d554-dc7f-102c-aa10d6a2d2c7 - submittedAt: '2022-09-14T12:35:16.117Z' - id: 6321ca84df3949bfc6752327 - formId: 65429eadebe8a9f3a30f62d0 - formElementId: 4e038d2c-6a1e-4953-7be9-a59a2b453177 - docs: Information about a form that was subitted diff --git a/.mock/definition/inventory.yml b/.mock/definition/inventory.yml deleted file mode 100644 index 13694c0c..00000000 --- a/.mock/definition/inventory.yml +++ /dev/null @@ -1,148 +0,0 @@ -imports: - root: __package__.yml -service: - auth: false - base-path: '' - endpoints: - list: - path: /collections/{sku_collection_id}/items/{sku_id}/inventory - method: GET - auth: true - docs: | - List the current inventory levels for a particular SKU item. - - Required scope | `ecommerce:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - sku_collection_id: - type: string - docs: >- - Unique identifier for a SKU collection. Use the List Collections API - to find this ID. - sku_id: - type: string - docs: Unique identifier for a SKU - display-name: List Inventory - response: - docs: Request was successful - type: root.InventoryItem - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - sku_collection_id: 6377a7c4b7a79608c34a46f7 - sku_id: 5e8518516e147040726cc415 - response: - body: - id: 5bfedb42bab0ad90fa7dad39 - quantity: 100 - inventoryType: finite - update: - path: /collections/{sku_collection_id}/items/{sku_id}/inventory - method: PATCH - auth: true - docs: > - 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` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - sku_collection_id: - type: string - docs: >- - Unique identifier for a SKU collection. Use the List Collections API - to find this ID. - sku_id: - type: string - docs: Unique identifier for a SKU - display-name: Update Item Inventory - request: - name: InventoryUpdateRequest - body: - properties: - inventoryType: - type: InventoryUpdateRequestInventoryType - docs: infinite or finite - updateQuantity: - type: optional - docs: Adds this quantity to currently store quantity. Can be negative. - quantity: - type: optional - docs: Immediately sets quantity to this value. - content-type: application/json - response: - docs: Request was successful - type: root.InventoryItem - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - sku_collection_id: 6377a7c4b7a79608c34a46f7 - sku_id: 5e8518516e147040726cc415 - request: - inventoryType: infinite - response: - body: - id: 5bfedb42bab0ad90fa7dad39 - quantity: 100 - inventoryType: finite - source: - openapi: ../../../openapi/referenced-specs/v2.yml - display-name: Inventory -docs: Inventory is the stock of e-commerce items in your Webflow site. -types: - InventoryUpdateRequestInventoryType: - enum: - - infinite - - finite - docs: infinite or finite - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - EcommInventoryChangedPayload: - properties: - triggerType: optional> - payload: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml -webhooks: - ecomm_inventory_changed: - audiences: [] - method: POST - display-name: Updated eComm Inventory - headers: {} - payload: EcommInventoryChangedPayload - examples: - - name: WebhookInventoryChanged - payload: - triggerType: ecomm_inventory_changed - payload: - ref: ./schemas/inventory.yml#/InventoryItem/example - docs: Information about updated ecommerce inventory values diff --git a/.mock/definition/items.yml b/.mock/definition/items.yml deleted file mode 100644 index 4d2db993..00000000 --- a/.mock/definition/items.yml +++ /dev/null @@ -1,99 +0,0 @@ -imports: - root: __package__.yml -webhooks: - collection_item_created: - audiences: [] - method: POST - display-name: Collection Item Created - headers: {} - payload: root.CollectionItemCreated - examples: - - payload: - triggerType: collection_item_created - payload: - id: 580e64008c9a982ac9b8b754 - workspaceId: 625860a7a6c16d624927122f - siteId: 65427cf400e02b306eaa049c - collectionId: 664243617fcc8b464b23c4ee - cmsLocaleId: 681442a144bb80bd00480fda - lastUpdated: '2023-03-17T18:47:35Z' - createdOn: '2023-03-17T18:47:35Z' - isArchived: false - isDraft: false - fieldData: - name: Pan-Galactic Gargle Blaster - slug: pan-galactic-gargle-blaster - docs: Information about a new collection item - collection_item_changed: - audiences: [] - method: POST - display-name: Collection Item Updated - headers: {} - payload: root.CollectionItemChanged - examples: - - payload: - triggerType: collection_item_changed - payload: - id: 580e64008c9a982ac9b8b754 - workspaceId: 625860a7a6c16d624927122f - siteId: 65427cf400e02b306eaa049c - collectionId: 664243617fcc8b464b23c4ee - cmsLocaleId: 681442a144bb80bd00480fda - lastUpdated: '2023-03-17T18:47:35Z' - createdOn: '2023-03-17T18:47:35Z' - isArchived: false - isDraft: false - fieldData: - name: Pan-Galactic Gargle Blaster - slug: pan-galactic-gargle-blaster - docs: Information about an updated collection item - collection_item_deleted: - audiences: [] - method: POST - display-name: Collection Item Deleted - headers: {} - payload: root.CollectionItemRemoved - examples: - - payload: - triggerType: collection_item_deleted - payload: - id: 66424365e972c886137a1cf1 - siteId: 65427cf400e02b306eaa049c - workspaceId: 625860a7a6c16d624927122f - collectionId: 664243617fcc8b464b23c4ee - cmsLocaleId: 681442a144bb80bd00480fda - lastUpdated: '2025-05-28T04:44:33Z' - createdOn: '2025-05-28T04:27:12Z' - isArchived: false - isDraft: false - fieldData: - name: Anna Gunn - slug: anna-gunn - _locale: 681442a144bb80bd00480fda - _noSearch: false - docs: Information about a deleted collection item - collection_item_unpublished: - audiences: [] - method: POST - display-name: Collection Item Unpublished - headers: {} - payload: root.CollectionItemUnpublished - examples: - - payload: - triggerType: collection_item_unpublished - payload: - id: 66424365e972c886137a1cf1 - siteId: 65427cf400e02b306eaa049c - workspaceId: 625860a7a6c16d624927122f - collectionId: 664243617fcc8b464b23c4ee - cmsLocaleId: 681442a144bb80bd00480fda - lastUpdated: '2025-05-28T04:44:33Z' - createdOn: '2025-05-28T04:27:12Z' - isArchived: false - isDraft: false - fieldData: - name: Anna Gunn - slug: anna-gunn - _locale: 681442a144bb80bd00480fda - _noSearch: false - docs: Information about a collection item that was removed from the live site diff --git a/.mock/definition/orders.yml b/.mock/definition/orders.yml deleted file mode 100644 index d7243c72..00000000 --- a/.mock/definition/orders.yml +++ /dev/null @@ -1,1877 +0,0 @@ -types: - OrdersListRequestStatus: - enum: - - pending - - refunded - - value: dispute-lost - name: DisputeLost - - fulfilled - - disputed - - unfulfilled - source: - openapi: ../../../openapi/referenced-specs/v2.yml - OrdersRefundRequestReason: - enum: - - duplicate - - fraudulent - - requested - docs: The reason for the refund - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml -imports: - root: __package__.yml -service: - auth: false - base-path: '' - endpoints: - list: - path: /sites/{site_id}/orders - method: GET - auth: true - docs: | - List all orders created for a given site. - - Required scope | `ecommerce:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: List Orders - request: - name: OrdersListRequest - query-parameters: - status: - type: optional - docs: Filter the orders by status - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - response: - docs: Request was successful - type: root.OrderList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - orders: - - orderId: 7c1-9fd - status: unfulfilled - comment: >- - Customer requested gift wrapping and a personalized note - saying: Happy Birthday, Ford! 🎉 Please ensure the item is - packed with extra bubble wrap for safe transit. - orderComment: >- - Please gift wrap with a personal note saying "Happy - Birthday, Ford! 🎉 - acceptedOn: '2024-04-10T13:16:21Z' - customerPaid: - unit: USD - value: '5892' - string: ' 211.55 USD' - netAmount: - unit: USD - value: '5892' - string: ' 200.89 USD' - applicationFee: - unit: USD - value: '5892' - string: ' 4.23 USD' - allAddresses: - - type: billing - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - - type: shipping - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingAddress: - type: shipping - japanType: kanji - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - billingAddress: - type: billing - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingProvider: Shipping Company, Co. - shippingTracking: tr00000000002 - shippingTrackingURL: https://www.shippingcompany.com/tracking/tr00000000002 - customerInfo: - fullName: Arthur Dent - email: arthur.dent@example.com - purchasedItems: - - count: 2 - rowTotal: - unit: USD - value: '5892' - string: ' 111.22 USD' - productId: 66072fb61b89448912e26791 - productName: Luxurious Fresh Ball - productSlug: luxurious-fresh-ball - variantId: 66072fb71b89448912e2683f - variantName: 'Luxurious Fresh Ball Generic: Bronze, Practical: Plastic' - variantSlug: luxurious-fresh-ball-generic-bronze-practical-plastic - variantSKU: luxurious-fresh-ball-generic-bronze-practical-plastic - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 55.61 USD' - weight: 11 - width: 82 - height: 70 - length: 9 - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 83.09 USD' - productId: 66072fb61b89448912e2678b - productName: Incredible Bronze Towels - productSlug: incredible-bronze-towels - variantId: 66072fb71b89448912e2681e - variantName: >- - Incredible Bronze Towels Sleek: Frozen, Incredible: - Metal - variantSlug: incredible-bronze-towels-sleek-frozen-incredible-metal - variantSKU: incredible-bronze-towels-sleek-frozen-incredible-metal - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e26729_image16.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 83.09 USD' - width: 19 - height: 72 - length: 18 - purchasedItemsCount: 3 - stripeDetails: - paymentMethod: pm_1P410gJYFi4lcbXWbeKghqjK - paymentIntentId: pi_3P410iJYFi4lcbXW0EKKgcVg - customerId: cus_Ptod8KJBiiPgnH - chargeId: ch_3P410iJYFi4lcbXW0DxUkzCH - stripeCard: - last4: '4242' - brand: Visa - ownerName: Arthur Dent - expires: - year: 2025 - month: 4 - customData: - - key: value - metadata: - isBuyNow: false - isCustomerDeleted: false - isShippingRequired: false - hasDownloads: false - paymentProcessor: stripe - totals: - extras: - - type: tax - name: State Taxes - description: CA Taxes (6.25%) - price: - unit: USD - value: '5892' - string: '3.44' - downloadFiles: - - id: 5e9a5eba75e0ac242e1b6f64 - name: The modern web design process - Webflow Ebook.pdf - url: >- - https://webflow.com/dashboard/download-digital-product?payload=5d93ba5e38c6b0160ab711d3;e7634a;5eb1aac72912ec06f561278c;5e9a5eba75e0ac242e1b6f63:ka2nehxy:4a1ee0a632feaab94294350087215ed89533f2f530903e3b933b638940e921aa - - orderId: fc7-128 - status: refunded - comment: Example comment to myself - orderComment: '' - acceptedOn: '2024-03-29T21:29:21Z' - refundedOn: '2024-04-08T18:25:04Z' - customerPaid: - unit: USD - value: '5892' - string: ' 118.73 USD' - netAmount: - unit: USD - value: '5892' - string: ' 112.62 USD' - applicationFee: - unit: USD - value: '5892' - string: ' 2.37 USD' - allAddresses: - - type: billing - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - - type: shipping - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingAddress: - type: shipping - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - billingAddress: - type: billing - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingProvider: Shipping Company, Co. - shippingTracking: tr00000000001 - shippingTrackingURL: https://www.shippingcompany.com/tracking/tr00000000001 - customerInfo: - fullName: Arthur Dent - email: arthur.dent@example.com - purchasedItems: - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 55.61 USD' - productId: 66072fb61b89448912e26791 - productName: Luxurious Fresh Ball - productSlug: luxurious-fresh-ball - variantId: 66072fb71b89448912e2683f - variantName: 'Luxurious Fresh Ball Generic: Bronze, Practical: Plastic' - variantSlug: luxurious-fresh-ball-generic-bronze-practical-plastic - variantSKU: luxurious-fresh-ball-generic-bronze-practical-plastic - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 55.61 USD' - weight: 11 - width: 82 - height: 70 - length: 9 - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 53.44 USD' - productId: 66072fb61b89448912e26799 - productName: Recycled Steel Gloves - productSlug: recycled-steel-gloves - variantId: 66072fb91b89448912e26ab9 - variantName: >- - Recycled Steel Gloves Electronic: Granite, Handcrafted: - grey - variantSlug: >- - recycled-steel-gloves-electronic-granite-handcrafted-grey - variantSKU: >- - recycled-steel-gloves-electronic-granite-handcrafted-grey - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2671e_image2.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 53.44 USD' - weight: 38 - width: 76 - height: 85 - length: 40 - purchasedItemsCount: 2 - stripeDetails: - paymentMethod: pm_1OzmzBJYFi4lcbXWHKNdXU7j - paymentIntentId: pi_3OzmzDJYFi4lcbXW1hTBW6ft - customerId: cus_PpRsNHwWdUoRKR - chargeId: ch_3OzmzDJYFi4lcbXW1ndkkrH2 - refundId: re_3OzmzDJYFi4lcbXW1kFAmlBk - refundReason: fraudulent - stripeCard: - last4: '4242' - brand: Visa - ownerName: Arthur Dent - expires: - year: 2024 - month: 4 - customData: - - key: value - metadata: - isBuyNow: false - isCustomerDeleted: false - isShippingRequired: true - hasDownloads: false - paymentProcessor: stripe - totals: - subtotal: - unit: USD - value: '5892' - string: ' 109.05 USD' - extras: - - type: tax - name: State Taxes - description: NY Taxes (4.00%) - price: - unit: USD - value: '5892' - string: ' 4.36 USD' - - type: tax - name: City Taxes - description: NEW YORK Taxes (4.88%) - price: - unit: USD - value: '5892' - string: ' 5.32 USD' - - type: shipping - name: Flat - description: '' - price: - unit: USD - value: '5892' - string: ' 0.00 USD' - total: - unit: USD - value: '5892' - string: ' 118.73 USD' - downloadFiles: - - id: 5e9a5eba75e0ac242e1b6f64 - name: New product guide - url: >- - https://webflow.com/dashboard/download-digital-product?payload=5d93ba5e38c6b0160ab711d3;e7634a;5eb1aac72912ec06f561278c;5e9a5eba75e0ac242e1b6f63:ka2nehxy:4a1ee0a632feaab94294350087215ed89533f2f530903e3b933b638940e921aa - pagination: - limit: 100 - offset: 0 - total: 2 - get: - path: /sites/{site_id}/orders/{order_id} - method: GET - auth: true - docs: | - Retrieve a single product by its ID. All of its SKUs will also be - retrieved. - - Required scope | `ecommerce:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - order_id: - type: string - docs: Unique identifier for an Order - display-name: Get Order - response: - docs: Request was successful - type: root.Order - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - order_id: 5e8518516e147040726cc415 - response: - body: - orderId: fc7-128 - status: refunded - comment: >- - Customer requested gift wrapping and a personalized note saying: - Happy Birthday, Ford! 🎉 Please ensure the item is packed with - extra bubble wrap for safe transit. - orderComment: >- - Please gift wrap with a personal note saying "Happy Birthday, - Ford! 🎉 - acceptedOn: '2024-03-29T21:29:21Z' - fulfilledOn: '2024-03-29T21:29:21Z' - refundedOn: '2024-04-08T18:25:04Z' - disputedOn: '2024-03-29T21:29:21Z' - disputeUpdatedOn: '2024-03-29T21:29:21Z' - disputeLastStatus: charge_refunded - customerPaid: - unit: USD - value: '5892' - string: ' 118.73 USD' - netAmount: - unit: USD - value: '5892' - string: ' 112.62 USD' - applicationFee: - unit: USD - value: '5892' - string: ' 2.37 USD' - allAddresses: - - type: billing - japanType: kana - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - - type: shipping - japanType: kana - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingAddress: - type: shipping - japanType: kanji - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - billingAddress: - type: billing - japanType: kana - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingProvider: Shipping Company, Co. - shippingTracking: tr00000000001 - shippingTrackingURL: https://www.shippingcompany.com/tracking/tr00000000001 - customerInfo: - fullName: Arthur Dent - email: arthur.dent@example.com - purchasedItems: - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 55.61 USD' - productId: 66072fb61b89448912e26791 - productName: Luxurious Fresh Ball - productSlug: luxurious-fresh-ball - variantId: 66072fb71b89448912e2683f - variantName: 'Luxurious Fresh Ball Generic: Bronze, Practical: Plastic' - variantSlug: luxurious-fresh-ball-generic-bronze-practical-plastic - variantSKU: luxurious-fresh-ball-generic-bronze-practical-plastic - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 55.61 USD' - weight: 11 - width: 82 - height: 70 - length: 9 - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 53.44 USD' - productId: 66072fb61b89448912e26799 - productName: Recycled Steel Gloves - productSlug: recycled-steel-gloves - variantId: 66072fb91b89448912e26ab9 - variantName: 'Recycled Steel Gloves Electronic: Granite, Handcrafted: grey' - variantSlug: recycled-steel-gloves-electronic-granite-handcrafted-grey - variantSKU: recycled-steel-gloves-electronic-granite-handcrafted-grey - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2671e_image2.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 53.44 USD' - weight: 38 - width: 76 - height: 85 - length: 40 - purchasedItemsCount: 2 - stripeDetails: - paymentMethod: pm_1OzmzBJYFi4lcbXWHKNdXU7j - paymentIntentId: pi_3OzmzDJYFi4lcbXW1hTBW6ft - customerId: cus_PpRsNHwWdUoRKR - chargeId: ch_3OzmzDJYFi4lcbXW1ndkkrH2 - refundId: re_3OzmzDJYFi4lcbXW1kFAmlBk - refundReason: fraudulent - stripeCard: - last4: '4242' - brand: Visa - ownerName: Arthur Dent - expires: - year: 2024 - month: 4 - customData: - - key: value - metadata: - isBuyNow: false - isCustomerDeleted: false - isShippingRequired: true - hasDownloads: false - paymentProcessor: stripe - totals: - subtotal: - unit: USD - value: '5892' - string: ' 109.05 USD' - extras: - - type: tax - name: State Taxes - description: NY Taxes (4.00%) - price: - unit: USD - value: '5892' - string: ' 4.36 USD' - - type: tax - name: City Taxes - description: NEW YORK Taxes (4.88%) - price: - unit: USD - value: '5892' - string: ' 5.32 USD' - - type: shipping - name: Flat - description: '' - price: - unit: USD - value: '5892' - string: ' 0.00 USD' - total: - unit: USD - value: '5892' - string: ' 118.73 USD' - downloadFiles: - - id: 5e9a5eba75e0ac242e1b6f64 - name: New product guide - url: >- - https://webflow.com/dashboard/download-digital-product?payload=5d93ba5e38c6b0160ab711d3;e7634a;5eb1aac72912ec06f561278c;5e9a5eba75e0ac242e1b6f63:ka2nehxy:4a1ee0a632feaab94294350087215ed89533f2f530903e3b933b638940e921aa - update: - path: /sites/{site_id}/orders/{order_id} - method: PATCH - auth: true - docs: | - 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` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - order_id: - type: string - docs: Unique identifier for an Order - display-name: Update Order - request: - name: OrdersUpdateRequest - body: - properties: - comment: - type: optional - docs: Arbitrary data for your records - shippingProvider: - type: optional - docs: Company or method used to ship order - shippingTracking: - type: optional - docs: Tracking number for order shipment - shippingTrackingURL: - type: optional - docs: URL to track order shipment - content-type: application/json - response: - docs: Request was successful - type: root.Order - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - order_id: 5e8518516e147040726cc415 - request: {} - response: - body: - orderId: fc7-128 - status: refunded - comment: >- - Customer requested gift wrapping and a personalized note saying: - Happy Birthday, Ford! 🎉 Please ensure the item is packed with - extra bubble wrap for safe transit. - orderComment: >- - Please gift wrap with a personal note saying "Happy Birthday, - Ford! 🎉 - acceptedOn: '2024-03-29T21:29:21Z' - fulfilledOn: '2024-03-29T21:29:21Z' - refundedOn: '2024-04-08T18:25:04Z' - disputedOn: '2024-03-29T21:29:21Z' - disputeUpdatedOn: '2024-03-29T21:29:21Z' - disputeLastStatus: charge_refunded - customerPaid: - unit: USD - value: '5892' - string: ' 118.73 USD' - netAmount: - unit: USD - value: '5892' - string: ' 112.62 USD' - applicationFee: - unit: USD - value: '5892' - string: ' 2.37 USD' - allAddresses: - - type: billing - japanType: kana - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - - type: shipping - japanType: kana - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingAddress: - type: shipping - japanType: kanji - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - billingAddress: - type: billing - japanType: kana - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingProvider: Shipping Company, Co. - shippingTracking: tr00000000001 - shippingTrackingURL: https://www.shippingcompany.com/tracking/tr00000000001 - customerInfo: - fullName: Arthur Dent - email: arthur.dent@example.com - purchasedItems: - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 55.61 USD' - productId: 66072fb61b89448912e26791 - productName: Luxurious Fresh Ball - productSlug: luxurious-fresh-ball - variantId: 66072fb71b89448912e2683f - variantName: 'Luxurious Fresh Ball Generic: Bronze, Practical: Plastic' - variantSlug: luxurious-fresh-ball-generic-bronze-practical-plastic - variantSKU: luxurious-fresh-ball-generic-bronze-practical-plastic - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 55.61 USD' - weight: 11 - width: 82 - height: 70 - length: 9 - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 53.44 USD' - productId: 66072fb61b89448912e26799 - productName: Recycled Steel Gloves - productSlug: recycled-steel-gloves - variantId: 66072fb91b89448912e26ab9 - variantName: 'Recycled Steel Gloves Electronic: Granite, Handcrafted: grey' - variantSlug: recycled-steel-gloves-electronic-granite-handcrafted-grey - variantSKU: recycled-steel-gloves-electronic-granite-handcrafted-grey - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2671e_image2.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 53.44 USD' - weight: 38 - width: 76 - height: 85 - length: 40 - purchasedItemsCount: 2 - stripeDetails: - paymentMethod: pm_1OzmzBJYFi4lcbXWHKNdXU7j - paymentIntentId: pi_3OzmzDJYFi4lcbXW1hTBW6ft - customerId: cus_PpRsNHwWdUoRKR - chargeId: ch_3OzmzDJYFi4lcbXW1ndkkrH2 - refundId: re_3OzmzDJYFi4lcbXW1kFAmlBk - refundReason: fraudulent - stripeCard: - last4: '4242' - brand: Visa - ownerName: Arthur Dent - expires: - year: 2024 - month: 4 - customData: - - key: value - metadata: - isBuyNow: false - isCustomerDeleted: false - isShippingRequired: true - hasDownloads: false - paymentProcessor: stripe - totals: - subtotal: - unit: USD - value: '5892' - string: ' 109.05 USD' - extras: - - type: tax - name: State Taxes - description: NY Taxes (4.00%) - price: - unit: USD - value: '5892' - string: ' 4.36 USD' - - type: tax - name: City Taxes - description: NEW YORK Taxes (4.88%) - price: - unit: USD - value: '5892' - string: ' 5.32 USD' - - type: shipping - name: Flat - description: '' - price: - unit: USD - value: '5892' - string: ' 0.00 USD' - total: - unit: USD - value: '5892' - string: ' 118.73 USD' - downloadFiles: - - id: 5e9a5eba75e0ac242e1b6f64 - name: New product guide - url: >- - https://webflow.com/dashboard/download-digital-product?payload=5d93ba5e38c6b0160ab711d3;e7634a;5eb1aac72912ec06f561278c;5e9a5eba75e0ac242e1b6f63:ka2nehxy:4a1ee0a632feaab94294350087215ed89533f2f530903e3b933b638940e921aa - update-fulfill: - path: /sites/{site_id}/orders/{order_id}/fulfill - method: POST - auth: true - docs: | - Updates an order's status to fulfilled - - Required scope | `ecommerce:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - order_id: - type: string - docs: Unique identifier for an Order - display-name: Fulfill Order - request: - name: OrdersUpdateFulfillRequest - body: - properties: - sendOrderFulfilledEmail: - type: optional - docs: Whether or not the Order Fulfilled email should be sent - default: false - content-type: application/json - response: - docs: Request was successful - type: root.Order - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - order_id: 5e8518516e147040726cc415 - request: {} - response: - body: - orderId: fc7-128 - status: refunded - comment: >- - Customer requested gift wrapping and a personalized note saying: - Happy Birthday, Ford! 🎉 Please ensure the item is packed with - extra bubble wrap for safe transit. - orderComment: >- - Please gift wrap with a personal note saying "Happy Birthday, - Ford! 🎉 - acceptedOn: '2024-03-29T21:29:21Z' - fulfilledOn: '2024-03-29T21:29:21Z' - refundedOn: '2024-04-08T18:25:04Z' - disputedOn: '2024-03-29T21:29:21Z' - disputeUpdatedOn: '2024-03-29T21:29:21Z' - disputeLastStatus: charge_refunded - customerPaid: - unit: USD - value: '5892' - string: ' 118.73 USD' - netAmount: - unit: USD - value: '5892' - string: ' 112.62 USD' - applicationFee: - unit: USD - value: '5892' - string: ' 2.37 USD' - allAddresses: - - type: billing - japanType: kana - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - - type: shipping - japanType: kana - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingAddress: - type: shipping - japanType: kanji - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - billingAddress: - type: billing - japanType: kana - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingProvider: Shipping Company, Co. - shippingTracking: tr00000000001 - shippingTrackingURL: https://www.shippingcompany.com/tracking/tr00000000001 - customerInfo: - fullName: Arthur Dent - email: arthur.dent@example.com - purchasedItems: - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 55.61 USD' - productId: 66072fb61b89448912e26791 - productName: Luxurious Fresh Ball - productSlug: luxurious-fresh-ball - variantId: 66072fb71b89448912e2683f - variantName: 'Luxurious Fresh Ball Generic: Bronze, Practical: Plastic' - variantSlug: luxurious-fresh-ball-generic-bronze-practical-plastic - variantSKU: luxurious-fresh-ball-generic-bronze-practical-plastic - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 55.61 USD' - weight: 11 - width: 82 - height: 70 - length: 9 - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 53.44 USD' - productId: 66072fb61b89448912e26799 - productName: Recycled Steel Gloves - productSlug: recycled-steel-gloves - variantId: 66072fb91b89448912e26ab9 - variantName: 'Recycled Steel Gloves Electronic: Granite, Handcrafted: grey' - variantSlug: recycled-steel-gloves-electronic-granite-handcrafted-grey - variantSKU: recycled-steel-gloves-electronic-granite-handcrafted-grey - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2671e_image2.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 53.44 USD' - weight: 38 - width: 76 - height: 85 - length: 40 - purchasedItemsCount: 2 - stripeDetails: - paymentMethod: pm_1OzmzBJYFi4lcbXWHKNdXU7j - paymentIntentId: pi_3OzmzDJYFi4lcbXW1hTBW6ft - customerId: cus_PpRsNHwWdUoRKR - chargeId: ch_3OzmzDJYFi4lcbXW1ndkkrH2 - refundId: re_3OzmzDJYFi4lcbXW1kFAmlBk - refundReason: fraudulent - stripeCard: - last4: '4242' - brand: Visa - ownerName: Arthur Dent - expires: - year: 2024 - month: 4 - customData: - - key: value - metadata: - isBuyNow: false - isCustomerDeleted: false - isShippingRequired: true - hasDownloads: false - paymentProcessor: stripe - totals: - subtotal: - unit: USD - value: '5892' - string: ' 109.05 USD' - extras: - - type: tax - name: State Taxes - description: NY Taxes (4.00%) - price: - unit: USD - value: '5892' - string: ' 4.36 USD' - - type: tax - name: City Taxes - description: NEW YORK Taxes (4.88%) - price: - unit: USD - value: '5892' - string: ' 5.32 USD' - - type: shipping - name: Flat - description: '' - price: - unit: USD - value: '5892' - string: ' 0.00 USD' - total: - unit: USD - value: '5892' - string: ' 118.73 USD' - downloadFiles: - - id: 5e9a5eba75e0ac242e1b6f64 - name: New product guide - url: >- - https://webflow.com/dashboard/download-digital-product?payload=5d93ba5e38c6b0160ab711d3;e7634a;5eb1aac72912ec06f561278c;5e9a5eba75e0ac242e1b6f63:ka2nehxy:4a1ee0a632feaab94294350087215ed89533f2f530903e3b933b638940e921aa - update-unfulfill: - path: /sites/{site_id}/orders/{order_id}/unfulfill - method: POST - auth: true - docs: | - Updates an order's status to unfulfilled - - Required scope | `ecommerce:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - order_id: - type: string - docs: Unique identifier for an Order - display-name: Unfulfill Order - response: - docs: Request was successful - type: root.Order - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - order_id: 5e8518516e147040726cc415 - response: - body: - orderId: fc7-128 - status: refunded - comment: >- - Customer requested gift wrapping and a personalized note saying: - Happy Birthday, Ford! 🎉 Please ensure the item is packed with - extra bubble wrap for safe transit. - orderComment: >- - Please gift wrap with a personal note saying "Happy Birthday, - Ford! 🎉 - acceptedOn: '2024-03-29T21:29:21Z' - fulfilledOn: '2024-03-29T21:29:21Z' - refundedOn: '2024-04-08T18:25:04Z' - disputedOn: '2024-03-29T21:29:21Z' - disputeUpdatedOn: '2024-03-29T21:29:21Z' - disputeLastStatus: charge_refunded - customerPaid: - unit: USD - value: '5892' - string: ' 118.73 USD' - netAmount: - unit: USD - value: '5892' - string: ' 112.62 USD' - applicationFee: - unit: USD - value: '5892' - string: ' 2.37 USD' - allAddresses: - - type: billing - japanType: kana - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - - type: shipping - japanType: kana - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingAddress: - type: shipping - japanType: kanji - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - billingAddress: - type: billing - japanType: kana - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingProvider: Shipping Company, Co. - shippingTracking: tr00000000001 - shippingTrackingURL: https://www.shippingcompany.com/tracking/tr00000000001 - customerInfo: - fullName: Arthur Dent - email: arthur.dent@example.com - purchasedItems: - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 55.61 USD' - productId: 66072fb61b89448912e26791 - productName: Luxurious Fresh Ball - productSlug: luxurious-fresh-ball - variantId: 66072fb71b89448912e2683f - variantName: 'Luxurious Fresh Ball Generic: Bronze, Practical: Plastic' - variantSlug: luxurious-fresh-ball-generic-bronze-practical-plastic - variantSKU: luxurious-fresh-ball-generic-bronze-practical-plastic - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 55.61 USD' - weight: 11 - width: 82 - height: 70 - length: 9 - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 53.44 USD' - productId: 66072fb61b89448912e26799 - productName: Recycled Steel Gloves - productSlug: recycled-steel-gloves - variantId: 66072fb91b89448912e26ab9 - variantName: 'Recycled Steel Gloves Electronic: Granite, Handcrafted: grey' - variantSlug: recycled-steel-gloves-electronic-granite-handcrafted-grey - variantSKU: recycled-steel-gloves-electronic-granite-handcrafted-grey - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2671e_image2.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 53.44 USD' - weight: 38 - width: 76 - height: 85 - length: 40 - purchasedItemsCount: 2 - stripeDetails: - paymentMethod: pm_1OzmzBJYFi4lcbXWHKNdXU7j - paymentIntentId: pi_3OzmzDJYFi4lcbXW1hTBW6ft - customerId: cus_PpRsNHwWdUoRKR - chargeId: ch_3OzmzDJYFi4lcbXW1ndkkrH2 - refundId: re_3OzmzDJYFi4lcbXW1kFAmlBk - refundReason: fraudulent - stripeCard: - last4: '4242' - brand: Visa - ownerName: Arthur Dent - expires: - year: 2024 - month: 4 - customData: - - key: value - metadata: - isBuyNow: false - isCustomerDeleted: false - isShippingRequired: true - hasDownloads: false - paymentProcessor: stripe - totals: - subtotal: - unit: USD - value: '5892' - string: ' 109.05 USD' - extras: - - type: tax - name: State Taxes - description: NY Taxes (4.00%) - price: - unit: USD - value: '5892' - string: ' 4.36 USD' - - type: tax - name: City Taxes - description: NEW YORK Taxes (4.88%) - price: - unit: USD - value: '5892' - string: ' 5.32 USD' - - type: shipping - name: Flat - description: '' - price: - unit: USD - value: '5892' - string: ' 0.00 USD' - total: - unit: USD - value: '5892' - string: ' 118.73 USD' - downloadFiles: - - id: 5e9a5eba75e0ac242e1b6f64 - name: New product guide - url: >- - https://webflow.com/dashboard/download-digital-product?payload=5d93ba5e38c6b0160ab711d3;e7634a;5eb1aac72912ec06f561278c;5e9a5eba75e0ac242e1b6f63:ka2nehxy:4a1ee0a632feaab94294350087215ed89533f2f530903e3b933b638940e921aa - refund: - path: /sites/{site_id}/orders/{order_id}/refund - method: POST - auth: true - docs: | - 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` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - order_id: - type: string - docs: Unique identifier for an Order - display-name: Refund Order - request: - name: OrdersRefundRequest - body: - properties: - reason: - type: optional - docs: The reason for the refund - content-type: application/json - response: - docs: Request was successful - type: root.Order - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - order_id: 5e8518516e147040726cc415 - request: {} - response: - body: - orderId: fc7-128 - status: refunded - comment: >- - Customer requested gift wrapping and a personalized note saying: - Happy Birthday, Ford! 🎉 Please ensure the item is packed with - extra bubble wrap for safe transit. - orderComment: >- - Please gift wrap with a personal note saying "Happy Birthday, - Ford! 🎉 - acceptedOn: '2024-03-29T21:29:21Z' - fulfilledOn: '2024-03-29T21:29:21Z' - refundedOn: '2024-04-08T18:25:04Z' - disputedOn: '2024-03-29T21:29:21Z' - disputeUpdatedOn: '2024-03-29T21:29:21Z' - disputeLastStatus: charge_refunded - customerPaid: - unit: USD - value: '5892' - string: ' 118.73 USD' - netAmount: - unit: USD - value: '5892' - string: ' 112.62 USD' - applicationFee: - unit: USD - value: '5892' - string: ' 2.37 USD' - allAddresses: - - type: billing - japanType: kana - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - - type: shipping - japanType: kana - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingAddress: - type: shipping - japanType: kanji - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - billingAddress: - type: billing - japanType: kana - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingProvider: Shipping Company, Co. - shippingTracking: tr00000000001 - shippingTrackingURL: https://www.shippingcompany.com/tracking/tr00000000001 - customerInfo: - fullName: Arthur Dent - email: arthur.dent@example.com - purchasedItems: - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 55.61 USD' - productId: 66072fb61b89448912e26791 - productName: Luxurious Fresh Ball - productSlug: luxurious-fresh-ball - variantId: 66072fb71b89448912e2683f - variantName: 'Luxurious Fresh Ball Generic: Bronze, Practical: Plastic' - variantSlug: luxurious-fresh-ball-generic-bronze-practical-plastic - variantSKU: luxurious-fresh-ball-generic-bronze-practical-plastic - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 55.61 USD' - weight: 11 - width: 82 - height: 70 - length: 9 - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 53.44 USD' - productId: 66072fb61b89448912e26799 - productName: Recycled Steel Gloves - productSlug: recycled-steel-gloves - variantId: 66072fb91b89448912e26ab9 - variantName: 'Recycled Steel Gloves Electronic: Granite, Handcrafted: grey' - variantSlug: recycled-steel-gloves-electronic-granite-handcrafted-grey - variantSKU: recycled-steel-gloves-electronic-granite-handcrafted-grey - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2671e_image2.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 53.44 USD' - weight: 38 - width: 76 - height: 85 - length: 40 - purchasedItemsCount: 2 - stripeDetails: - paymentMethod: pm_1OzmzBJYFi4lcbXWHKNdXU7j - paymentIntentId: pi_3OzmzDJYFi4lcbXW1hTBW6ft - customerId: cus_PpRsNHwWdUoRKR - chargeId: ch_3OzmzDJYFi4lcbXW1ndkkrH2 - refundId: re_3OzmzDJYFi4lcbXW1kFAmlBk - refundReason: fraudulent - stripeCard: - last4: '4242' - brand: Visa - ownerName: Arthur Dent - expires: - year: 2024 - month: 4 - customData: - - key: value - metadata: - isBuyNow: false - isCustomerDeleted: false - isShippingRequired: true - hasDownloads: false - paymentProcessor: stripe - totals: - subtotal: - unit: USD - value: '5892' - string: ' 109.05 USD' - extras: - - type: tax - name: State Taxes - description: NY Taxes (4.00%) - price: - unit: USD - value: '5892' - string: ' 4.36 USD' - - type: tax - name: City Taxes - description: NEW YORK Taxes (4.88%) - price: - unit: USD - value: '5892' - string: ' 5.32 USD' - - type: shipping - name: Flat - description: '' - price: - unit: USD - value: '5892' - string: ' 0.00 USD' - total: - unit: USD - value: '5892' - string: ' 118.73 USD' - downloadFiles: - - id: 5e9a5eba75e0ac242e1b6f64 - name: New product guide - url: >- - https://webflow.com/dashboard/download-digital-product?payload=5d93ba5e38c6b0160ab711d3;e7634a;5eb1aac72912ec06f561278c;5e9a5eba75e0ac242e1b6f63:ka2nehxy:4a1ee0a632feaab94294350087215ed89533f2f530903e3b933b638940e921aa - source: - openapi: ../../../openapi/referenced-specs/v2.yml - display-name: Orders -docs: Orders are the orders for your Webflow site. -webhooks: - ecomm_new_order: - audiences: [] - method: POST - display-name: New eComm Order - headers: {} - payload: root.NewOrder - examples: - - payload: - triggerType: ecomm_new_order - payload: - orderId: fc7-128 - status: unfulfilled - comment: >- - Customer requested gift wrapping and a personalized note saying: - Happy Birthday, Ford! 🎉 Please ensure the item is packed with - extra bubble wrap for safe transit. - orderComment: >- - Please gift wrap with a personal note saying "Happy Birthday, - Ford! 🎉 - acceptedOn: '2024-03-29T21:29:21Z' - customerPaid: - unit: USD - value: '5892' - string: ' 118.73 USD' - netAmount: - unit: USD - value: '5892' - string: ' 112.62 USD' - applicationFee: - unit: USD - value: '5892' - string: ' 2.37 USD' - allAddresses: - - type: billing - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - - type: shipping - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingAddress: - type: shipping - japanType: kanji - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - billingAddress: - type: billing - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingProvider: Shipping Company, Co. - shippingTracking: tr00000000001 - shippingTrackingURL: https://www.shippingcompany.com/tracking/tr00000000001 - customerInfo: - fullName: Arthur Dent - email: arthur.dent@example.com - purchasedItems: - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 55.61 USD' - productId: 66072fb61b89448912e26791 - productName: Luxurious Fresh Ball - productSlug: luxurious-fresh-ball - variantId: 66072fb71b89448912e2683f - variantName: 'Luxurious Fresh Ball Generic: Bronze, Practical: Plastic' - variantSlug: luxurious-fresh-ball-generic-bronze-practical-plastic - variantSKU: luxurious-fresh-ball-generic-bronze-practical-plastic - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 55.61 USD' - weight: 11 - width: 82 - height: 70 - length: 9 - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 53.44 USD' - productId: 66072fb61b89448912e26799 - productName: Recycled Steel Gloves - productSlug: recycled-steel-gloves - variantId: 66072fb91b89448912e26ab9 - variantName: 'Recycled Steel Gloves Electronic: Granite, Handcrafted: grey' - variantSlug: recycled-steel-gloves-electronic-granite-handcrafted-grey - variantSKU: recycled-steel-gloves-electronic-granite-handcrafted-grey - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2671e_image2.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 53.44 USD' - weight: 38 - width: 76 - height: 85 - length: 40 - purchasedItemsCount: 2 - stripeDetails: - paymentMethod: pm_1OzmzBJYFi4lcbXWHKNdXU7j - paymentIntentId: pi_3OzmzDJYFi4lcbXW1hTBW6ft - customerId: cus_PpRsNHwWdUoRKR - chargeId: ch_3OzmzDJYFi4lcbXW1ndkkrH2 - refundId: re_3OzmzDJYFi4lcbXW1kFAmlBk - refundReason: fraudulent - stripeCard: - last4: '4242' - brand: Visa - ownerName: Arthur Dent - expires: - year: 2024 - month: 4 - customData: - - key: value - metadata: - isBuyNow: false - isCustomerDeleted: false - isShippingRequired: true - hasDownloads: false - paymentProcessor: stripe - totals: - subtotal: - unit: USD - value: '5892' - string: ' 109.05 USD' - extras: - - type: tax - name: State Taxes - description: NY Taxes (4.00%) - price: - unit: USD - value: '5892' - string: ' 4.36 USD' - - type: tax - name: City Taxes - description: NEW YORK Taxes (4.88%) - price: - unit: USD - value: '5892' - string: ' 5.32 USD' - - type: shipping - name: Flat - description: '' - price: - unit: USD - value: '5892' - string: ' 0.00 USD' - total: - unit: USD - value: '5892' - string: ' 118.73 USD' - downloadFiles: - - id: 5e9a5eba75e0ac242e1b6f64 - name: New product guide - url: >- - https://webflow.com/dashboard/download-digital-product?payload=5d93ba5e38c6b0160ab711d3;e7634a;5eb1aac72912ec06f561278c;5e9a5eba75e0ac242e1b6f63:ka2nehxy:4a1ee0a632feaab94294350087215ed89533f2f530903e3b933b638940e921aa - docs: Information about a new ecommerce order - ecomm_order_changed: - audiences: [] - method: POST - display-name: Updated eComm Order - headers: {} - payload: root.UpdatedOrder - examples: - - payload: - triggerType: ecomm_order_changed - payload: - orderId: fc7-128 - status: refunded - comment: >- - Customer requested gift wrapping and a personalized note saying: - Happy Birthday, Ford! 🎉 Please ensure the item is packed with - extra bubble wrap for safe transit. - orderComment: >- - Please gift wrap with a personal note saying "Happy Birthday, - Ford! 🎉 - acceptedOn: '2024-03-29T21:29:21Z' - fulfilledOn: '2024-03-29T21:29:21Z' - refundedOn: '2024-04-08T18:25:04Z' - disputedOn: '2024-03-29T21:29:21Z' - disputeUpdatedOn: '2024-03-29T21:29:21Z' - disputeLastStatus: charge_refunded - customerPaid: - unit: USD - value: '5892' - string: ' 118.73 USD' - netAmount: - unit: USD - value: '5892' - string: ' 112.62 USD' - applicationFee: - unit: USD - value: '5892' - string: ' 2.37 USD' - allAddresses: - - type: billing - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - - type: shipping - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingAddress: - type: shipping - japanType: kanji - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - billingAddress: - type: billing - addressee: Arthur Dent - line1: 20 W 34th St - line2: Empire State Building - city: New York - state: New York - country: US - postalCode: '10118' - shippingProvider: Shipping Company, Co. - shippingTracking: tr00000000001 - shippingTrackingURL: https://www.shippingcompany.com/tracking/tr00000000001 - customerInfo: - fullName: Arthur Dent - email: arthur.dent@example.com - purchasedItems: - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 55.61 USD' - productId: 66072fb61b89448912e26791 - productName: Luxurious Fresh Ball - productSlug: luxurious-fresh-ball - variantId: 66072fb71b89448912e2683f - variantName: 'Luxurious Fresh Ball Generic: Bronze, Practical: Plastic' - variantSlug: luxurious-fresh-ball-generic-bronze-practical-plastic - variantSKU: luxurious-fresh-ball-generic-bronze-practical-plastic - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 55.61 USD' - weight: 11 - width: 82 - height: 70 - length: 9 - - count: 1 - rowTotal: - unit: USD - value: '5892' - string: ' 53.44 USD' - productId: 66072fb61b89448912e26799 - productName: Recycled Steel Gloves - productSlug: recycled-steel-gloves - variantId: 66072fb91b89448912e26ab9 - variantName: 'Recycled Steel Gloves Electronic: Granite, Handcrafted: grey' - variantSlug: recycled-steel-gloves-electronic-granite-handcrafted-grey - variantSKU: recycled-steel-gloves-electronic-granite-handcrafted-grey - variantImage: - url: >- - https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2671e_image2.jpeg - variantPrice: - unit: USD - value: '5892' - string: ' 53.44 USD' - weight: 38 - width: 76 - height: 85 - length: 40 - purchasedItemsCount: 2 - stripeDetails: - paymentMethod: pm_1OzmzBJYFi4lcbXWHKNdXU7j - paymentIntentId: pi_3OzmzDJYFi4lcbXW1hTBW6ft - customerId: cus_PpRsNHwWdUoRKR - chargeId: ch_3OzmzDJYFi4lcbXW1ndkkrH2 - refundId: re_3OzmzDJYFi4lcbXW1kFAmlBk - refundReason: fraudulent - stripeCard: - last4: '4242' - brand: Visa - ownerName: Arthur Dent - expires: - year: 2024 - month: 4 - customData: - - key: value - metadata: - isBuyNow: false - isCustomerDeleted: false - isShippingRequired: true - hasDownloads: false - paymentProcessor: stripe - totals: - subtotal: - unit: USD - value: '5892' - string: ' 109.05 USD' - extras: - - type: tax - name: State Taxes - description: NY Taxes (4.00%) - price: - unit: USD - value: '5892' - string: ' 4.36 USD' - - type: tax - name: City Taxes - description: NEW YORK Taxes (4.88%) - price: - unit: USD - value: '5892' - string: ' 5.32 USD' - - type: shipping - name: Flat - description: '' - price: - unit: USD - value: '5892' - string: ' 0.00 USD' - total: - unit: USD - value: '5892' - string: ' 118.73 USD' - downloadFiles: - - id: 5e9a5eba75e0ac242e1b6f64 - name: New product guide - url: >- - https://webflow.com/dashboard/download-digital-product?payload=5d93ba5e38c6b0160ab711d3;e7634a;5eb1aac72912ec06f561278c;5e9a5eba75e0ac242e1b6f63:ka2nehxy:4a1ee0a632feaab94294350087215ed89533f2f530903e3b933b638940e921aa - docs: Information about an updated ecommerce order diff --git a/.mock/definition/pages.yml b/.mock/definition/pages.yml deleted file mode 100644 index 4f46a952..00000000 --- a/.mock/definition/pages.yml +++ /dev/null @@ -1,581 +0,0 @@ -imports: - root: __package__.yml -service: - auth: false - base-path: '' - endpoints: - list: - path: /sites/{site_id}/pages - method: GET - auth: true - docs: | - List of all pages for a site. - - Required scope | `pages:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: List Pages - request: - name: PagesListRequest - query-parameters: - localeId: - type: optional - docs: >- - Unique identifier for a specific locale. Applicable, when using - localization. - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - response: - docs: Request was successful - type: root.PageList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - query-parameters: - localeId: 65427cf400e02b306eaa04a0 - response: - body: - pages: - - 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: false - isBranch: true - branchId: 68026fa68ef6dc744c75b833 - 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 - - id: 6596da6045e56dee495bcbad - siteId: 6258612d1ee792848f805dcf - title: Towel Day Celebrations - slug: towel-day - createdOn: '2024-05-25T09:00:00Z' - lastUpdated: '2024-05-25T09:42:00Z' - archived: false - draft: false - canBranch: true - isBranch: false - seo: - title: Celebrate Towel Day - The Hitchhiker's Guide to the Galaxy - description: >- - A guide to celebrating Towel Day, in honor of the most - massively useful thing an interstellar hitchhiker can - have. - openGraph: - title: Towel Day - Don't Panic - titleCopied: false - description: >- - Join the galaxy in celebrating Towel Day, the day - dedicated to carrying towels everywhere in memory of - Douglas Adams. - descriptionCopied: false - localeId: 653fd9af6a07fc9cfd7a5e57 - publishedPath: /en-us/towel-day - pagination: - limit: 20 - offset: 0 - total: 2 - get-metadata: - path: /pages/{page_id} - method: GET - auth: true - docs: | - Get metadata information for a single page. - - Required scope | `pages:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - page_id: - type: string - docs: Unique identifier for a Page - display-name: Get Page Metadata - request: - name: PagesGetMetadataRequest - query-parameters: - localeId: - type: optional - docs: >- - Unique identifier for a specific locale. Applicable, when using - localization. - response: - docs: Request was successful - type: root.Page - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - page_id: 63c720f9347c2139b248e552 - query-parameters: - localeId: 65427cf400e02b306eaa04a0 - response: - 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: false - isBranch: true - branchId: 68026fa68ef6dc744c75b833 - 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 - update-page-settings: - path: /pages/{page_id} - method: PUT - auth: true - docs: | - Update Page-level metadata, including SEO and Open Graph fields. - - - Note: When updating Page Metadata in secondary locales, you may only add `slug` to the request if your Site has the [Advanced or Enterprise Localization](https://webflow.com/localization) add-on. - - - Required scope | `pages:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - page_id: - type: string - docs: Unique identifier for a Page - display-name: Update Page Metadata - request: - name: PageMetadataWrite - query-parameters: - localeId: - type: optional - docs: >- - Unique identifier for a specific locale. Applicable, when using - localization. - body: - properties: - title: - type: optional - docs: Title for the page - slug: - type: optional - docs: Slug for the page - seo: - type: optional - docs: SEO-related fields for the Page - openGraph: - type: optional - docs: Open Graph fields for the Page - content-type: application/json - response: - docs: Request was successful - type: root.Page - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - page_id: 63c720f9347c2139b248e552 - query-parameters: - localeId: 65427cf400e02b306eaa04a0 - request: - title: Guide to the Galaxy - slug: guide-to-the-galaxy - 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 - response: - 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: false - isBranch: true - branchId: 68026fa68ef6dc744c75b833 - 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 - get-content: - path: /pages/{page_id}/dom - method: GET - auth: true - docs: > - Get content from a static page. This includes text nodes, image nodes, - select nodes, text input nodes, submit button nodes, and component - instances with [property - overrides](https://help.webflow.com/hc/en-us/articles/33961219350547-Component-properties#how-to-modify-property-values-on-component-instances). - - - To retrieve the static content of a component instance, use the [Get - Component - Content](/data/reference/pages-and-components/components/get-content) - endpoint. - - - If you do not include a `localeId` in your request, the response - will return any content that can be localized from the Primary - locale. - - - Required scope | `pages:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - page_id: - type: string - docs: Unique identifier for a Page - display-name: Get Page Content - request: - name: PagesGetContentRequest - query-parameters: - localeId: - type: optional - docs: >- - Unique identifier for a specific locale. Applicable, when using - localization. - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - response: - docs: Request was successful - type: root.Dom - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - page_id: 63c720f9347c2139b248e552 - query-parameters: - localeId: 65427cf400e02b306eaa04a0 - response: - body: - pageId: 658205daa3e8206a523b5ad4 - branchId: 68026fa68ef6dc744c75b833 - nodes: - - id: id - text: {} - attributes: - key: value - type: text - - id: id - text: {} - attributes: - key: value - type: text - - id: id - image: {} - attributes: - key: value - type: image - - id: id - choices: - - value: value - text: text - attributes: - key: value - type: select - - id: id - placeholder: placeholder - attributes: - key: value - type: text-input - - id: id - text: {} - attributes: - key: value - type: text - - id: id - componentId: componentId - propertyOverrides: - - propertyId: 7dd14c08-2e96-8d3d-2b19-b5c03642a0f0 - type: component-instance - pagination: - limit: 4 - offset: 0 - total: 4 - lastUpdated: '2016-10-24T19:42:38Z' - update-static-content: - path: /pages/{page_id}/dom - method: POST - auth: true - docs: > - This endpoint updates content on a static page in **secondary locales**. - It supports updating up to 1000 nodes in a single request. - - - Before making updates: - - 1. Use the [get page - content](/data/reference/pages-and-components/pages/get-content) - endpoint to identify available content nodes and their types - - 2. If the page has component instances, retrieve the component's - properties that you'll override using the [get component - properties](/data/reference/pages-and-components/components/get-properties) - endpoint - - - - This endpoint is specifically for localized pages. Ensure that the specified `localeId` is a valid **secondary locale** for the site otherwise the request will fail. - - - - Required scope | `pages:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - page_id: - type: string - docs: Unique identifier for a Page - display-name: Update Page Content - request: - name: PageDomWrite - query-parameters: - localeId: - type: string - docs: The locale identifier. - body: - properties: - nodes: - docs: >- - List of DOM Nodes with the new content that will be updated in - each node. - type: list - content-type: application/json - response: - docs: Request was successful - type: UpdateStaticContentResponse - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - page_id: 63c720f9347c2139b248e552 - query-parameters: - localeId: localeId - request: - nodes: - - nodeId: a245c12d-995b-55ee-5ec7-aa36a6cad623 - text:

The Hitchhiker's Guide to the Galaxy

- - nodeId: a245c12d-995b-55ee-5ec7-aa36a6cad627 - text: >- -

Don't Panic!

Always know where your towel - is.

- - nodeId: a245c12d-995b-55ee-5ec7-aa36a6cad635 - choices: - - value: choice-1 - text: First choice - - value: choice-2 - text: Second choice - - nodeId: a245c12d-995b-55ee-5ec7-aa36a6cad642 - placeholder: Enter something here... - - nodeId: a245c12d-995b-55ee-5ec7-aa36a6cad671 - value: Submit - waitingText: Submitting... - - nodeId: a245c12d-995b-55ee-5ec7-aa36a6cad629 - propertyOverrides: - - propertyId: 7dd14c08-2e96-8d3d-2b19-b5c03642a0f0 - text:

Time is an illusion

- - propertyId: 7dd14c08-2e96-8d3d-2b19-b5c03642a0f1 - text: Life, the Universe and Everything - response: - body: - errors: - - errors - source: - openapi: ../../../openapi/referenced-specs/v2.yml - display-name: Pages -docs: Pages are the pages in your Webflow site. -types: - PageMetadataWriteSeo: - docs: SEO-related fields for the Page - properties: - title: - type: optional - docs: The Page title shown in search engine results - description: - type: optional - docs: The Page description shown in search engine results - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - PageMetadataWriteOpenGraph: - docs: Open Graph fields for the Page - properties: - title: - type: optional - docs: The title supplied to Open Graph annotations - titleCopied: - type: optional - docs: Indicates the Open Graph title was copied from the SEO title - description: - type: optional - docs: The description supplied to Open Graph annotations - descriptionCopied: - type: optional - docs: >- - Indicates the Open Graph description was copied from the SEO - description - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - PageDomWriteNodesItem: - discriminated: false - union: - - type: root.Text Node - - type: root.Component Instance - - type: root.Select - - type: root.Text Input - - type: root.Submit Button - - type: root.Search Button - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - UpdateStaticContentResponse: - properties: - errors: - docs: A list of error messages, if any. - type: list - source: - openapi: ../../../openapi/referenced-specs/v2.yml -webhooks: - page_created: - audiences: [] - method: POST - display-name: Page Created - headers: {} - payload: root.PageCreatedWebhook - examples: - - payload: - triggerType: page_created - payload: - siteId: 65427cf400e02b306eaa049c - pageId: 66a3cfb276641574f5d58311 - pageTitle: Heart of Gold Specs - createdOn: '2024-07-26T16:32:50Z' - publishedPath: /blog/earth - docs: Information about a new pages - page_metadata_updated: - audiences: [] - method: POST - display-name: Page Metadata Updated - headers: {} - payload: root.PageMetadataUpdatedWebhook - examples: - - payload: - triggerType: page_metadata_updated - payload: - siteId: 65427cf400e02b306eaa049c - pageId: 66a3cfb276641574f5d58311 - pageTitle: Heart of Gold Specs - lastUpdated: '2024-07-26T16:32:50Z' - publishedPath: /blog/earth - docs: Information about a page's updated metadata and/or settings - page_deleted: - audiences: [] - method: POST - display-name: Page Deleted - headers: {} - payload: root.PageDeletedWebhook - examples: - - payload: - triggerType: page_deleted - payload: - siteId: 65427cf400e02b306eaa049c - pageId: 66a3cfb276641574f5d58311 - pageTitle: Heart of Gold Specs - deletedOn: '2024-07-26T16:32:50Z' - publishedPath: /blog/earth - docs: Information about a page that was deleted diff --git a/.mock/definition/pages/scripts.yml b/.mock/definition/pages/scripts.yml deleted file mode 100644 index 02420aaa..00000000 --- a/.mock/definition/pages/scripts.yml +++ /dev/null @@ -1,149 +0,0 @@ -imports: - root: ../__package__.yml -service: - auth: false - base-path: '' - endpoints: - get-custom-code: - path: /pages/{page_id}/custom_code - method: GET - auth: true - docs: | - Get all scripts applied to a page. - - Required scope | `custom_code:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - page_id: - type: string - docs: Unique identifier for a Page - display-name: Get Custom Code - response: - docs: Request was successful - type: root.ScriptApplyList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - page_id: 63c720f9347c2139b248e552 - response: - body: - scripts: - - id: id - location: header - version: version - attributes: - key: value - lastUpdated: lastUpdated - createdOn: createdOn - upsert-custom-code: - path: /pages/{page_id}/custom_code - method: PUT - auth: true - docs: > - Apply registered scripts to a page. If you have multiple scripts your - App needs to apply or maintain on a page, ensure they are always - included in the request body for this endpoint. To remove individual - scripts, simply call this endpoint without the script in the request - body. - - - - To apply a script to a page, the script must first be registered to a Site via the [Register Script](/data/reference/custom-code/custom-code/register-hosted) endpoints. Once registered, the script can be applied to a Site or Page using the appropriate endpoints. See the documentation on [working with Custom Code](/data/docs/custom-code) for more information. - - - - Required scope | `custom_code:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - page_id: - type: string - docs: Unique identifier for a Page - display-name: Add/Update Custom Code - request: - body: root.ScriptApplyList - content-type: application/json - response: - docs: Request was successful - type: root.ScriptApplyList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - page_id: 63c720f9347c2139b248e552 - request: - scripts: - - id: cms_slider - location: header - version: 1.0.0 - attributes: - my-attribute: some-value - - id: alert - location: header - version: 0.0.1 - response: - body: - scripts: - - id: cms_slider - location: header - version: 1.0.0 - attributes: - my-attribute: some-value - - id: alert - location: header - version: 0.0.1 - attributes: - key: value - lastUpdated: '2022-10-26T00:28:54.191Z' - createdOn: '2022-10-26T00:28:54.191Z' - delete-custom-code: - path: /pages/{page_id}/custom_code - method: DELETE - auth: true - docs: > - Remove all scripts from a page applied by the App. This endpoint will - not remove scripts from the site's registered scripts. - - - To remove individual scripts applied by the App, use the [Add/Update - Custom - Code](/data/reference/custom-code/custom-code-pages/upsert-custom-code) - endpoint. - - - Access to this endpoint requires a bearer token obtained from an - [OAuth Code Grant Flow](/data/reference/oauth-app). - - - Required scope | `custom_code:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - page_id: - type: string - docs: Unique identifier for a Page - display-name: Delete Custom Code - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - page_id: 63c720f9347c2139b248e552 - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/products.yml b/.mock/definition/products.yml deleted file mode 100644 index 459946a4..00000000 --- a/.mock/definition/products.yml +++ /dev/null @@ -1,627 +0,0 @@ -imports: - root: __package__.yml -service: - auth: false - base-path: '' - endpoints: - list: - path: /sites/{site_id}/products - method: GET - auth: true - docs: > - 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` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: List Products & SKUs - request: - name: ProductsListRequest - query-parameters: - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - response: - docs: Request was successful - type: root.ProductAndSkUsList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - items: - - product: - id: 660eb7a486d1d6e0412292d7 - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2024-04-04T14:24:19Z' - lastUpdated: '2024-04-04T14:30:19Z' - createdOn: '2024-04-04T14:22:28Z' - isArchived: false - isDraft: false - fieldData: - name: T-Shirt - slug: t-shirt - description: A plain cotton t-shirt. - shippable: true - sku-properties: - - id: Color - name: Color - enum: - - id: royal-blue - name: Royal Blue - slug: royal-blue - skus: - - id: 66072fb71b89448912e2681c - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2023-03-17T18:47:35Z' - lastUpdated: '2023-03-17T18:47:35Z' - createdOn: '2023-03-17T18:47:35Z' - fieldData: - sku-values: - color: blue - size: small - name: Colorful T-shirt - Default - slug: colorful-t-shirt-default - price: - value: 2499 - unit: USD - currency: USD - main-image: https://www.example.com/image.jpg - sku: '1234567890' - sku-properties: - - id: Color - name: Color - enum: - - id: royal-blue - name: Royal Blue - slug: royal-blue - pagination: - limit: 100 - offset: 0 - total: 100 - create: - path: /sites/{site_id}/products - method: POST - auth: true - docs: > - Create a new ecommerce product and defaultSKU. A product, at minimum, - must have a single SKU. - - - To create a product with multiple SKUs: - - First, create a list of `sku-properties`, also known as [product options](https://help.webflow.com/hc/en-us/articles/33961334531347-Create-product-options-and-variants). For example, a T-shirt product may have a "color" `sku-property`, with a list of enum values: red, yellow, and blue, another `sku-property` may be "size", with a list of enum values: small, medium, and large. - - Once, a product is created with a list of `sku-properties`, Webflow will create a **default SKU**, which is always a combination of the first `enum` values of each `sku-property`. (e.g. Small - Red - T-Shirt) - - After creation, you can create additional SKUs for the product, using the [Create SKUs endpoint.](/data/reference/ecommerce/products/create-sku) - - 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` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Create Product & SKU - request: - name: ProductSkuCreate - body: - properties: - publishStatus: optional - product: ProductSkuCreateProduct - sku: ProductSkuCreateSku - content-type: application/json - response: - docs: Request was successful - type: root.ProductAndSkUs - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: - publishStatus: staging - product: - fieldData: - name: Colorful T-shirt - slug: colorful-t-shirt - description: >- - Our best-selling t-shirt available in multiple colors and - sizes - sku-properties: - - id: color - name: Color - enum: - - id: red - name: Red - slug: red - - id: yellow - name: Yellow - slug: yellow - - id: blue - name: Blue - slug: blue - - id: size - name: Size - enum: - - id: small - name: Small - slug: small - - id: medium - name: Medium - slug: medium - - id: large - name: Large - slug: large - sku: - fieldData: - name: Colorful T-shirt - Red Small - slug: colorful-t-shirt-red-small - price: - value: 2499 - unit: USD - currency: USD - main-image: >- - https://rocketamp-sample-store.myshopify.com/cdn/shop/products/Gildan_2000_Antique_Cherry_Red_Front_1024x1024.jpg?v=1527232987 - response: - body: - product: - id: 660eb7a486d1d6e0412292d7 - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2024-04-04T14:24:19Z' - lastUpdated: '2024-04-04T14:30:19Z' - createdOn: '2024-04-04T14:22:28Z' - isArchived: false - isDraft: false - fieldData: - name: T-Shirt - slug: t-shirt - description: A plain cotton t-shirt. - shippable: true - sku-properties: - - id: Color - name: Color - enum: - - id: royal-blue - name: Royal Blue - slug: royal-blue - category: - - category - tax-category: standard-taxable - default-sku: default-sku - ec-product-type: ff42fee0113744f693a764e3431a9cc2 - skus: - - id: 66072fb71b89448912e2681c - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2023-03-17T18:47:35Z' - lastUpdated: '2023-03-17T18:47:35Z' - createdOn: '2023-03-17T18:47:35Z' - fieldData: - sku-values: - color: blue - size: small - name: Colorful T-shirt - Default - slug: colorful-t-shirt-default - price: - value: 2499 - unit: USD - currency: USD - main-image: https://www.example.com/image.jpg - sku: '1234567890' - sku-properties: - - id: Color - name: Color - enum: - - id: royal-blue - name: Royal Blue - slug: royal-blue - get: - path: /sites/{site_id}/products/{product_id} - method: GET - auth: true - docs: | - Retrieve a single product by its ID. All of its SKUs will also be - retrieved. - - Required scope | `ecommerce:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - product_id: - type: string - docs: Unique identifier for a Product - display-name: Get Product and SKUs - response: - docs: Request was successful - type: root.ProductAndSkUs - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - product_id: 580e63fc8c9a982ac9b8b745 - response: - body: - product: - id: 660eb7a486d1d6e0412292d7 - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2024-04-04T14:24:19Z' - lastUpdated: '2024-04-04T14:30:19Z' - createdOn: '2024-04-04T14:22:28Z' - isArchived: false - isDraft: false - fieldData: - name: T-Shirt - slug: t-shirt - description: A plain cotton t-shirt. - shippable: true - sku-properties: - - id: Color - name: Color - enum: - - id: royal-blue - name: Royal Blue - slug: royal-blue - category: - - category - tax-category: standard-taxable - default-sku: default-sku - ec-product-type: ff42fee0113744f693a764e3431a9cc2 - skus: - - id: 66072fb71b89448912e2681c - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2023-03-17T18:47:35Z' - lastUpdated: '2023-03-17T18:47:35Z' - createdOn: '2023-03-17T18:47:35Z' - fieldData: - sku-values: - color: blue - size: small - name: Colorful T-shirt - Default - slug: colorful-t-shirt-default - price: - value: 2499 - unit: USD - currency: USD - main-image: https://www.example.com/image.jpg - sku: '1234567890' - sku-properties: - - id: Color - name: Color - enum: - - id: royal-blue - name: Royal Blue - slug: royal-blue - update: - path: /sites/{site_id}/products/{product_id} - method: PATCH - auth: true - docs: > - 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` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - product_id: - type: string - docs: Unique identifier for a Product - display-name: Update Product - request: - name: ProductSkuUpdate - body: - properties: - publishStatus: optional - product: optional - sku: optional - content-type: application/json - response: - docs: Request was successful - type: root.Product - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - product_id: 580e63fc8c9a982ac9b8b745 - request: {} - response: - body: - id: 660eb7a486d1d6e0412292d7 - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2024-04-04T14:24:19Z' - lastUpdated: '2024-04-04T14:30:19Z' - createdOn: '2024-04-04T14:22:28Z' - isArchived: false - isDraft: false - fieldData: - name: T-Shirt - slug: t-shirt - description: A plain cotton t-shirt. - shippable: true - sku-properties: - - id: Color - name: Color - enum: - - id: royal-blue - name: Royal Blue - slug: royal-blue - category: - - category - tax-category: standard-taxable - default-sku: default-sku - ec-product-type: ff42fee0113744f693a764e3431a9cc2 - create-sku: - path: /sites/{site_id}/products/{product_id}/skus - method: POST - auth: true - docs: > - Create additional SKUs to manage every [option and variant of your - Product.](https://help.webflow.com/hc/en-us/articles/33961334531347-Create-product-options-and-variants) - - - 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` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - product_id: - type: string - docs: Unique identifier for a Product - display-name: Create SKUs - request: - name: ProductsCreateSkuRequest - body: - properties: - publishStatus: optional - skus: - docs: An array of the SKU data your are adding - type: list - content-type: application/json - response: - docs: Request was successful - type: ProductsCreateSkuResponse - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - product_id: 580e63fc8c9a982ac9b8b745 - request: - skus: - - id: 66072fb71b89448912e2681c - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2023-03-17T18:47:35Z' - lastUpdated: '2023-03-17T18:47:35Z' - createdOn: '2023-03-17T18:47:35Z' - fieldData: - name: Colorful T-shirt - Default - slug: colorful-t-shirt-default - price: - value: 2499 - unit: USD - currency: USD - response: - body: - skus: - - id: 66072fb71b89448912e2681c - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2023-03-17T18:47:35Z' - lastUpdated: '2023-03-17T18:47:35Z' - createdOn: '2023-03-17T18:47:35Z' - fieldData: - sku-values: - color: blue - size: small - name: Colorful T-shirt - Default - slug: colorful-t-shirt-default - price: - value: 2499 - unit: USD - currency: USD - main-image: https://www.example.com/image.jpg - sku: '1234567890' - sku-properties: - - id: Color - name: Color - enum: - - id: royal-blue - name: Royal Blue - slug: royal-blue - update-sku: - path: /sites/{site_id}/products/{product_id}/skus/{sku_id} - method: PATCH - auth: true - docs: > - 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` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - product_id: - type: string - docs: Unique identifier for a Product - sku_id: - type: string - docs: Unique identifier for a SKU - display-name: Update SKU - request: - name: ProductsUpdateSkuRequest - body: - properties: - publishStatus: optional - sku: root.Sku - content-type: application/json - response: - docs: Request was successful - type: root.Sku - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - product_id: 580e63fc8c9a982ac9b8b745 - sku_id: 5e8518516e147040726cc415 - request: - sku: - id: 66072fb71b89448912e2681c - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2023-03-17T18:47:35Z' - lastUpdated: '2023-03-17T18:47:35Z' - createdOn: '2023-03-17T18:47:35Z' - fieldData: - name: Colorful T-shirt - Default - slug: colorful-t-shirt-default - price: - value: 2499 - unit: USD - currency: USD - response: - body: - id: 66072fb71b89448912e2681c - cmsLocaleId: 653ad57de882f528b32e810e - lastPublished: '2023-03-17T18:47:35Z' - lastUpdated: '2023-03-17T18:47:35Z' - createdOn: '2023-03-17T18:47:35Z' - fieldData: - sku-values: - color: blue - size: small - name: Colorful T-shirt - Default - slug: colorful-t-shirt-default - price: - value: 2499 - unit: USD - currency: USD - compare-at-price: - value: 100 - unit: USD - ec-sku-billing-method: one-time - ec-sku-subscription-plan: - interval: day - frequency: 1 - trial: 7 - plans: - - {} - main-image: https://www.example.com/image.jpg - sku: '1234567890' - sku-properties: - - id: Color - name: Color - enum: - - id: royal-blue - name: Royal Blue - slug: royal-blue - source: - openapi: ../../../openapi/referenced-specs/v2.yml -types: - ProductSkuCreateProduct: - properties: - fieldData: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - ProductSkuCreateSku: - properties: - fieldData: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - ProductsCreateSkuResponse: - properties: - skus: list - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/scripts.yml b/.mock/definition/scripts.yml deleted file mode 100644 index a2a7b4b3..00000000 --- a/.mock/definition/scripts.yml +++ /dev/null @@ -1,226 +0,0 @@ -imports: - root: __package__.yml -service: - auth: false - base-path: '' - endpoints: - list: - path: /sites/{site_id}/registered_scripts - method: GET - auth: true - docs: > - Get a list of scripts that have been registered to a site. A site can - have a maximum of 800 registered scripts. - - - - To apply a script to a site or page, the script must first be registered to a site via the [Register Script](/data/reference/custom-code/custom-code/register-hosted) endpoints. Once registered, the script can be applied to a Site or Page using the appropriate endpoints. See the documentation on [working with Custom Code](/data/docs/custom-code) for more information. - - - - Required scope | `custom_code:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Get Registered Scripts - response: - docs: Request was successful - type: root.RegisteredScriptList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - registeredScripts: - - id: alert - canCopy: false - displayName: Alert - hostedLocation: https://cdn.webflow.io/.../alert-0.0.1.js - createdOn: '2022-10-26T00:28:54.191Z' - lastUpdated: lastUpdated - version: 0.0.1 - - id: alert - canCopy: false - displayName: Alert - hostedLocation: https://cdn.webflow.io/.../alert-0.0.2.js - createdOn: '2022-10-26T00:28:54.191Z' - lastUpdated: lastUpdated - version: 0.0.2 - - id: cms_slider - canCopy: true - displayName: CMS Slider - hostedLocation: https://cdn.jsdelivr.net/.../cms_slider.js - integrityHash: >- - sha384-J+YlJ8v0gpaRoKH7SbFbEmxOZlAxLiwNjfSsBhDooGa5roXlPPpXbEevck4J7YZ+ - createdOn: '2022-10-26T00:28:54.191Z' - lastUpdated: lastUpdated - version: 1.0.0 - pagination: - limit: 100 - offset: 0 - total: 3 - register-hosted: - path: /sites/{site_id}/registered_scripts/hosted - method: POST - auth: true - docs: | - Register a hosted script to a site. - - - To apply a script to a site or page, the script must first be registered to a site via the [Register Script](/data/reference/custom-code/custom-code/register-hosted) endpoints. Once registered, the script can be applied to a Site or Page using the appropriate endpoints. See the documentation on [working with Custom Code](/data/docs/custom-code) for more information. - - - Required scope | `custom_code:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Register Script - Hosted - request: - name: CustomCodeHostedRequest - body: - properties: - hostedLocation: - type: string - docs: URI for an externally hosted script location - integrityHash: - type: string - docs: Sub-Resource Integrity Hash - canCopy: - type: optional - docs: >- - Define whether the script can be copied on site duplication and - transfer - default: false - version: - type: string - docs: >- - A Semantic Version (SemVer) string, denoting the version of the - script - displayName: - type: string - docs: >- - User-facing name for the script. Must be between 1 and 50 - alphanumeric characters - content-type: application/json - response: - docs: Request was successful - type: root.CustomCodeHostedResponse - status-code: 201 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: - hostedLocation: hostedLocation - integrityHash: integrityHash - version: version - displayName: displayName - response: - body: - id: cms_slider - canCopy: true - displayName: CMS Slider - hostedLocation: https://cdn.jsdelivr.net/.../cmsslider.js - integrityHash: >- - sha384-J+YlJ8v0gpaRoKH7SbFbEmxOZlAxLiwNjfSsBhDooGa5roXlPPpXbEevck4J7YZ+ - createdOn: '2022-10-26T00:28:54.191Z' - lastUpdated: lastUpdated - version: 1.0.0 - register-inline: - path: /sites/{site_id}/registered_scripts/inline - method: POST - auth: true - docs: > - Register an inline script to a site. Inline scripts are limited to 2000 - characters. - - - - To apply a script to a site or page, the script must first be registered to a site via the [Register Script](/data/reference/custom-code/custom-code/register-hosted) endpoints. Once registered, the script can be applied to a Site or Page using the appropriate endpoints. See the documentation on [working with Custom Code](/data/docs/custom-code) for more information. - - - - Required scope | `custom_code:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Register Script - Inline - request: - name: CustomCodeInlineRequest - body: - properties: - sourceCode: - type: string - docs: The code to be added to the site (to be hosted by Webflow). - integrityHash: - type: optional - docs: >- - Sub-Resource Integrity Hash. Only required for externally hosted - scripts (passed via hostedLocation) - canCopy: - type: optional - docs: >- - Define whether the script can be copied on site duplication and - transfer - default: false - version: - type: string - docs: >- - A Semantic Version (SemVer) string, denoting the version of the - script - displayName: - type: string - docs: >- - User-facing name for the script. Must be between 1 and 50 - alphanumeric characters - content-type: application/json - response: - docs: Created - type: root.CustomCodeInlineResponse - status-code: 201 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: - sourceCode: alert('hello world'); - version: 0.0.1 - displayName: Alert - response: - body: - id: alert - canCopy: false - displayName: Alert - hostedLocation: >- - https://uploads-ssl.webflow.com/6258612d1ee792848f805dcf%2F64b6c769ff52ba6c3d904a91%2F660d6e15b3d1696f2d2b1447%2Falert-0.0.1.js - createdOn: '2022-10-26T00:28:54.191Z' - lastUpdated: lastUpdated - version: 0.0.1 - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/sites.yml b/.mock/definition/sites.yml deleted file mode 100644 index 69410ee2..00000000 --- a/.mock/definition/sites.yml +++ /dev/null @@ -1,519 +0,0 @@ -imports: - root: __package__.yml -service: - auth: false - base-path: '' - endpoints: - create: - path: /workspaces/{workspace_id}/sites - method: POST - auth: true - docs: > - Create a site. - - - This endpoint requires an Enterprise - workspace. - - - Required scope | `workspace:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - workspace_id: - type: string - docs: Unique identifier for a Workspace - display-name: Create Site - request: - name: SitesCreateRequest - body: - properties: - name: - type: string - docs: The name of the site - templateName: - type: optional - docs: The workspace or marketplace template to use - parentFolderId: - type: optional - docs: MegaDodo Publications - Potential Book Ideas - content-type: application/json - response: - docs: Request was successful - type: root.Site - status-code: 201 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - name: NewlyCreatedSite - path-parameters: - workspace_id: 580e63e98c9a982ac9b8b741 - request: - name: The Hitchhiker's Guide to the Galaxy - response: - body: - id: 670ecf86817e3cc7a510eb6a - workspaceId: 625860a7a6c16d624927122f - createdOn: '2024-10-15T20:24:38Z' - displayName: The Hitchiker's Guide - shortName: hitchikers-guide - lastUpdated: '2024-10-15T20:24:38Z' - parentFolderId: 670ece123598db72d9648be1 - customDomains: - - id: 589a331aa51e760df7ccb89d - url: test-api-domain.com - lastPublished: '2022-12-07T16:51:37Z' - dataCollectionEnabled: true - dataCollectionType: always - list: - path: /sites - method: GET - auth: true - docs: | - List of all sites the provided access token is able to access. - - Required scope | `sites:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - display-name: List Sites - response: - docs: Request was successful - type: root.Sites - status-code: 200 - errors: - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - examples: - - response: - body: - sites: - - id: 42e63e98c9a982ac9b8b741 - workspaceId: 42e63fc8c9a982ac9b8b744 - createdOn: '1979-10-12T12:00:00Z' - displayName: Heart of Gold Spaceship - shortName: heart-of-gold - lastPublished: '2023-04-02T12:42:00Z' - lastUpdated: '2016-10-24T19:43:17Z' - previewUrl: >- - https://dev-assets.website-files.com/42e63e98c9a982ac9b8b741/197910121200.png - timeZone: DeepSpace/InfiniteImprobability - parentFolderId: 1as2d3f4g5h6j7k8l9z0x1c2v3b4n5m6 - customDomains: - - id: 589a331aa51e760df7ccb89e - url: heartofgold.galaxy - lastPublished: '2022-12-07T16:51:37Z' - locales: - primary: - id: 653fd9af6a07fc9cfd7a5e57 - cmsLocaleId: 653ad57de882f528b32e810e - enabled: true - displayName: English - Heart of Gold Standard - redirect: false - subdirectory: /en - tag: The Ultimate Answer - secondary: - - id: 653fd9af6a07fc9cfd7a5e58 - cmsLocaleId: 653ad57de882f528b32e810g - enabled: true - displayName: Betelgeusian - Vogon Liaison - redirect: true - subdirectory: /bet - tag: Vogon - - id: 653fd9af6a07fc9cfd7a5e59 - cmsLocaleId: 653ad57de882f528b32e810h - enabled: false - displayName: Magrathean - Custom Planet Designs - redirect: true - subdirectory: /mg - tag: Magrathean - dataCollectionEnabled: true - dataCollectionType: always - - id: 42e63e98c9a982ac9b8b742 - workspaceId: 42e63fc8c9a982ac9b8b745 - createdOn: '1981-10-12T12:00:00Z' - displayName: Marvin's Personal Blog - shortName: paranoid-android - lastPublished: '2023-04-02T12:45:00Z' - lastUpdated: '2016-10-24T19:43:17Z' - previewUrl: >- - https://dev-assets.website-files.com/42e63e98c9a982ac9b8b742/198110121200.png - timeZone: DeepSpace/Depression - customDomains: - - id: 589a331aa51e760df7ccb89f - url: marvin.blog - lastPublished: '2022-12-07T16:51:37Z' - locales: - primary: - id: 653fd9af6a07fc9cfd7a5e57 - cmsLocaleId: 653ad57de882f528b32e810e - enabled: true - displayName: English - Marvin's Musings - redirect: false - subdirectory: /en - tag: English - secondary: - - id: 653fd9af6a07fc9cfd7a5e56 - cmsLocaleId: 653ad57de882f528b32e810f - enabled: true - displayName: Squornshellous - Mattress Speak - redirect: true - subdirectory: /sr - tag: Squornshellous - dataCollectionEnabled: true - dataCollectionType: always - - id: 42e63e98c9a982ac9b8b743 - workspaceId: 42e63fc8c9a982ac9b8b746 - createdOn: '1982-10-12T12:00:00Z' - displayName: Vogon Poetry Archive - shortName: vogon-poetry - lastPublished: '2023-04-02T12:50:00Z' - lastUpdated: '2016-10-24T19:43:17Z' - previewUrl: >- - https://dev-assets.website-files.com/42e63e98c9a982ac9b8b743/198210121200.png - timeZone: Vogsphere/PoetryHall - customDomains: - - id: 589a331aa51e760df7ccb8a0 - url: vogonpoetry.galaxy - lastPublished: '2022-12-07T16:51:37Z' - locales: - primary: - id: 653fd9af6a07fc9cfd7a5e55 - cmsLocaleId: 653ad57de882f528b32e810d - enabled: true - displayName: English - Vogon Verse - redirect: false - subdirectory: /en - tag: Third Worst Poetry - secondary: - - id: 653fd9af6a07fc9cfd7a5e54 - cmsLocaleId: 653ad57de882f528b32e810c - enabled: true - displayName: Galactic - Universal Language - redirect: true - subdirectory: /gl - tag: Pan-Galactic Gargle Blaster - dataCollectionEnabled: true - dataCollectionType: always - get: - path: /sites/{site_id} - method: GET - auth: true - docs: | - Get details of a site. - - Required scope | `sites:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Get Site - response: - docs: Request was successful - type: root.Site - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - id: 42e98c9a982ac9b8b742 - workspaceId: 42e63e98c9a982ac9b8b742 - createdOn: '1979-10-12T12:00:00Z' - displayName: The Hitchhiker's Guide to the Galaxy - shortName: hitchhikers-guide - lastPublished: '2023-04-02T12:42:00Z' - lastUpdated: '2023-04-02T12:42:00Z' - previewUrl: >- - https://screenshots.webflow.com/sites/6258612d1ee792848f805dcf/20231219211811_d5990556c743f33b7071300a03bf67e6.png - timeZone: Magrathea/FactoryFloor - parentFolderId: 1as2d3f4g5h6j7k8l9z0x1c2v3b4n5m6 - customDomains: - - id: 589a331aa51e760df7ccb89d - url: hitchhikersguide.galaxy - lastPublished: '2022-12-07T16:51:37Z' - - id: 589a331aa51e760df7ccb89e - url: heartofgold.spaceship - lastPublished: '2022-12-07T16:51:37Z' - locales: - primary: - id: 653fd9af6a07fc9cfd7a5e57 - cmsLocaleId: 653ad57de882f528b32e810e - enabled: false - displayName: English (United States) - displayImageId: displayImageId - redirect: true - subdirectory: '' - tag: en-US - secondary: - - id: 653fd9af6a07fc9cfd7a5e57 - cmsLocaleId: 653ad57de882f528b32e810e - enabled: false - displayName: English (United States) - redirect: true - subdirectory: '' - tag: en-US - dataCollectionEnabled: true - dataCollectionType: always - delete: - path: /sites/{site_id} - method: DELETE - auth: true - docs: > - Delete a site. - - - This endpoint requires an Enterprise - workspace. - - - Required scope | `sites:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Delete Site - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - update: - path: /sites/{site_id} - method: PATCH - auth: true - docs: > - Update a site. - - - This endpoint requires an Enterprise - workspace. - - - Required scope | `sites:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Update Site - request: - name: SitesUpdateRequest - body: - properties: - name: - type: optional - docs: The name of the site - parentFolderId: - type: optional - docs: The parent folder ID of the site - content-type: application/json - response: - docs: Request was successful - type: root.Site - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: {} - response: - body: - id: 42e98c9a982ac9b8b742 - workspaceId: 42e63e98c9a982ac9b8b742 - createdOn: '1979-10-12T12:00:00Z' - displayName: The Hitchhiker's Guide to the Galaxy - shortName: hitchhikers-guide - lastPublished: '2023-04-02T12:42:00Z' - lastUpdated: '2023-04-02T12:42:00Z' - previewUrl: >- - https://screenshots.webflow.com/sites/6258612d1ee792848f805dcf/20231219211811_d5990556c743f33b7071300a03bf67e6.png - timeZone: Magrathea/FactoryFloor - parentFolderId: 1as2d3f4g5h6j7k8l9z0x1c2v3b4n5m6 - customDomains: - - id: 589a331aa51e760df7ccb89d - url: hitchhikersguide.galaxy - lastPublished: '2022-12-07T16:51:37Z' - - id: 589a331aa51e760df7ccb89e - url: heartofgold.spaceship - lastPublished: '2022-12-07T16:51:37Z' - locales: - primary: - id: 653fd9af6a07fc9cfd7a5e57 - cmsLocaleId: 653ad57de882f528b32e810e - enabled: false - displayName: English (United States) - displayImageId: displayImageId - redirect: true - subdirectory: '' - tag: en-US - secondary: - - id: 653fd9af6a07fc9cfd7a5e57 - cmsLocaleId: 653ad57de882f528b32e810e - enabled: false - displayName: English (United States) - redirect: true - subdirectory: '' - tag: en-US - dataCollectionEnabled: true - dataCollectionType: always - get-custom-domain: - path: /sites/{site_id}/custom_domains - method: GET - auth: true - docs: | - Get a list of all custom domains related to site. - - Required scope | `sites:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Get Custom Domains - response: - docs: Request was successful - type: root.Domains - status-code: 200 - errors: - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - customDomains: - - id: 589a331aa51e760df7ccb89d - url: hitchhikersguide.galaxy - lastPublished: '2022-12-07T16:51:37Z' - - id: 589a331aa51e760df7ccb89e - url: heartofgold.spaceship - lastPublished: '2022-12-07T16:51:37Z' - publish: - path: /sites/{site_id}/publish - method: POST - auth: true - docs: > - Publishes a site to one or more more domains. - - - To publish to a specific custom domain, use the domain IDs from the [Get - Custom Domains](/data/reference/sites/get-custom-domain) endpoint. - - - This endpoint has a - specific rate limit of one successful publish queue per minute. - - - Required scope | `sites:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Publish Site - request: - name: SitesPublishRequest - body: - properties: - customDomains: - type: optional> - docs: Array of Custom Domain IDs to publish - publishToWebflowSubdomain: - type: optional - docs: Choice of whether to publish to the default Webflow Subdomain - default: false - content-type: application/json - response: - docs: Request accepted - type: SitesPublishResponse - status-code: 202 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - examples: - - name: DomainIDs - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: - customDomains: - - 660c6449dd97ebc7346ac629 - - 660c6449dd97ebc7346ac62f - publishToWebflowSubdomain: false - response: - body: - customDomains: - - id: 589a331aa51e760df7ccb89d - url: test-api-domain.com - lastPublished: '2022-12-07T16:51:37Z' - publishToWebflowSubdomain: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml - display-name: Sites -docs: Sites are the sites in your Webflow workspace. -types: - SitesPublishResponse: - properties: - customDomains: - type: optional> - docs: Array of domains objects - publishToWebflowSubdomain: - type: optional - docs: Flag for publishing to webflow.io subdomain - default: false - source: - openapi: ../../../openapi/referenced-specs/v2.yml -webhooks: - site_publish: - audiences: [] - method: POST - display-name: Site Publish - headers: {} - payload: root.SitePublish - examples: - - payload: - triggerType: site_publish - payload: - siteId: 62749158efef318abc8d5a0f - publishedOn: '2024-07-26T16:43:20Z' - domains: - - heartofgold.webflow.io - publishedBy: - displayName: Zaphod BeebleBrox - docs: Information about a site that was published diff --git a/.mock/definition/sites/activityLogs.yml b/.mock/definition/sites/activityLogs.yml deleted file mode 100644 index adf24a59..00000000 --- a/.mock/definition/sites/activityLogs.yml +++ /dev/null @@ -1,68 +0,0 @@ -imports: - root: ../__package__.yml -service: - auth: false - base-path: '' - endpoints: - list: - path: /sites/{site_id}/activity_logs - method: GET - auth: true - docs: > - Retrieve Activity Logs for a specific Site. - - - This endpoint requires an Enterprise - workspace. - - - Required scope: `site_activity:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Get Site Activity Logs - request: - name: ActivityLogsListRequest - query-parameters: - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - response: - docs: A list of site activity logs - type: root.SiteActivityLogResponse - status-code: 200 - errors: - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - items: - - id: 654c16c7b229e56bcf26872d - createdOn: '2023-11-08T23:16:23Z' - lastUpdated: '2023-11-08T23:16:23Z' - event: cms_collection - resourceOperation: CREATED - user: - id: 6509cd56e90eec668b009712 - displayName: John Doe - resourceId: 654c16c7b229e56bcf26870c - resourceName: foo-bar - pagination: - limit: 25 - offset: 0 - total: 1 - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/sites/comments.yml b/.mock/definition/sites/comments.yml deleted file mode 100644 index b14a9e5b..00000000 --- a/.mock/definition/sites/comments.yml +++ /dev/null @@ -1,323 +0,0 @@ -types: - CommentsListCommentThreadsRequestSortBy: - enum: - - createdOn - - lastUpdated - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CommentsListCommentThreadsRequestSortOrder: - enum: - - asc - - desc - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CommentsGetCommentThreadRequestSortBy: - enum: - - createdOn - - lastUpdated - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CommentsGetCommentThreadRequestSortOrder: - enum: - - asc - - desc - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CommentsListCommentRepliesRequestSortBy: - enum: - - createdOn - - lastUpdated - source: - openapi: ../../../openapi/referenced-specs/v2.yml - CommentsListCommentRepliesRequestSortOrder: - enum: - - asc - - desc - source: - openapi: ../../../openapi/referenced-specs/v2.yml -imports: - root: ../__package__.yml -service: - auth: false - base-path: '' - endpoints: - list-comment-threads: - path: /sites/{site_id}/comments - method: GET - auth: true - docs: | - List all comment threads for a site. - - - There may be a delay of up to 5 minutes before new comments appear in the system. - - - Required scope | `comments:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: List Comment Threads - request: - name: CommentsListCommentThreadsRequest - query-parameters: - localeId: - type: optional - docs: >- - Unique identifier for a specific locale. Applicable, when using - localization. - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - sortBy: - type: optional - docs: >- - Sort results by the provided value. Only allowed when sortOrder is - provided. - sortOrder: - type: optional - docs: Sorts the results by asc or desc - response: - docs: Request was successful - type: root.CommentThreadList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - query-parameters: - localeId: 65427cf400e02b306eaa04a0 - response: - body: - comments: - - id: 679d2ddb5196117ad04d1ffa - siteId: 679826b3b20b045e176bc4b5 - pageId: 679826b3b20b045e176bc4bc - localeId: 67993753d910db250db64b3e - breakpoint: main - url: >- - https://webflow.com/design/site-slug-4ec832?workflow=comment&commentId=679d2ddb5196117ad04d1ff8&pageId=679826b3b20b045e176bc4bc - content: 'Let''s go to the pub! [[6287ec36a841b25637c663df]] ' - isResolved: false - author: - userId: 6287ec36a841b25637c663df - email: ford.prefect@heartofgold.spaceship - name: Ford Prefect - mentionedUsers: - - userId: 6287ec36a841b25637c663df - email: arthur.dent@heartofgold.spaceship - name: Arthur Dent - createdOn: '2025-01-31T20:08:59.759Z' - lastUpdated: '2025-01-31T20:08:59.759Z' - - id: 679d2ddb5196117ad04d1ffc - siteId: 679826b3b20b045e176bc4b5 - pageId: 679826b3b20b045e176bc4bc - localeId: 67993753d910db250db64b3e - breakpoint: main - url: >- - https://webflow.com/design/site-slug-4ec832?workflow=comment&commentId=679d2ddb5196117ad04d1ff8&pageId=679826b3b20b045e176bc4bc - content: >- - You have five minutes left to drink it - [[6287ec36a841b25637c663df]] - isResolved: false - author: - userId: 6287ec36a841b25637c663df - email: ford.prefect@heartofgold.spaceship - name: Ford Prefect - mentionedUsers: - - userId: 6287ec36a841b25637c663df - email: arthur.dent@heartofgold.spaceship - name: Arthur Dent - createdOn: '2025-01-31T20:08:59.759Z' - lastUpdated: '2025-01-31T20:08:59.759Z' - pagination: - limit: 2 - offset: 0 - total: 2 - get-comment-thread: - path: /sites/{site_id}/comments/{comment_thread_id} - method: GET - auth: true - docs: | - Get details of a specific comment thread. - - - There may be a delay of up to 5 minutes before new comments appear in the system. - - - Required scope | `comments:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - comment_thread_id: - type: string - docs: Unique identifier for a Comment Thread - display-name: Get Comment Thread - request: - name: CommentsGetCommentThreadRequest - query-parameters: - localeId: - type: optional - docs: >- - Unique identifier for a specific locale. Applicable, when using - localization. - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - sortBy: - type: optional - docs: >- - Sort results by the provided value. Only allowed when sortOrder is - provided. - sortOrder: - type: optional - docs: Sorts the results by asc or desc - response: - docs: Request was successful - type: root.CommentThread - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - comment_thread_id: 580e63e98c9a982ac9b8b741 - query-parameters: - localeId: 65427cf400e02b306eaa04a0 - response: - body: - id: 580e64008c9a982ac9b8b754 - siteId: 580e64008c9a982ac9b8b754 - pageId: 580e64008c9a982ac9b8b754 - localeId: 580e64008c9a982ac9b8b754 - itemId: 580e64008c9a982ac9b8b754 - breakpoint: main - url: >- - https://webflow.com/design/site-slug-4ec832?workflow=comment&commentId=679d2ddb5196117ad04d1ff8&pageId=679826b3b20b045e176bc4bc - content: This is a comment reply - isResolved: true - author: - userId: userId - email: email - name: name - mentionedUsers: - - userId: 6287ec36a841b25637c663df - email: arthur.dent@heartofgold.spaceship - name: Arthur Dent - createdOn: '2023-03-17T18:47:35.560Z' - lastUpdated: '2023-03-17T18:47:35.560Z' - list-comment-replies: - path: /sites/{site_id}/comments/{comment_thread_id}/replies - method: GET - auth: true - docs: | - List all replies to a specific comment thread. - - - There may be a delay of up to 5 minutes before new comments appear in the system. - - - Required scope | `comments:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - comment_thread_id: - type: string - docs: Unique identifier for a Comment Thread - display-name: List Comment Replies - request: - name: CommentsListCommentRepliesRequest - query-parameters: - localeId: - type: optional - docs: >- - Unique identifier for a specific locale. Applicable, when using - localization. - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - sortBy: - type: optional - docs: >- - Sort results by the provided value. Only allowed when sortOrder is - provided. - sortOrder: - type: optional - docs: Sorts the results by asc or desc - response: - docs: Request was successful - type: root.CommentReplyList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - comment_thread_id: 580e63e98c9a982ac9b8b741 - query-parameters: - localeId: 65427cf400e02b306eaa04a0 - response: - body: - comments: - - id: 679d2ddb5196117ad04d1ffa - commentId: 679d2ddb5196117ad04d1ff8 - siteId: 679826b3b20b045e176bc4b5 - pageId: 679826b3b20b045e176bc4bc - localeId: 67993753d910db250db64b3e - breakpoint: main - content: >- - This comment mentions another user - [[6287ec36a841b25637c663df]] - isResolved: false - author: - id: id - email: email - name: name - mentionedUsers: - - id: id - email: arthur.dent@example.com - name: Arthur Dent - lastUpdated: '2025-01-31T20:08:59.759Z' - createdOn: '2025-01-31T20:08:59.759Z' - pagination: - limit: 2 - offset: 0 - total: 1 - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/sites/plans.yml b/.mock/definition/sites/plans.yml deleted file mode 100644 index f5073738..00000000 --- a/.mock/definition/sites/plans.yml +++ /dev/null @@ -1,46 +0,0 @@ -imports: - root: ../__package__.yml -service: - auth: false - base-path: '' - endpoints: - get-site-plan: - path: /sites/{site_id}/plan - method: GET - auth: true - docs: > - Get site plan details for the specified Site. - - - This endpoint requires an Enterprise - workspace. - - - Required scope | `sites:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Get Site Plan - response: - docs: Request was successful - type: root.SitePlan - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - id: hosting-business-v4 - name: Business Hosting - pricingInfo: https://webflow.com/pricing - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/sites/redirects.yml b/.mock/definition/sites/redirects.yml deleted file mode 100644 index 746923b4..00000000 --- a/.mock/definition/sites/redirects.yml +++ /dev/null @@ -1,213 +0,0 @@ -imports: - root: ../__package__.yml -service: - auth: false - base-path: '' - endpoints: - list: - path: /sites/{site_id}/redirects - method: GET - auth: true - docs: > - Fetch a list of all 301 redirect rules configured for a specific site. - - - Use this endpoint to review, audit, or manage the redirection rules that - control how traffic is rerouted on your site. - - - This endpoint requires an Enterprise - workspace. - - - Required scope: `sites:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Get 301 redirects - response: - docs: Request was successful - type: root.Redirects - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - redirects: - - id: 42e1a2b7aa1a13f768a0042a - fromUrl: /mostly-harmless - toUrl: /earth - - id: 6x9e7f8d9a4b1c2d3e4f5678 - fromUrl: /babel-fish - toUrl: /translate - pagination: - limit: 100 - offset: 0 - total: 2 - create: - path: /sites/{site_id}/redirects - method: POST - auth: true - docs: > - Add a new 301 redirection rule to a site. - - - This endpoint allows you to define a source path (`fromUrl`) and its - corresponding destination path (`toUrl`), which will dictate how traffic - is rerouted on your site. This is useful for managing site changes, - restructuring URLs, or handling outdated links. - - - This endpoint requires an Enterprise - workspace. - - - Required scope: `sites:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Create a 301 redirect - request: - body: root.Redirect - content-type: application/json - response: - docs: Request was successful - type: root.Redirect - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: - id: 42e1a2b7aa1a13f768a0042a - fromUrl: /mostly-harmless - toUrl: /earth - response: - body: - id: 42e1a2b7aa1a13f768a0042a - fromUrl: /mostly-harmless - toUrl: /earth - delete: - path: /sites/{site_id}/redirects/{redirect_id} - method: DELETE - auth: true - docs: > - Remove a 301 redirection rule from a site. - - - This is useful for cleaning up outdated or unnecessary redirects, - ensuring that your site's routing behavior remains efficient and - up-to-date. - - - This endpoint requires an Enterprise - workspace. - - - Required scope: `sites:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - redirect_id: - type: string - docs: Unique identifier site rediect - display-name: Delete 301 redirects - response: - docs: Request was successful - type: root.Redirects - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - redirect_id: 66c4cb9a20cac35ed19500e6 - response: - body: - redirects: - - id: 42e1a2b7aa1a13f768a0042a - fromUrl: /mostly-harmless - toUrl: /earth - - id: 6x9e7f8d9a4b1c2d3e4f5678 - fromUrl: /babel-fish - toUrl: /translate - pagination: - limit: 100 - offset: 0 - total: 2 - update: - path: /sites/{site_id}/redirects/{redirect_id} - method: PATCH - auth: true - docs: > - Update a 301 redirection rule from a site. - - - This endpoint requires an Enterprise - workspace. - - - Required scope: `sites:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - redirect_id: - type: string - docs: Unique identifier site rediect - display-name: Update 301 redirect - request: - body: root.Redirect - content-type: application/json - response: - docs: Request was successful - type: root.Redirect - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - redirect_id: 66c4cb9a20cac35ed19500e6 - request: - id: 42e1a2b7aa1a13f768a0042a - fromUrl: /mostly-harmless - toUrl: /earth - response: - body: - id: 42e1a2b7aa1a13f768a0042a - fromUrl: /mostly-harmless - toUrl: /earth - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/sites/robotsTxt.yml b/.mock/definition/sites/robotsTxt.yml deleted file mode 100644 index 1259a149..00000000 --- a/.mock/definition/sites/robotsTxt.yml +++ /dev/null @@ -1,221 +0,0 @@ -imports: - root: ../__package__.yml -service: - auth: false - base-path: '' - endpoints: - get: - path: /sites/{site_id}/robots_txt - method: GET - auth: true - docs: > - Retrieve the robots.txt configuration for various user agents. - - - This endpoint requires an Enterprise - workspace. - - - Required scope: `site_config:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Get robots.txt - response: - docs: Request was successful - type: root.Robots - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - rules: - - userAgent: googlebot - allows: - - /public - disallows: - - /vogon-poetry - - /total-perspective-vortex - sitemap: https://heartofgold.ship/sitemap.xml - put: - path: /sites/{site_id}/robots_txt - method: PUT - auth: true - docs: > - Replace the `robots.txt` configuration for various user agents. - - - This endpoint requires an Enterprise - workspace. - - - Required scope | `site_config:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Replace robots.txt - request: - body: root.Robots - content-type: application/json - response: - docs: Request was successful - type: root.Robots - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: - rules: - - userAgent: googlebot - allows: - - /public - disallows: - - /vogon-poetry - - /total-perspective-vortex - sitemap: https://heartofgold.ship/sitemap.xml - response: - body: - rules: - - userAgent: googlebot - allows: - - /public - disallows: - - /vogon-poetry - - /total-perspective-vortex - sitemap: https://heartofgold.ship/sitemap.xml - delete: - path: /sites/{site_id}/robots_txt - method: DELETE - auth: true - docs: > - Remove specific rules for a user-agent in your `robots.txt` file. To - delete all rules for a user-agent, provide an empty rule set. This will - remove the user-agent's entry entirely, leaving it subject to your - site's default crawling behavior. - - - **Note:** Deleting a user-agent with no rules will make the user-agent's - access unrestricted unless other directives apply. - - - This endpoint requires an Enterprise - workspace. - - - Required scope: `site_config:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Delete robots.txt - request: - body: root.Robots - content-type: application/json - response: - docs: Request was successful - type: root.Robots - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: - rules: - - userAgent: '*' - allows: - - /public - disallows: - - /bubbles - response: - body: - rules: - - userAgent: googlebot - allows: - - /public - disallows: - - /vogon-poetry - - /total-perspective-vortex - sitemap: https://heartofgold.ship/sitemap.xml - patch: - path: /sites/{site_id}/robots_txt - method: PATCH - auth: true - docs: > - Update the `robots.txt` configuration for various user agents. - - - This endpoint requires an Enterprise - workspace. - - - Required scope | `site_config:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Update robots.txt - request: - body: root.Robots - content-type: application/json - response: - docs: Request was successful - type: root.Robots - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: - rules: - - userAgent: googlebot - allows: - - /public - disallows: - - /vogon-poetry - - /total-perspective-vortex - sitemap: https://heartofgold.ship/sitemap.xml - response: - body: - rules: - - userAgent: googlebot - allows: - - /public - disallows: - - /vogon-poetry - - /total-perspective-vortex - sitemap: https://heartofgold.ship/sitemap.xml - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/sites/scripts.yml b/.mock/definition/sites/scripts.yml deleted file mode 100644 index 042c8480..00000000 --- a/.mock/definition/sites/scripts.yml +++ /dev/null @@ -1,231 +0,0 @@ -imports: - root: ../__package__.yml -service: - auth: false - base-path: '' - endpoints: - get-custom-code: - path: /sites/{site_id}/custom_code - method: GET - auth: true - docs: | - Get all scripts applied to a site by the App. - - - To apply a script to a site or page, the script must first be registered to a site via the [Register Script](/data/reference/custom-code/custom-code/register-hosted) endpoints. Once registered, the script can be applied to a Site or Page using the appropriate endpoints. See the documentation on [working with Custom Code](/data/docs/custom-code) for more information. - - - Required scope | `custom_code:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Get Custom Code - response: - docs: Request was successful - type: root.ScriptApplyList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - scripts: - - id: cms_slider - location: header - version: 1.0.0 - attributes: - my-attribute: some-value - - id: alert - location: header - version: 0.0.1 - attributes: - key: value - lastUpdated: '2022-10-26T00:28:54.191Z' - createdOn: '2022-10-26T00:28:54.191Z' - upsert-custom-code: - path: /sites/{site_id}/custom_code - method: PUT - auth: true - docs: > - Apply registered scripts to a site. If you have multiple scripts your - App needs to apply or maintain on a site, ensure they are always - included in the request body for this endpoint. To remove individual - scripts, simply call this endpoint without the script in the request - body. - - - - To apply a script to a site or page, the script must first be registered to a site via the [Register Script](/data/reference/custom-code/custom-code/register-hosted) endpoints. Once registered, the script can be applied to a Site or Page using the appropriate endpoints. See the documentation on [working with Custom Code](/data/docs/custom-code) for more information. - - - - Required scope | `custom_code:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Add/Update Custom Code - request: - body: root.ScriptApplyList - content-type: application/json - response: - docs: Request was successful - type: root.ScriptApplyList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: - scripts: - - id: cms_slider - location: header - version: 1.0.0 - attributes: - my-attribute: some-value - - id: alert - location: header - version: 0.0.1 - response: - body: - scripts: - - id: cms_slider - location: header - version: 1.0.0 - attributes: - my-attribute: some-value - - id: alert - location: header - version: 0.0.1 - attributes: - key: value - lastUpdated: lastUpdated - createdOn: createdOn - delete-custom-code: - path: /sites/{site_id}/custom_code - method: DELETE - auth: true - docs: > - Remove all scripts from a site applied by the App. This endpoint will - not remove scripts from the site's registered scripts. - - - To remove individual scripts applied by the App, use the [Add/Update - Custom - Code](/data/reference/custom-code/custom-code-sites/upsert-custom-code) - endpoint. - - - Access to this endpoint requires a bearer token obtained from an - [OAuth Code Grant Flow](/data/reference/oauth-app). - - - Required scope | `custom_code:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Delete Custom Code - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - list-custom-code-blocks: - path: /sites/{site_id}/custom_code/blocks - method: GET - auth: true - docs: > - Get a list of scripts that have been applied to a site and/or individual - pages. - - - - To apply a script to a site or page, the script must first be registered to a site via the [Register Script](/data/reference/custom-code/custom-code/register-hosted) endpoints. Once registered, the script can be applied to a Site or Page using the appropriate endpoints. - - See the documentation on [working with Custom Code](/data/docs/custom-code) for more information. - - - - Required scope | `custom_code:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: List Custom Code Blocks - request: - name: ScriptsListCustomCodeBlocksRequest - query-parameters: - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - response: - docs: Request was successful - type: root.ListCustomCodeBlocks - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - blocks: - - siteId: 6258612d1ee792848f805dcf - type: site - scripts: - - id: chartjs - location: header - version: 4.4.2 - attributes: - key: value - createdOn: '2024-04-03T16:49:15Z' - lastUpdated: '2024-04-03T16:49:15Z' - - siteId: 6390c49674a71f84b51a08d8 - pageId: 6419db964a9c43f6a3af6348 - type: page - scripts: - - id: id - location: header - version: version - createdOn: '2022-10-26T00:28:54Z' - lastUpdated: '2022-10-26T00:28:54Z' - pagination: - limit: 10 - offset: 0 - total: 1 - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/sites/wellKnown.yml b/.mock/definition/sites/wellKnown.yml deleted file mode 100644 index 0ba91e13..00000000 --- a/.mock/definition/sites/wellKnown.yml +++ /dev/null @@ -1,114 +0,0 @@ -types: - WellKnownFileContentType: - enum: - - value: application/json - name: ApplicationJson - - value: text/plain - name: TextPlain - docs: The content type of the file. Defaults to application/json - default: application/json - inline: true - source: - openapi: ../../../openapi/referenced-specs/v2.yml -imports: - root: ../__package__.yml -service: - auth: false - base-path: '' - endpoints: - put: - path: /sites/{site_id}/well_known - method: PUT - auth: true - docs: > - Upload a supported well-known file to a site. - - - The current restrictions on well-known files are as follows: - - Each file must be smaller than 100kb - - Less than 30 total files - - Have one of the following file extensions (or no extension): `.txt`, `.json`, `.noext` - - - `.noext` is a special file extension that removes other extensions. For example, `apple-app-site-association.noext.txt` will be uploaded as `apple-app-site-association`. Use this extension for tools that have trouble uploading extensionless files. - - - This endpoint requires an Enterprise - workspace. - - - Required scope: `site_config:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Set a well-known file - request: - name: WellKnownFile - body: - properties: - fileName: - type: string - docs: The name of the file - fileData: - type: string - docs: The contents of the file - contentType: - type: optional - docs: The content type of the file. Defaults to application/json - default: application/json - content-type: application/json - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: - fileName: fileName - fileData: fileData - delete: - path: /sites/{site_id}/well_known - method: DELETE - auth: true - docs: > - Delete existing well-known files from a site. - - - This endpoint requires an Enterprise - workspace. - - - Required scope: `site_config:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Delete a well-known file - request: - name: WellKnownDeleteRequest - body: - properties: - fileNames: - type: optional> - docs: A list of file names to delete - content-type: application/json - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: {} - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/token.yml b/.mock/definition/token.yml deleted file mode 100644 index 4b1cc1a0..00000000 --- a/.mock/definition/token.yml +++ /dev/null @@ -1,74 +0,0 @@ -imports: - root: __package__.yml -service: - auth: false - base-path: '' - endpoints: - authorized-by: - path: /token/authorized_by - method: GET - auth: true - docs: | - Information about the Authorized User - - Required Scope | `authorized_user:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - display-name: Get Authorization User Info - response: - docs: Request was successful - type: root.AuthorizedUser - status-code: 200 - errors: - - root.UnauthorizedError - - root.ForbiddenError - examples: - - response: - body: - id: 545bbecb7bdd6769632504a7 - email: some@email.com - firstName: Some - lastName: One - introspect: - path: /token/introspect - method: GET - auth: true - docs: > - Information about the authorization token - - - Access to this endpoint requires a bearer token from a [Data - Client App](/data/docs/getting-started-data-clients). - source: - openapi: ../../../openapi/referenced-specs/v2.yml - display-name: Get Authorization Info - response: - docs: Request was successful - type: root.Authorization - status-code: 200 - errors: - - root.UnauthorizedError - examples: - - response: - body: - authorization: - id: 55818d58616600637b9a5786 - createdOn: '2016-10-03T23:12:00Z' - lastUsed: '2016-10-10T21:41:12Z' - grantType: authorization_code - rateLimit: 60 - scope: assets:read,assets:write - authorizedTo: - siteIds: - - 62f3b1f7eafac55d0c64ef91 - workspaceIds: - - 52f3b1f7eafac55d0c64ef91 - userIds: - - 545bbecb7bdd6769632504a7 - application: - id: 55131cd036c09f7d07883dfc - description: My Amazing App - homepage: https://webflow.com - displayName: My Amazing App - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/definition/users.yml b/.mock/definition/users.yml deleted file mode 100644 index 58a505f2..00000000 --- a/.mock/definition/users.yml +++ /dev/null @@ -1,580 +0,0 @@ -types: - UsersListRequestSort: - enum: - - value: CreatedOn - name: CreatedOnAscending - docs: Sorts users in ascending order based on their created date - - value: '-CreatedOn' - name: CreatedOnDescending - docs: Sorts users in descending order based on their created date - - value: Email - name: EmailAscending - docs: Sorts users in ascending order based on their email - - value: '-Email' - name: EmailDescending - docs: Sorts users in descending order based on their email - - value: Status - name: StatusAscending - docs: Sorts users in ascending order based on their status - - value: '-Status' - name: StatusDescending - docs: Sorts users in descending order based on their status - - value: LastLogin - name: LastLoginAscending - docs: Sorts users in ascending order based on their last login date - - value: '-LastLogin' - name: LastLoginDescending - docs: Sorts users in descending order based on their last login date - - value: UpdatedOn - name: UpdatedOnAscending - docs: Sorts users in ascending order based on their update date - - value: '-UpdatedOn' - name: UpdatedOnDescending - docs: Sorts users in descending order based on their update date - source: - openapi: ../../../openapi/referenced-specs/v2.yml - UserAccountAddedPayloadPayloadData: - docs: The data about the user account that was added - properties: - accept-privacy-policy: optional - accept-communications: optional - email: optional - name: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - UserAccountAddedPayloadPayload: - properties: - data: - type: optional - docs: The data about the user account that was added - id: - type: optional - docs: Unique identifier for the User - isEmailVerified: - type: optional - docs: Shows whether the user has verified their email address - lastUpdated: - type: optional - docs: The timestamp the user was updated - invitedOn: - type: optional - docs: The timestamp the user was invited - createdOn: - type: optional - docs: The timestamp the user was created - lastLogin: - type: optional - docs: The timestamp the user was logged in - status: optional - accessGroups: - type: optional> - docs: Access groups the user belongs to - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - UserAccountAddedPayload: - properties: - triggerType: optional> - payload: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - UserAccountUpdatedPayloadPayloadData: - docs: The data about the user account that was added - properties: - accept-privacy-policy: optional - accept-communications: optional - email: optional - name: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - UserAccountUpdatedPayloadPayload: - properties: - data: - type: optional - docs: The data about the user account that was added - id: - type: optional - docs: Unique identifier for the User - isEmailVerified: - type: optional - docs: Shows whether the user has verified their email address - lastUpdated: - type: optional - docs: The timestamp the user was updated - invitedOn: - type: optional - docs: The timestamp the user was invited - createdOn: - type: optional - docs: The timestamp the user was created - lastLogin: - type: optional - docs: The timestamp the user was logged in - status: optional - accessGroups: - type: optional> - docs: Access groups the user belongs to - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - UserAccountUpdatedPayload: - properties: - triggerType: optional> - payload: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - UserAccountDeletedPayloadPayloadData: - docs: The data about the user account that was added - properties: - accept-privacy-policy: optional - accept-communications: optional - email: optional - name: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - UserAccountDeletedPayloadPayload: - properties: - data: - type: optional - docs: The data about the user account that was added - id: - type: optional - docs: Unique identifier for the User - isEmailVerified: - type: optional - docs: Shows whether the user has verified their email address - lastUpdated: - type: optional - docs: The timestamp the user was updated - invitedOn: - type: optional - docs: The timestamp the user was invited - createdOn: - type: optional - docs: The timestamp the user was created - lastLogin: - type: optional - docs: The timestamp the user was logged in - status: optional - accessGroups: - type: optional> - docs: Access groups the user belongs to - source: - openapi: ../../../openapi/referenced-specs/v2.yml - inline: true - UserAccountDeletedPayload: - properties: - triggerType: optional> - payload: optional - source: - openapi: ../../../openapi/referenced-specs/v2.yml -imports: - root: __package__.yml -service: - auth: false - base-path: '' - endpoints: - list: - path: /sites/{site_id}/users - method: GET - auth: true - docs: | - Get a list of users for a site - - Required scope | `users:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: List Users - request: - name: UsersListRequest - query-parameters: - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - sort: - type: optional - docs: | - Sort string to use when ordering users - - Example(`CreatedOn`, `Email`, `Status`, `LastLogin`, `UpdatedOn`). - - Can be prefixed with a `-` to reverse the sort (ex. `-CreatedOn`) - response: - docs: Request was successful - type: root.UserList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - count: 5 - limit: 5 - offset: 0 - total: 201 - users: - - id: 6287ec36a841b25637c663df - isEmailVerified: false - lastUpdated: '2022-05-20T13:46:12Z' - invitedOn: '2016-10-24T19:41:29Z' - createdOn: '2022-05-20T13:46:12Z' - lastLogin: '2016-10-24T19:41:29Z' - status: unverified - accessGroups: - - slug: vogon-construction-crew - type: admin - - id: 6287ec36a841b25637c663f0 - isEmailVerified: false - lastUpdated: '2022-05-19T05:32:04Z' - invitedOn: '2016-10-24T19:41:29Z' - createdOn: '2022-05-19T05:32:04Z' - lastLogin: '2016-10-24T19:41:29Z' - status: unverified - accessGroups: - - slug: improbability-drive-test-subjects - type: admin - - id: 6287ec36a841b25637c663d9 - isEmailVerified: true - lastUpdated: '2022-05-17T03:34:06Z' - invitedOn: '2016-10-24T19:41:29Z' - createdOn: '2022-05-17T03:34:06Z' - lastLogin: '2016-10-24T19:41:29Z' - status: verified - accessGroups: - - slug: heart-of-gold-crew - type: admin - - id: 6287ec37a841b25637c6641b - isEmailVerified: false - lastUpdated: '2022-05-15T03:46:09Z' - invitedOn: '2016-10-24T19:41:29Z' - createdOn: '2022-05-15T03:46:09Z' - lastLogin: '2016-10-24T19:41:29Z' - status: unverified - accessGroups: - - slug: hitchhikers-guide-research-team - type: admin - - id: 6287ec37a841b25637c66449 - isEmailVerified: true - lastUpdated: '2022-05-15T02:55:38Z' - invitedOn: '2016-10-24T19:41:29Z' - createdOn: '2022-05-15T02:55:38Z' - lastLogin: '2016-10-24T19:41:29Z' - status: verified - accessGroups: - - slug: milliways-reservationists - type: admin - get: - path: /sites/{site_id}/users/{user_id} - method: GET - auth: true - docs: | - Get a User by ID - - Required scope | `users:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - user_id: - type: string - docs: Unique identifier for a User - display-name: Get User - response: - docs: Request was successful - type: root.User - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - user_id: 580e63e98c9a982ac9b8b741 - response: - body: - id: 6287ec36a841b25637c663df - isEmailVerified: true - lastUpdated: '2022-05-20T13:46:12Z' - invitedOn: '2022-05-20T13:46:12Z' - createdOn: '2022-05-20T13:46:12Z' - lastLogin: '2022-05-20T13:46:12Z' - status: verified - accessGroups: - - slug: webflowers - type: admin - data: - data: - name: name - email: email - accept-privacy: true - accept-communications: true - additionalProperties: additionalProperties - delete: - path: /sites/{site_id}/users/{user_id} - method: DELETE - auth: true - docs: | - Delete a User by ID - - Required scope | `users:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - user_id: - type: string - docs: Unique identifier for a User - display-name: Delete User - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - user_id: 580e63e98c9a982ac9b8b741 - update: - path: /sites/{site_id}/users/{user_id} - method: PATCH - auth: true - docs: | - Update a User by ID - - Required scope | `users:write` - - The email and password - fields cannot be updated using this endpoint - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - user_id: - type: string - docs: Unique identifier for a User - display-name: Update User - request: - body: root.User - content-type: application/json - response: - docs: Request was successful - type: root.User - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - user_id: 580e63e98c9a982ac9b8b741 - request: - id: 6287ec36a841b25637c663df - isEmailVerified: true - lastUpdated: '2022-05-20T13:46:12Z' - invitedOn: '2022-05-20T13:46:12Z' - createdOn: '2022-05-20T13:46:12Z' - lastLogin: '2022-05-20T13:46:12Z' - status: verified - accessGroups: - - slug: webflowers - type: admin - response: - body: - id: 6287ec36a841b25637c663df - isEmailVerified: true - lastUpdated: '2022-05-20T13:46:12Z' - invitedOn: '2022-05-20T13:46:12Z' - createdOn: '2022-05-20T13:46:12Z' - lastLogin: '2022-05-20T13:46:12Z' - status: verified - accessGroups: - - slug: webflowers - type: admin - data: - data: - name: name - email: email - accept-privacy: true - accept-communications: true - additionalProperties: additionalProperties - invite: - path: /sites/{site_id}/users/invite - method: POST - auth: true - docs: > - 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` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Create and Invite a User - request: - name: UsersInviteRequest - body: - properties: - email: - type: string - docs: Email address of user to send invite to - validation: - format: email - accessGroups: - type: optional> - docs: > - An array of access group slugs. Access groups are assigned to - the user as type `admin` and the user remains in the group until - removed. - content-type: application/json - response: - docs: Request was successful - type: root.User - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.ConflictError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: - email: some.one@home.com - accessGroups: - - accessGroups - response: - body: - id: 6287ec36a841b25637c663df - isEmailVerified: true - lastUpdated: '2022-05-20T13:46:12Z' - invitedOn: '2022-05-20T13:46:12Z' - createdOn: '2022-05-20T13:46:12Z' - lastLogin: '2022-05-20T13:46:12Z' - status: verified - accessGroups: - - slug: webflowers - type: admin - data: - data: - name: name - email: email - accept-privacy: true - accept-communications: true - additionalProperties: additionalProperties - source: - openapi: ../../../openapi/referenced-specs/v2.yml -webhooks: - user_account_added: - audiences: [] - method: POST - display-name: New User Added - headers: {} - payload: UserAccountAddedPayload - examples: - - payload: - triggerType: user_account_added - payload: - id: 6287ec36a841b25637c663df - lastUpdated: '2022-05-20T13:46:12.093Z' - createdOn: '2022-05-20T13:46:12.093Z' - isEmailVerified: false - data: - accept-privacy: false - accept-communications: false - email: arthur.dent@heartofgold.ship - name: Arthur Dent - accessGroups: - - slug: webflowers - type: admin - docs: Information about a new user account - user_account_updated: - audiences: [] - method: POST - display-name: Account Updated - headers: {} - payload: UserAccountUpdatedPayload - examples: - - payload: - triggerType: user_account_updated - payload: - id: 6287ec36a841b25637c663df - lastUpdated: '2022-05-20T13:46:12.093Z' - createdOn: '2022-05-20T13:46:12.093Z' - isEmailVerified: false - data: - accept-privacy: false - accept-communications: false - email: arthur.dent@heartofgold.ship - name: Arthur Dent - accessGroups: - - slug: webflowers - type: admin - docs: Information about an updated user account - user_account_deleted: - audiences: [] - method: POST - display-name: Account Deleted - headers: {} - payload: UserAccountDeletedPayload - examples: - - payload: - triggerType: user_account_deleted - payload: - id: 6287ec36a841b25637c663df - lastUpdated: '2022-05-20T13:46:12.093Z' - createdOn: '2022-05-20T13:46:12.093Z' - isEmailVerified: false - data: - accept-privacy: false - accept-communications: false - email: arthur.dent@heartofgold.ship - name: Arthur Dent - accessGroups: - - slug: webflowers - type: admin - docs: Information about a deleted user account diff --git a/.mock/definition/webhooks.yml b/.mock/definition/webhooks.yml deleted file mode 100644 index 47dbfc0a..00000000 --- a/.mock/definition/webhooks.yml +++ /dev/null @@ -1,188 +0,0 @@ -imports: - root: __package__.yml -service: - auth: false - base-path: '' - endpoints: - list: - path: /sites/{site_id}/webhooks - method: GET - auth: true - docs: | - List all App-created Webhooks registered for a given site - - Required scope | `sites:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: List Webhooks - response: - docs: Request was successful - type: root.WebhookList - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - response: - body: - webhooks: - - id: 57ca0a9e418c504a6e1acbb6 - triggerType: form_submission - url: https://webhook.site/7f7f7f7f-7f7f-7f7f-7f7f-7f7f7f7f7f7f - workspaceId: 4f4e46fd476ea8c507000001 - siteId: 562ac0395358780a1f5e6fbd - filter: - name: Email Form - lastTriggered: '2023-02-08T23:59:28Z' - createdOn: '2016-09-02T23:26:22Z' - - id: 578d85cce0c47cd2865f4cf2 - triggerType: form_submission - url: https://webhook.site/7f7f7f7f-7f7f-7f7f-7f7f-7f7f7f7f7f7f - workspaceId: 4f4e46fd476ea8c507000001 - siteId: 562ac0395358780a1f5e6fbd - filter: - name: Email Form - lastTriggered: '2023-02-08T23:59:28Z' - createdOn: '2016-07-19T01:43:40Z' - - id: 578d85cce0c47cd2865f4cf3 - triggerType: form_submission - url: https://webhook.site/7f7f7f7f-7f7f-7f7f-7f7f-7f7f7f7f7f7f - workspaceId: 4f4e46fd476ea8c507000001 - siteId: 562ac0395358780a1f5e6fbd - filter: - name: Email Form - lastTriggered: '2023-02-08T23:59:28Z' - createdOn: '2016-07-19T01:43:40Z' - pagination: - limit: 100 - offset: 0 - total: 100 - create: - path: /sites/{site_id}/webhooks - method: POST - auth: true - docs: > - 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](/data/docs/getting-started-data-clients). - - Required scope | `sites:write` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - site_id: - type: string - docs: Unique identifier for a Site - display-name: Create Webhook - request: - body: root.Webhook - content-type: application/json - response: - docs: Request was successful - type: root.Webhook - status-code: 201 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - site_id: 580e63e98c9a982ac9b8b741 - request: - 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' - response: - body: - 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' - get: - path: /webhooks/{webhook_id} - method: GET - auth: true - docs: | - Get a specific Webhook instance - - Required scope: `sites:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - webhook_id: - type: string - docs: Unique identifier for a Webhook - display-name: Get Webhook - response: - docs: Request was successful - type: root.Webhook - status-code: 200 - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - webhook_id: 580e64008c9a982ac9b8b754 - response: - body: - 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' - delete: - path: /webhooks/{webhook_id} - method: DELETE - auth: true - docs: | - Remove a Webhook - - Required scope: `sites:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - webhook_id: - type: string - docs: Unique identifier for a Webhook - display-name: Remove Webhook - errors: - - root.BadRequestError - - root.UnauthorizedError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - webhook_id: 580e64008c9a982ac9b8b754 - source: - openapi: ../../../openapi/referenced-specs/v2.yml - display-name: Webhooks -docs: Webhooks are the webhooks in your Webflow site. diff --git a/.mock/definition/workspaces/auditLogs.yml b/.mock/definition/workspaces/auditLogs.yml deleted file mode 100644 index 73ae4df3..00000000 --- a/.mock/definition/workspaces/auditLogs.yml +++ /dev/null @@ -1,119 +0,0 @@ -types: - AuditLogsGetWorkspaceAuditLogsRequestSortOrder: - enum: - - asc - - desc - source: - openapi: ../../../openapi/referenced-specs/v2.yml - AuditLogsGetWorkspaceAuditLogsRequestEventType: - enum: - - user_access - - custom_role - - workspace_membership - - site_membership - - workspace_invitation - source: - openapi: ../../../openapi/referenced-specs/v2.yml -imports: - root: ../__package__.yml -service: - auth: false - base-path: '' - endpoints: - get-workspace-audit_logs: - path: /workspaces/{workspace_id_or_slug}/audit_logs - method: GET - auth: true - docs: > - Get audit logs for a workspace. - - - This endpoint - requires an Enterprise workspace and a workspace token with the - `workspace_activity:read` scope. Create a workspace token from your - workspace dashboard integrations page to use this endpoint. - - - Required scope | `workspace_activity:read` - source: - openapi: ../../../openapi/referenced-specs/v2.yml - path-parameters: - workspace_id_or_slug: - type: string - docs: Unique identifier or slug for a Workspace - display-name: Get Workspace Audit Logs - request: - name: AuditLogsGetWorkspaceAuditLogsRequest - query-parameters: - limit: - type: optional - docs: 'Maximum number of records to be returned (max limit: 100)' - offset: - type: optional - docs: >- - Offset used for pagination if the results have more than limit - records - sortOrder: - type: optional - docs: Sorts the results by asc or desc - eventType: - type: optional - docs: The event type to filter by - from: - type: optional - docs: The start date to filter by - to: - type: optional - docs: The end date to filter by - response: - docs: A list of workspace audit logs - type: root.WorkspaceAuditLogResponse - status-code: 200 - errors: - - root.UnauthorizedError - - root.ForbiddenError - - root.NotFoundError - - root.TooManyRequestsError - - root.InternalServerError - examples: - - path-parameters: - workspace_id_or_slug: hitchhikers-workspace - query-parameters: - from: '2024-04-22T16:00:31Z' - to: '2024-04-22T16:00:31Z' - response: - body: - items: - - eventSubType: login - eventType: user_access - timestamp: '2025-04-29T20:30:06Z' - actor: - id: 6661ccb359b561c69f29d554 - email: someone@email.com - workspace: - id: 6621ccb459b561c69f29d57c - slug: hitchhikers-workspace - - eventSubType: user_added - eventType: workspace_membership - timestamp: '2025-04-30T20:30:06Z' - actor: - id: 60492e55bbddce079561cd7a - email: someone@webflow.com - workspace: - id: 6621ccb459b561c69f29d57c - slug: hitchhikers-workspace - - eventSubType: user_added - eventType: site_membership - timestamp: '2025-04-30T00:33:31Z' - actor: - id: 671fe00d185fc8c1ad409d37 - email: someone@webflow.com - workspace: - id: 6621ccb459b561c69f29d57c - slug: hitchhikers-workspace - pagination: - limit: 10 - offset: 0 - total: 3 - source: - openapi: ../../../openapi/referenced-specs/v2.yml diff --git a/.mock/fern.config.json b/.mock/fern.config.json deleted file mode 100644 index ab4ae42f..00000000 --- a/.mock/fern.config.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "organization" : "webflow", - "version" : "0.65.36" -} \ No newline at end of file diff --git a/reference.md b/reference.md index ba566b73..b4698ec3 100644 --- a/reference.md +++ b/reference.md @@ -937,6 +937,8 @@ Required scope | `pages:read` ```typescript await client.pages.list("580e63e98c9a982ac9b8b741", { localeId: "65427cf400e02b306eaa04a0", + limit: 1.1, + offset: 1.1, }); ``` @@ -1069,10 +1071,6 @@ await client.pages.getMetadata("63c720f9347c2139b248e552", { Update Page-level metadata, including SEO and Open Graph fields. - - Note: When updating Page Metadata in secondary locales, you may only add `slug` to the request if your Site has the [Advanced or Enterprise Localization](https://webflow.com/localization) add-on. - - Required scope | `pages:write` @@ -1159,11 +1157,9 @@ await client.pages.updatePageSettings("63c720f9347c2139b248e552", {
-Get content from a static page. This includes text nodes, image nodes, select nodes, text input nodes, submit button nodes, and component instances with [property overrides](https://help.webflow.com/hc/en-us/articles/33961219350547-Component-properties#how-to-modify-property-values-on-component-instances). +Get text and component instance content from a static page. -To retrieve the static content of a component instance, use the [Get Component Content](/data/reference/pages-and-components/components/get-content) endpoint. - -If you do not include a `localeId` in your request, the response will return any content that can be localized from the Primary locale. +Localization Required scope | `pages:read` @@ -1183,6 +1179,8 @@ Required scope | `pages:read` ```typescript await client.pages.getContent("63c720f9347c2139b248e552", { localeId: "65427cf400e02b306eaa04a0", + limit: 1.1, + offset: 1.1, }); ``` @@ -1242,8 +1240,9 @@ This endpoint updates content on a static page in **secondary locales**. It supp Before making updates: -1. Use the [get page content](/data/reference/pages-and-components/pages/get-content) endpoint to identify available content nodes and their types -2. If the page has component instances, retrieve the component's properties that you'll override using the [get component properties](/data/reference/pages-and-components/components/get-properties) endpoint +1. Use the [get page content](/data/reference/pages-and-components/pages/get-content) endpoint to identify available content nodes and their types. +2. If the page has component instances, retrieve the component's properties that you'll override using the [get component properties](/data/reference/pages-and-components/components/get-properties) endpoint. +3. DOM elements may include a `data-w-id` attribute. This attribute is used by Webflow to maintain custom attributes and links across locales. Always include the original `data-w-id` value in your update requests to ensure consistent behavior across all locales. This endpoint is specifically for localized pages. Ensure that the specified `localeId` is a valid **secondary locale** for the site otherwise the request will fail. @@ -1389,6 +1388,8 @@ Required scope | `components:read` ```typescript await client.components.list("580e63e98c9a982ac9b8b741", { branchId: "68026fa68ef6dc744c75b833", + limit: 1.1, + offset: 1.1, }); ``` @@ -1468,6 +1469,8 @@ Required scope | `components:read` await client.components.getContent("580e63e98c9a982ac9b8b741", "8505ba55-ef72-629e-f85c-33e4b703d48b", { localeId: "65427cf400e02b306eaa04a0", branchId: "68026fa68ef6dc744c75b833", + limit: 1.1, + offset: 1.1, }); ``` @@ -1535,8 +1538,9 @@ This endpoint updates content within a component defintion for **secondary local Before making updates: -1. Use the [get component content](/data/reference/pages-and-components/components/get-content) endpoint to identify available content nodes and their types -2. If your component definition has a component instance nested within it, retrieve the nested component instance's properties that you'll override using the [get component properties](/data/reference/pages-and-components/components/get-properties) endpoint +1. Use the [get component content](/data/reference/pages-and-components/components/get-content) endpoint to identify available content nodes and their types. +2. If your component definition has a component instance nested within it, retrieve the nested component instance's properties that you'll override using the [get component properties](/data/reference/pages-and-components/components/get-properties) endpoint. +3. DOM elements may include a `data-w-id` attribute. This attribute is used by Webflow to maintain custom attributes and links across locales. Always include the original `data-w-id` value in your update requests to ensure consistent behavior across all locales. This endpoint is specifically for localizing component definitions. Ensure that the specified `localeId` is a valid **secondary locale** for the site otherwise the request will fail. @@ -1692,6 +1696,8 @@ Required scope | `components:read` await client.components.getProperties("580e63e98c9a982ac9b8b741", "8505ba55-ef72-629e-f85c-33e4b703d48b", { localeId: "65427cf400e02b306eaa04a0", branchId: "68026fa68ef6dc744c75b833", + limit: 1.1, + offset: 1.1, }); ``` @@ -1757,7 +1763,10 @@ await client.components.getProperties("580e63e98c9a982ac9b8b741", "8505ba55-ef72 Update the default property values of a component definition in a specificed locale. -Before making updates, use the [get component properties](/data/reference/pages-and-components/components/get-properties) endpoint to identify properties that can be updated in a secondary locale. +Before making updates: + +1. Use the [get component properties](/data/reference/pages-and-components/components/get-properties) endpoint to identify properties that can be updated in a secondary locale. +2. Rich Text properties may include a `data-w-id` attribute. This attribute is used by Webflow to maintain links across locales. Always include the original `data-w-id` value in your update requests to ensure consistent behavior across all locales. The request requires a secondary locale ID. If a `localeId` is missing, the request will not be processed and will result in an error. @@ -2077,7 +2086,7 @@ await client.scripts.registerInline("580e63e98c9a982ac9b8b741", { ## Assets -
client.assets.list(siteId) -> Webflow.Assets +
client.assets.list(siteId, { ...params }) -> Webflow.Assets
@@ -2107,7 +2116,10 @@ Required scope | `assets:read`
```typescript -await client.assets.list("580e63e98c9a982ac9b8b741"); +await client.assets.list("580e63e98c9a982ac9b8b741", { + offset: 1.1, + limit: 1.1, +}); ```
@@ -2131,6 +2143,14 @@ await client.assets.list("580e63e98c9a982ac9b8b741");
+**request:** `Webflow.AssetsListRequest` + +
+
+ +
+
+ **requestOptions:** `Assets.RequestOptions`
@@ -2945,7 +2965,10 @@ Required scope | `forms:read`
```typescript -await client.forms.list("580e63e98c9a982ac9b8b741"); +await client.forms.list("580e63e98c9a982ac9b8b741", { + limit: 1.1, + offset: 1.1, +}); ```
@@ -3089,7 +3112,10 @@ Required scope | `forms:read`
```typescript -await client.forms.listSubmissions("580e63e98c9a982ac9b8b741"); +await client.forms.listSubmissions("580e63e98c9a982ac9b8b741", { + offset: 1.1, + limit: 1.1, +}); ```
@@ -3367,6 +3393,8 @@ Required scope | `forms:read` ```typescript await client.forms.listSubmissionsBySite("580e63e98c9a982ac9b8b741", { elementId: "18259716-3e5a-646a-5f41-5dc4b9405aa0", + offset: 1.1, + limit: 1.1, }); ``` @@ -3410,6 +3438,317 @@ await client.forms.listSubmissionsBySite("580e63e98c9a982ac9b8b741", {
+
client.forms.listSubmissionsByFormAndSite(siteId, formId, { ...params }) -> Webflow.FormSubmissionList +
+
+ +#### 📝 Description + +
+
+ +
+
+ +List form submissions for a given form within a specific site. + +Required scope | `forms:read` + +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```typescript +await client.forms.listSubmissionsByFormAndSite("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741", { + offset: 1.1, + limit: 1.1, +}); +``` + +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**siteId:** `string` — Unique identifier for a Site + +
+
+ +
+
+ +**formId:** `string` — Unique identifier for a Form + +
+
+ +
+
+ +**request:** `Webflow.FormsListSubmissionsByFormAndSiteRequest` + +
+
+ +
+
+ +**requestOptions:** `Forms.RequestOptions` + +
+
+
+
+ +
+
+
+ +
client.forms.getSubmissionBySite(siteId, formSubmissionId) -> Webflow.FormSubmission +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Get information about a form submission within a specific site. + +Required scope | `forms:read` + +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```typescript +await client.forms.getSubmissionBySite("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741"); +``` + +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**siteId:** `string` — Unique identifier for a Site + +
+
+ +
+
+ +**formSubmissionId:** `string` — Unique identifier for a Form Submission + +
+
+ +
+
+ +**requestOptions:** `Forms.RequestOptions` + +
+
+
+
+ +
+
+
+ +
client.forms.deleteSubmissionBySite(siteId, formSubmissionId) -> void +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Delete a form submission within a specific site. + +Required scope | `forms:write` + +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```typescript +await client.forms.deleteSubmissionBySite("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741"); +``` + +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**siteId:** `string` — Unique identifier for a Site + +
+
+ +
+
+ +**formSubmissionId:** `string` — Unique identifier for a Form Submission + +
+
+ +
+
+ +**requestOptions:** `Forms.RequestOptions` + +
+
+
+
+ +
+
+
+ +
client.forms.updateSubmissionBySite(siteId, formSubmissionId, { ...params }) -> Webflow.FormSubmission +
+
+ +#### 📝 Description + +
+
+ +
+
+ +Update hidden fields on a form submission within a specific site. + +Required scope | `forms:write` + +
+
+
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```typescript +await client.forms.updateSubmissionBySite("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741"); +``` + +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**siteId:** `string` — Unique identifier for a Site + +
+
+ +
+
+ +**formSubmissionId:** `string` — Unique identifier for a Form Submission + +
+
+ +
+
+ +**request:** `Webflow.FormsUpdateSubmissionBySiteRequest` + +
+
+ +
+
+ +**requestOptions:** `Forms.RequestOptions` + +
+
+
+
+ +
+
+
+ ## Users
client.users.list(siteId, { ...params }) -> Webflow.UserList @@ -3442,7 +3781,11 @@ Required scope | `users:read`
```typescript -await client.users.list("580e63e98c9a982ac9b8b741"); +await client.users.list("580e63e98c9a982ac9b8b741", { + offset: 1.1, + limit: 1.1, + sort: "CreatedOn", +}); ```
@@ -3839,7 +4182,11 @@ Required scope | `users:read`
```typescript -await client.accessGroups.list("580e63e98c9a982ac9b8b741"); +await client.accessGroups.list("580e63e98c9a982ac9b8b741", { + offset: 1.1, + limit: 1.1, + sort: "CreatedOn", +}); ```
@@ -3917,7 +4264,10 @@ Required scope | `ecommerce:read`
```typescript -await client.products.list("580e63e98c9a982ac9b8b741"); +await client.products.list("580e63e98c9a982ac9b8b741", { + offset: 1.1, + limit: 1.1, +}); ```
@@ -4506,7 +4856,11 @@ Required scope | `ecommerce:read`
```typescript -await client.orders.list("580e63e98c9a982ac9b8b741"); +await client.orders.list("580e63e98c9a982ac9b8b741", { + status: "pending", + offset: 1.1, + limit: 1.1, +}); ```
@@ -5448,7 +5802,15 @@ Required scope | `CMS:read`
```typescript -await client.collections.items.listItems("580e63fc8c9a982ac9b8b745"); +await client.collections.items.listItems("580e63fc8c9a982ac9b8b745", { + cmsLocaleId: "cmsLocaleId", + offset: 1.1, + limit: 1.1, + name: "name", + slug: "slug", + sortBy: "lastPublished", + sortOrder: "asc", +}); ```
@@ -5524,12 +5886,13 @@ Required scope | `CMS:write` ```typescript await client.collections.items.createItem("580e63fc8c9a982ac9b8b745", { + skipInvalidFiles: true, body: { isArchived: false, isDraft: false, fieldData: { - name: "Pan Galactic Gargle Blaster Recipe", - slug: "pan-galactic-gargle-blaster", + name: "The Hitchhiker's Guide to the Galaxy", + slug: "hitchhikers-guide-to-the-galaxy", }, }, }); @@ -5691,6 +6054,7 @@ Required scope | `CMS:write` ```typescript await client.collections.items.updateItems("580e63fc8c9a982ac9b8b745", { + skipInvalidFiles: true, items: [ { id: "66f6ed9576ddacf3149d5ea6", @@ -5803,7 +6167,15 @@ Required scope | `CMS:read`
```typescript -await client.collections.items.listItemsLive("580e63fc8c9a982ac9b8b745"); +await client.collections.items.listItemsLive("580e63fc8c9a982ac9b8b745", { + cmsLocaleId: "cmsLocaleId", + offset: 1.1, + limit: 1.1, + name: "name", + slug: "slug", + sortBy: "lastPublished", + sortOrder: "asc", +}); ```
@@ -5879,12 +6251,13 @@ Required scope | `CMS:write` ```typescript await client.collections.items.createItemLive("580e63fc8c9a982ac9b8b745", { + skipInvalidFiles: true, body: { isArchived: false, isDraft: false, fieldData: { - name: "Pan Galactic Gargle Blaster Recipe", - slug: "pan-galactic-gargle-blaster", + name: "The Hitchhiker's Guide to the Galaxy", + slug: "hitchhikers-guide-to-the-galaxy", }, }, }); @@ -6044,6 +6417,7 @@ Required scope | `CMS:write` ```typescript await client.collections.items.updateItemsLive("580e63fc8c9a982ac9b8b745", { + skipInvalidFiles: true, items: [ { id: "66f6ed9576ddacf3149d5ea6", @@ -6157,6 +6531,7 @@ Required scope | `CMS:write` ```typescript await client.collections.items.createItems("580e63fc8c9a982ac9b8b745", { + skipInvalidFiles: true, cmsLocaleIds: ["66f6e966c9e1dc700a857ca3", "66f6e966c9e1dc700a857ca4", "66f6e966c9e1dc700a857ca5"], isArchived: false, isDraft: false, @@ -6237,7 +6612,9 @@ Required scope | `CMS:read`
```typescript -await client.collections.items.getItem("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754"); +await client.collections.items.getItem("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", { + cmsLocaleId: "cmsLocaleId", +}); ```
@@ -6318,7 +6695,9 @@ Required scope | `CMS:write`
```typescript -await client.collections.items.deleteItem("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754"); +await client.collections.items.deleteItem("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", { + cmsLocaleId: "cmsLocaleId", +}); ```
@@ -6400,12 +6779,13 @@ Required scope | `CMS:write` ```typescript await client.collections.items.updateItem("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", { + skipInvalidFiles: true, body: { isArchived: false, isDraft: false, fieldData: { - name: "Pan Galactic Gargle Blaster Recipe", - slug: "pan-galactic-gargle-blaster", + name: "The Hitchhiker's Guide to the Galaxy", + slug: "hitchhikers-guide-to-the-galaxy", }, }, }); @@ -6494,7 +6874,9 @@ Required scope | `CMS:read`
```typescript -await client.collections.items.getItemLive("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754"); +await client.collections.items.getItemLive("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", { + cmsLocaleId: "cmsLocaleId", +}); ```
@@ -6577,7 +6959,9 @@ Required scope | `CMS:write`
```typescript -await client.collections.items.deleteItemLive("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754"); +await client.collections.items.deleteItemLive("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", { + cmsLocaleId: "cmsLocaleId", +}); ```
@@ -6659,12 +7043,13 @@ Required scope | `CMS:write` ```typescript await client.collections.items.updateItemLive("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", { + skipInvalidFiles: true, body: { isArchived: false, isDraft: false, fieldData: { - name: "Pan Galactic Gargle Blaster Recipe", - slug: "pan-galactic-gargle-blaster", + name: "The Hitchhiker's Guide to the Galaxy", + slug: "hitchhikers-guide-to-the-galaxy", }, }, }); @@ -7774,8 +8159,10 @@ Required scope: `site_config:write` ```typescript await client.sites.wellKnown.put("580e63e98c9a982ac9b8b741", { - fileName: "fileName", - fileData: "fileData", + fileName: "apple-app-site-association.txt", + fileData: + '{\n "applinks": {\n "apps": [],\n "details": [\n {\n "appID": "ABCDE12345.com.example.app",\n "paths": [ "/*", "/some/path/*" ]\n }\n ]\n }\n}\n', + contentType: "application/json", }); ``` @@ -7928,7 +8315,10 @@ Required scope: `site_activity:read`
```typescript -await client.sites.activityLogs.list("580e63e98c9a982ac9b8b741"); +await client.sites.activityLogs.list("580e63e98c9a982ac9b8b741", { + limit: 1.1, + offset: 1.1, +}); ```
@@ -8009,6 +8399,10 @@ Required scope | `comments:read` ```typescript await client.sites.comments.listCommentThreads("580e63e98c9a982ac9b8b741", { localeId: "65427cf400e02b306eaa04a0", + offset: 1.1, + limit: 1.1, + sortBy: "createdOn", + sortOrder: "asc", }); ``` @@ -8088,6 +8482,10 @@ Required scope | `comments:read` ```typescript await client.sites.comments.getCommentThread("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741", { localeId: "65427cf400e02b306eaa04a0", + offset: 1.1, + limit: 1.1, + sortBy: "createdOn", + sortOrder: "asc", }); ``` @@ -8175,6 +8573,10 @@ Required scope | `comments:read` ```typescript await client.sites.comments.listCommentReplies("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741", { localeId: "65427cf400e02b306eaa04a0", + offset: 1.1, + limit: 1.1, + sortBy: "createdOn", + sortOrder: "asc", }); ``` @@ -8495,7 +8897,10 @@ Required scope | `custom_code:read`
```typescript -await client.sites.scripts.listCustomCodeBlocks("580e63e98c9a982ac9b8b741"); +await client.sites.scripts.listCustomCodeBlocks("580e63e98c9a982ac9b8b741", { + offset: 1.1, + limit: 1.1, +}); ```
@@ -8573,8 +8978,12 @@ Required scope | `workspace_activity:read` ```typescript await client.workspaces.auditLogs.getWorkspaceAuditLogs("hitchhikers-workspace", { - from: new Date("2024-04-22T16:00:31.000Z"), - to: new Date("2024-04-22T16:00:31.000Z"), + limit: 1.1, + offset: 1.1, + sortOrder: "asc", + eventType: "user_access", + from: new Date("2025-06-22T16:00:31.000Z"), + to: new Date("2025-07-22T16:00:31.000Z"), }); ``` diff --git a/src/Client.ts b/src/Client.ts index 45c760b2..ca5e992f 100644 --- a/src/Client.ts +++ b/src/Client.ts @@ -27,7 +27,7 @@ export declare namespace WebflowClient { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -63,7 +63,7 @@ export class WebflowClient { protected _ecommerce: Ecommerce | undefined; protected _workspaces: Workspaces | undefined; - constructor(_options: WebflowClient.Options) { + constructor(_options: WebflowClient.Options = {}) { this._options = { ..._options, headers: mergeHeaders( diff --git a/src/api/resources/accessGroups/client/Client.ts b/src/api/resources/accessGroups/client/Client.ts index ba62501e..40f0c056 100644 --- a/src/api/resources/accessGroups/client/Client.ts +++ b/src/api/resources/accessGroups/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace AccessGroups { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace AccessGroups { export class AccessGroups { protected readonly _options: AccessGroups.Options; - constructor(_options: AccessGroups.Options) { + constructor(_options: AccessGroups.Options = {}) { this._options = _options; } @@ -56,7 +56,11 @@ export class AccessGroups { * @throws {@link Webflow.InternalServerError} * * @example - * await client.accessGroups.list("580e63e98c9a982ac9b8b741") + * await client.accessGroups.list("580e63e98c9a982ac9b8b741", { + * offset: 1.1, + * limit: 1.1, + * sort: "CreatedOn" + * }) */ public list( siteId: string, @@ -198,7 +202,12 @@ export class AccessGroups { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/accessGroups/client/requests/AccessGroupsListRequest.ts b/src/api/resources/accessGroups/client/requests/AccessGroupsListRequest.ts index 0fada7ea..49659032 100644 --- a/src/api/resources/accessGroups/client/requests/AccessGroupsListRequest.ts +++ b/src/api/resources/accessGroups/client/requests/AccessGroupsListRequest.ts @@ -6,7 +6,11 @@ import * as Webflow from "../../../../index"; /** * @example - * {} + * { + * offset: 1.1, + * limit: 1.1, + * sort: "CreatedOn" + * } */ export interface AccessGroupsListRequest { /** diff --git a/src/api/resources/assets/client/Client.ts b/src/api/resources/assets/client/Client.ts index 9d35f82b..142b83eb 100644 --- a/src/api/resources/assets/client/Client.ts +++ b/src/api/resources/assets/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Assets { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -38,7 +38,7 @@ export declare namespace Assets { export class Assets { protected readonly _options: Assets.Options; - constructor(_options: Assets.Options) { + constructor(_options: Assets.Options = {}) { this._options = _options; } @@ -48,6 +48,7 @@ export class Assets { * Required scope | `assets:read` * * @param {string} siteId - Unique identifier for a Site + * @param {Webflow.AssetsListRequest} request * @param {Assets.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Webflow.BadRequestError} @@ -57,16 +58,34 @@ export class Assets { * @throws {@link Webflow.InternalServerError} * * @example - * await client.assets.list("580e63e98c9a982ac9b8b741") + * await client.assets.list("580e63e98c9a982ac9b8b741", { + * offset: 1.1, + * limit: 1.1 + * }) */ - public list(siteId: string, requestOptions?: Assets.RequestOptions): core.HttpResponsePromise { - return core.HttpResponsePromise.fromPromise(this.__list(siteId, requestOptions)); + public list( + siteId: string, + request: Webflow.AssetsListRequest = {}, + requestOptions?: Assets.RequestOptions, + ): core.HttpResponsePromise { + return core.HttpResponsePromise.fromPromise(this.__list(siteId, request, requestOptions)); } private async __list( siteId: string, + request: Webflow.AssetsListRequest = {}, requestOptions?: Assets.RequestOptions, ): Promise> { + const { offset, limit } = request; + const _queryParams: Record = {}; + if (offset != null) { + _queryParams["offset"] = offset.toString(); + } + + if (limit != null) { + _queryParams["limit"] = limit.toString(); + } + const _response = await core.fetcher({ url: urlJoin( (await core.Supplier.get(this._options.baseUrl)) ?? @@ -80,6 +99,7 @@ export class Assets { mergeOnlyDefinedHeaders({ Authorization: await this._getAuthorizationHeader() }), requestOptions?.headers, ), + queryParameters: _queryParams, timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000, maxRetries: requestOptions?.maxRetries, abortSignal: requestOptions?.abortSignal, @@ -1130,7 +1150,12 @@ export class Assets { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/assets/client/requests/AssetsListRequest.ts b/src/api/resources/assets/client/requests/AssetsListRequest.ts new file mode 100644 index 00000000..982b68c6 --- /dev/null +++ b/src/api/resources/assets/client/requests/AssetsListRequest.ts @@ -0,0 +1,21 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +/** + * @example + * { + * offset: 1.1, + * limit: 1.1 + * } + */ +export interface AssetsListRequest { + /** + * Offset used for pagination if the results have more than limit records + */ + offset?: number; + /** + * Maximum number of records to be returned (max limit: 100) + */ + limit?: number; +} diff --git a/src/api/resources/assets/client/requests/index.ts b/src/api/resources/assets/client/requests/index.ts index 99239498..93250a4c 100644 --- a/src/api/resources/assets/client/requests/index.ts +++ b/src/api/resources/assets/client/requests/index.ts @@ -1,3 +1,4 @@ +export { type AssetsListRequest } from "./AssetsListRequest"; export { type AssetsCreateRequest } from "./AssetsCreateRequest"; export { type AssetsUpdateRequest } from "./AssetsUpdateRequest"; export { type AssetsCreateFolderRequest } from "./AssetsCreateFolderRequest"; diff --git a/src/api/resources/collections/client/Client.ts b/src/api/resources/collections/client/Client.ts index 51e72030..e04ee1fc 100644 --- a/src/api/resources/collections/client/Client.ts +++ b/src/api/resources/collections/client/Client.ts @@ -17,7 +17,7 @@ export declare namespace Collections { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -42,7 +42,7 @@ export class Collections { protected _fields: Fields | undefined; protected _items: Items | undefined; - constructor(_options: Collections.Options) { + constructor(_options: Collections.Options = {}) { this._options = _options; } @@ -612,7 +612,12 @@ export class Collections { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/collections/resources/fields/client/Client.ts b/src/api/resources/collections/resources/fields/client/Client.ts index 137218b8..0324c0a1 100644 --- a/src/api/resources/collections/resources/fields/client/Client.ts +++ b/src/api/resources/collections/resources/fields/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Fields { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace Fields { export class Fields { protected readonly _options: Fields.Options; - constructor(_options: Fields.Options) { + constructor(_options: Fields.Options = {}) { this._options = _options; } @@ -508,7 +508,12 @@ export class Fields { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/collections/resources/items/client/Client.ts b/src/api/resources/collections/resources/items/client/Client.ts index c0b08ee2..44c1c278 100644 --- a/src/api/resources/collections/resources/items/client/Client.ts +++ b/src/api/resources/collections/resources/items/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Items { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace Items { export class Items { protected readonly _options: Items.Options; - constructor(_options: Items.Options) { + constructor(_options: Items.Options = {}) { this._options = _options; } @@ -55,7 +55,15 @@ export class Items { * @throws {@link Webflow.InternalServerError} * * @example - * await client.collections.items.listItems("580e63fc8c9a982ac9b8b745") + * await client.collections.items.listItems("580e63fc8c9a982ac9b8b745", { + * cmsLocaleId: "cmsLocaleId", + * offset: 1.1, + * limit: 1.1, + * name: "name", + * slug: "slug", + * sortBy: "lastPublished", + * sortOrder: "asc" + * }) */ public listItems( collectionId: string, @@ -244,18 +252,20 @@ export class Items { * * @example * await client.collections.items.createItem("580e63fc8c9a982ac9b8b745", { + * skipInvalidFiles: true, * body: { * isArchived: false, * isDraft: false, * fieldData: { - * name: "Pan Galactic Gargle Blaster Recipe", - * slug: "pan-galactic-gargle-blaster" + * name: "The Hitchhiker's Guide to the Galaxy", + * slug: "hitchhikers-guide-to-the-galaxy" * } * } * }) * * @example * await client.collections.items.createItem("580e63fc8c9a982ac9b8b745", { + * skipInvalidFiles: true, * body: { * items: [{ * isArchived: false, @@ -573,6 +583,7 @@ export class Items { * * @example * await client.collections.items.updateItems("580e63fc8c9a982ac9b8b745", { + * skipInvalidFiles: true, * items: [{ * id: "66f6ed9576ddacf3149d5ea6", * cmsLocaleId: "66f6e966c9e1dc700a857ca5", @@ -606,6 +617,7 @@ export class Items { * * @example * await client.collections.items.updateItems("580e63fc8c9a982ac9b8b745", { + * skipInvalidFiles: true, * items: [{ * id: "580e64008c9a982ac9b8b754", * isArchived: false, @@ -779,7 +791,15 @@ export class Items { * @throws {@link Webflow.InternalServerError} * * @example - * await client.collections.items.listItemsLive("580e63fc8c9a982ac9b8b745") + * await client.collections.items.listItemsLive("580e63fc8c9a982ac9b8b745", { + * cmsLocaleId: "cmsLocaleId", + * offset: 1.1, + * limit: 1.1, + * name: "name", + * slug: "slug", + * sortBy: "lastPublished", + * sortOrder: "asc" + * }) */ public listItemsLive( collectionId: string, @@ -975,18 +995,20 @@ export class Items { * * @example * await client.collections.items.createItemLive("580e63fc8c9a982ac9b8b745", { + * skipInvalidFiles: true, * body: { * isArchived: false, * isDraft: false, * fieldData: { - * name: "Pan Galactic Gargle Blaster Recipe", - * slug: "pan-galactic-gargle-blaster" + * name: "The Hitchhiker's Guide to the Galaxy", + * slug: "hitchhikers-guide-to-the-galaxy" * } * } * }) * * @example * await client.collections.items.createItemLive("580e63fc8c9a982ac9b8b745", { + * skipInvalidFiles: true, * body: { * items: [{ * isArchived: false, @@ -1300,6 +1322,7 @@ export class Items { * * @example * await client.collections.items.updateItemsLive("580e63fc8c9a982ac9b8b745", { + * skipInvalidFiles: true, * items: [{ * id: "66f6ed9576ddacf3149d5ea6", * cmsLocaleId: "66f6e966c9e1dc700a857ca5", @@ -1333,6 +1356,7 @@ export class Items { * * @example * await client.collections.items.updateItemsLive("580e63fc8c9a982ac9b8b745", { + * skipInvalidFiles: true, * items: [{ * id: "580e64008c9a982ac9b8b754", * isArchived: false, @@ -1509,6 +1533,7 @@ export class Items { * * @example * await client.collections.items.createItems("580e63fc8c9a982ac9b8b745", { + * skipInvalidFiles: true, * cmsLocaleIds: ["66f6e966c9e1dc700a857ca3", "66f6e966c9e1dc700a857ca4", "66f6e966c9e1dc700a857ca5"], * isArchived: false, * isDraft: false, @@ -1520,6 +1545,7 @@ export class Items { * * @example * await client.collections.items.createItems("580e63fc8c9a982ac9b8b745", { + * skipInvalidFiles: true, * cmsLocaleIds: ["66f6e966c9e1dc700a857ca3", "66f6e966c9e1dc700a857ca4"], * isArchived: false, * isDraft: false, @@ -1682,7 +1708,9 @@ export class Items { * @throws {@link Webflow.InternalServerError} * * @example - * await client.collections.items.getItem("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754") + * await client.collections.items.getItem("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", { + * cmsLocaleId: "cmsLocaleId" + * }) */ public getItem( collectionId: string, @@ -1709,7 +1737,7 @@ export class Items { url: urlJoin( (await core.Supplier.get(this._options.baseUrl)) ?? ((await core.Supplier.get(this._options.environment)) ?? environments.WebflowEnvironment.DataApi) - .production, + .base, `collections/${encodeURIComponent(collectionId)}/items/${encodeURIComponent(itemId)}`, ), method: "GET", @@ -1829,7 +1857,9 @@ export class Items { * @throws {@link Webflow.InternalServerError} * * @example - * await client.collections.items.deleteItem("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754") + * await client.collections.items.deleteItem("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", { + * cmsLocaleId: "cmsLocaleId" + * }) */ public deleteItem( collectionId: string, @@ -1968,12 +1998,13 @@ export class Items { * * @example * await client.collections.items.updateItem("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", { + * skipInvalidFiles: true, * body: { * isArchived: false, * isDraft: false, * fieldData: { - * name: "Pan Galactic Gargle Blaster Recipe", - * slug: "pan-galactic-gargle-blaster" + * name: "The Hitchhiker's Guide to the Galaxy", + * slug: "hitchhikers-guide-to-the-galaxy" * } * } * }) @@ -2135,7 +2166,9 @@ export class Items { * @throws {@link Webflow.InternalServerError} * * @example - * await client.collections.items.getItemLive("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754") + * await client.collections.items.getItemLive("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", { + * cmsLocaleId: "cmsLocaleId" + * }) */ public getItemLive( collectionId: string, @@ -2284,7 +2317,9 @@ export class Items { * @throws {@link Webflow.InternalServerError} * * @example - * await client.collections.items.deleteItemLive("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754") + * await client.collections.items.deleteItemLive("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", { + * cmsLocaleId: "cmsLocaleId" + * }) */ public deleteItemLive( collectionId: string, @@ -2426,12 +2461,13 @@ export class Items { * * @example * await client.collections.items.updateItemLive("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", { + * skipInvalidFiles: true, * body: { * isArchived: false, * isDraft: false, * fieldData: { - * name: "Pan Galactic Gargle Blaster Recipe", - * slug: "pan-galactic-gargle-blaster" + * name: "The Hitchhiker's Guide to the Galaxy", + * slug: "hitchhikers-guide-to-the-galaxy" * } * } * }) @@ -2746,7 +2782,12 @@ export class Items { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/collections/resources/items/client/requests/CreateBulkCollectionItemRequestBody.ts b/src/api/resources/collections/resources/items/client/requests/CreateBulkCollectionItemRequestBody.ts index 86dac151..c5fb0327 100644 --- a/src/api/resources/collections/resources/items/client/requests/CreateBulkCollectionItemRequestBody.ts +++ b/src/api/resources/collections/resources/items/client/requests/CreateBulkCollectionItemRequestBody.ts @@ -7,6 +7,7 @@ import * as Webflow from "../../../../../../index"; /** * @example * { + * skipInvalidFiles: true, * cmsLocaleIds: ["66f6e966c9e1dc700a857ca3", "66f6e966c9e1dc700a857ca4", "66f6e966c9e1dc700a857ca5"], * isArchived: false, * isDraft: false, @@ -18,6 +19,7 @@ import * as Webflow from "../../../../../../index"; * * @example * { + * skipInvalidFiles: true, * cmsLocaleIds: ["66f6e966c9e1dc700a857ca3", "66f6e966c9e1dc700a857ca4"], * isArchived: false, * isDraft: false, @@ -32,6 +34,7 @@ import * as Webflow from "../../../../../../index"; * * @example * { + * skipInvalidFiles: true, * cmsLocaleIds: ["66f6e966c9e1dc700a857ca3", "66f6e966c9e1dc700a857ca4", "66f6e966c9e1dc700a857ca5"], * isArchived: false, * isDraft: false, @@ -43,6 +46,7 @@ import * as Webflow from "../../../../../../index"; * * @example * { + * skipInvalidFiles: true, * cmsLocaleIds: ["66f6e966c9e1dc700a857ca3", "66f6e966c9e1dc700a857ca4", "66f6e966c9e1dc700a857ca5"], * isArchived: false, * isDraft: false, diff --git a/src/api/resources/collections/resources/items/client/requests/ItemsCreateItemLiveRequest.ts b/src/api/resources/collections/resources/items/client/requests/ItemsCreateItemLiveRequest.ts index 16ace3d4..7f7178e4 100644 --- a/src/api/resources/collections/resources/items/client/requests/ItemsCreateItemLiveRequest.ts +++ b/src/api/resources/collections/resources/items/client/requests/ItemsCreateItemLiveRequest.ts @@ -7,18 +7,20 @@ import * as Webflow from "../../../../../../index"; /** * @example * { + * skipInvalidFiles: true, * body: { * isArchived: false, * isDraft: false, * fieldData: { - * name: "Pan Galactic Gargle Blaster Recipe", - * slug: "pan-galactic-gargle-blaster" + * name: "The Hitchhiker's Guide to the Galaxy", + * slug: "hitchhikers-guide-to-the-galaxy" * } * } * } * * @example * { + * skipInvalidFiles: true, * body: { * items: [{ * isArchived: false, diff --git a/src/api/resources/collections/resources/items/client/requests/ItemsCreateItemRequest.ts b/src/api/resources/collections/resources/items/client/requests/ItemsCreateItemRequest.ts index 3036536b..77c0c974 100644 --- a/src/api/resources/collections/resources/items/client/requests/ItemsCreateItemRequest.ts +++ b/src/api/resources/collections/resources/items/client/requests/ItemsCreateItemRequest.ts @@ -7,18 +7,20 @@ import * as Webflow from "../../../../../../index"; /** * @example * { + * skipInvalidFiles: true, * body: { * isArchived: false, * isDraft: false, * fieldData: { - * name: "Pan Galactic Gargle Blaster Recipe", - * slug: "pan-galactic-gargle-blaster" + * name: "The Hitchhiker's Guide to the Galaxy", + * slug: "hitchhikers-guide-to-the-galaxy" * } * } * } * * @example * { + * skipInvalidFiles: true, * body: { * items: [{ * isArchived: false, diff --git a/src/api/resources/collections/resources/items/client/requests/ItemsDeleteItemLiveRequest.ts b/src/api/resources/collections/resources/items/client/requests/ItemsDeleteItemLiveRequest.ts index 3c487283..dfe4d6f6 100644 --- a/src/api/resources/collections/resources/items/client/requests/ItemsDeleteItemLiveRequest.ts +++ b/src/api/resources/collections/resources/items/client/requests/ItemsDeleteItemLiveRequest.ts @@ -4,7 +4,9 @@ /** * @example - * {} + * { + * cmsLocaleId: "cmsLocaleId" + * } */ export interface ItemsDeleteItemLiveRequest { /** diff --git a/src/api/resources/collections/resources/items/client/requests/ItemsDeleteItemRequest.ts b/src/api/resources/collections/resources/items/client/requests/ItemsDeleteItemRequest.ts index 3b38176c..49073411 100644 --- a/src/api/resources/collections/resources/items/client/requests/ItemsDeleteItemRequest.ts +++ b/src/api/resources/collections/resources/items/client/requests/ItemsDeleteItemRequest.ts @@ -4,7 +4,9 @@ /** * @example - * {} + * { + * cmsLocaleId: "cmsLocaleId" + * } */ export interface ItemsDeleteItemRequest { /** diff --git a/src/api/resources/collections/resources/items/client/requests/ItemsGetItemLiveRequest.ts b/src/api/resources/collections/resources/items/client/requests/ItemsGetItemLiveRequest.ts index b4db0989..4b21ecae 100644 --- a/src/api/resources/collections/resources/items/client/requests/ItemsGetItemLiveRequest.ts +++ b/src/api/resources/collections/resources/items/client/requests/ItemsGetItemLiveRequest.ts @@ -4,7 +4,9 @@ /** * @example - * {} + * { + * cmsLocaleId: "cmsLocaleId" + * } */ export interface ItemsGetItemLiveRequest { /** diff --git a/src/api/resources/collections/resources/items/client/requests/ItemsGetItemRequest.ts b/src/api/resources/collections/resources/items/client/requests/ItemsGetItemRequest.ts index d27617fd..13e082bc 100644 --- a/src/api/resources/collections/resources/items/client/requests/ItemsGetItemRequest.ts +++ b/src/api/resources/collections/resources/items/client/requests/ItemsGetItemRequest.ts @@ -4,7 +4,9 @@ /** * @example - * {} + * { + * cmsLocaleId: "cmsLocaleId" + * } */ export interface ItemsGetItemRequest { /** diff --git a/src/api/resources/collections/resources/items/client/requests/ItemsListItemsLiveRequest.ts b/src/api/resources/collections/resources/items/client/requests/ItemsListItemsLiveRequest.ts index 77313d73..7f50d8be 100644 --- a/src/api/resources/collections/resources/items/client/requests/ItemsListItemsLiveRequest.ts +++ b/src/api/resources/collections/resources/items/client/requests/ItemsListItemsLiveRequest.ts @@ -6,7 +6,15 @@ import * as Webflow from "../../../../../../index"; /** * @example - * {} + * { + * cmsLocaleId: "cmsLocaleId", + * offset: 1.1, + * limit: 1.1, + * name: "name", + * slug: "slug", + * sortBy: "lastPublished", + * sortOrder: "asc" + * } */ export interface ItemsListItemsLiveRequest { /** diff --git a/src/api/resources/collections/resources/items/client/requests/ItemsListItemsRequest.ts b/src/api/resources/collections/resources/items/client/requests/ItemsListItemsRequest.ts index bd98db5d..2edac40f 100644 --- a/src/api/resources/collections/resources/items/client/requests/ItemsListItemsRequest.ts +++ b/src/api/resources/collections/resources/items/client/requests/ItemsListItemsRequest.ts @@ -6,7 +6,15 @@ import * as Webflow from "../../../../../../index"; /** * @example - * {} + * { + * cmsLocaleId: "cmsLocaleId", + * offset: 1.1, + * limit: 1.1, + * name: "name", + * slug: "slug", + * sortBy: "lastPublished", + * sortOrder: "asc" + * } */ export interface ItemsListItemsRequest { /** diff --git a/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemLiveRequest.ts b/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemLiveRequest.ts index af98818e..6ba836d8 100644 --- a/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemLiveRequest.ts +++ b/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemLiveRequest.ts @@ -7,12 +7,13 @@ import * as Webflow from "../../../../../../index"; /** * @example * { + * skipInvalidFiles: true, * body: { * isArchived: false, * isDraft: false, * fieldData: { - * name: "Pan Galactic Gargle Blaster Recipe", - * slug: "pan-galactic-gargle-blaster" + * name: "The Hitchhiker's Guide to the Galaxy", + * slug: "hitchhikers-guide-to-the-galaxy" * } * } * } diff --git a/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemRequest.ts b/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemRequest.ts index 27341aca..3f1db05a 100644 --- a/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemRequest.ts +++ b/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemRequest.ts @@ -7,12 +7,13 @@ import * as Webflow from "../../../../../../index"; /** * @example * { + * skipInvalidFiles: true, * body: { * isArchived: false, * isDraft: false, * fieldData: { - * name: "Pan Galactic Gargle Blaster Recipe", - * slug: "pan-galactic-gargle-blaster" + * name: "The Hitchhiker's Guide to the Galaxy", + * slug: "hitchhikers-guide-to-the-galaxy" * } * } * } diff --git a/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemsLiveRequest.ts b/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemsLiveRequest.ts index b80d7a17..29caff27 100644 --- a/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemsLiveRequest.ts +++ b/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemsLiveRequest.ts @@ -7,6 +7,7 @@ import * as Webflow from "../../../../../../index"; /** * @example * { + * skipInvalidFiles: true, * items: [{ * id: "66f6ed9576ddacf3149d5ea6", * cmsLocaleId: "66f6e966c9e1dc700a857ca5", @@ -40,6 +41,7 @@ import * as Webflow from "../../../../../../index"; * * @example * { + * skipInvalidFiles: true, * items: [{ * id: "580e64008c9a982ac9b8b754", * isArchived: false, @@ -61,6 +63,7 @@ import * as Webflow from "../../../../../../index"; * * @example * { + * skipInvalidFiles: true, * items: [{ * id: "66f6ed9576ddacf3149d5ea6", * cmsLocaleId: "66f6e966c9e1dc700a857ca5", @@ -94,6 +97,7 @@ import * as Webflow from "../../../../../../index"; * * @example * { + * skipInvalidFiles: true, * items: [{ * id: "66f6ed9576ddacf3149d5ea6", * cmsLocaleId: "66f6e966c9e1dc700a857ca5", diff --git a/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemsRequest.ts b/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemsRequest.ts index 87f6b81d..303c316e 100644 --- a/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemsRequest.ts +++ b/src/api/resources/collections/resources/items/client/requests/ItemsUpdateItemsRequest.ts @@ -7,6 +7,7 @@ import * as Webflow from "../../../../../../index"; /** * @example * { + * skipInvalidFiles: true, * items: [{ * id: "66f6ed9576ddacf3149d5ea6", * cmsLocaleId: "66f6e966c9e1dc700a857ca5", @@ -40,6 +41,7 @@ import * as Webflow from "../../../../../../index"; * * @example * { + * skipInvalidFiles: true, * items: [{ * id: "580e64008c9a982ac9b8b754", * isArchived: false, diff --git a/src/api/resources/components/client/Client.ts b/src/api/resources/components/client/Client.ts index 56cc7260..202f3b59 100644 --- a/src/api/resources/components/client/Client.ts +++ b/src/api/resources/components/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Components { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace Components { export class Components { protected readonly _options: Components.Options; - constructor(_options: Components.Options) { + constructor(_options: Components.Options = {}) { this._options = _options; } @@ -56,7 +56,9 @@ export class Components { * * @example * await client.components.list("580e63e98c9a982ac9b8b741", { - * branchId: "68026fa68ef6dc744c75b833" + * branchId: "68026fa68ef6dc744c75b833", + * limit: 1.1, + * offset: 1.1 * }) */ public list( @@ -213,7 +215,9 @@ export class Components { * @example * await client.components.getContent("580e63e98c9a982ac9b8b741", "8505ba55-ef72-629e-f85c-33e4b703d48b", { * localeId: "65427cf400e02b306eaa04a0", - * branchId: "68026fa68ef6dc744c75b833" + * branchId: "68026fa68ef6dc744c75b833", + * limit: 1.1, + * offset: 1.1 * }) */ public getContent( @@ -360,8 +364,9 @@ export class Components { * This endpoint updates content within a component defintion for **secondary locales**. It supports updating up to 1000 nodes in a single request. * * Before making updates: - * 1. Use the [get component content](/data/reference/pages-and-components/components/get-content) endpoint to identify available content nodes and their types - * 2. If your component definition has a component instance nested within it, retrieve the nested component instance's properties that you'll override using the [get component properties](/data/reference/pages-and-components/components/get-properties) endpoint + * 1. Use the [get component content](/data/reference/pages-and-components/components/get-content) endpoint to identify available content nodes and their types. + * 2. If your component definition has a component instance nested within it, retrieve the nested component instance's properties that you'll override using the [get component properties](/data/reference/pages-and-components/components/get-properties) endpoint. + * 3. DOM elements may include a `data-w-id` attribute. This attribute is used by Webflow to maintain custom attributes and links across locales. Always include the original `data-w-id` value in your update requests to ensure consistent behavior across all locales. * * * This endpoint is specifically for localizing component definitions. Ensure that the specified `localeId` is a valid **secondary locale** for the site otherwise the request will fail. @@ -581,7 +586,9 @@ export class Components { * @example * await client.components.getProperties("580e63e98c9a982ac9b8b741", "8505ba55-ef72-629e-f85c-33e4b703d48b", { * localeId: "65427cf400e02b306eaa04a0", - * branchId: "68026fa68ef6dc744c75b833" + * branchId: "68026fa68ef6dc744c75b833", + * limit: 1.1, + * offset: 1.1 * }) */ public getProperties( @@ -727,7 +734,9 @@ export class Components { /** * Update the default property values of a component definition in a specificed locale. * - * Before making updates, use the [get component properties](/data/reference/pages-and-components/components/get-properties) endpoint to identify properties that can be updated in a secondary locale. + * Before making updates: + * 1. Use the [get component properties](/data/reference/pages-and-components/components/get-properties) endpoint to identify properties that can be updated in a secondary locale. + * 2. Rich Text properties may include a `data-w-id` attribute. This attribute is used by Webflow to maintain links across locales. Always include the original `data-w-id` value in your update requests to ensure consistent behavior across all locales. * * The request requires a secondary locale ID. If a `localeId` is missing, the request will not be processed and will result in an error. * @@ -898,7 +907,12 @@ export class Components { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/components/client/requests/ComponentDomWrite.ts b/src/api/resources/components/client/requests/ComponentDomWrite.ts index a4b61f74..421ed0b0 100644 --- a/src/api/resources/components/client/requests/ComponentDomWrite.ts +++ b/src/api/resources/components/client/requests/ComponentDomWrite.ts @@ -45,7 +45,9 @@ import * as Webflow from "../../../../index"; */ export interface ComponentDomWrite { /** - * Unique identifier for a specific locale. Applicable, when using localization. + * Unique identifier for a specific Locale. + * + * [Lear more about localization.](/data/v2.0.0/docs/working-with-localization) */ localeId?: string; /** diff --git a/src/api/resources/components/client/requests/ComponentPropertiesWrite.ts b/src/api/resources/components/client/requests/ComponentPropertiesWrite.ts index f7b0cebd..7c79d5a7 100644 --- a/src/api/resources/components/client/requests/ComponentPropertiesWrite.ts +++ b/src/api/resources/components/client/requests/ComponentPropertiesWrite.ts @@ -20,7 +20,9 @@ import * as Webflow from "../../../../index"; */ export interface ComponentPropertiesWrite { /** - * Unique identifier for a specific locale. Applicable, when using localization. + * Unique identifier for a specific Locale. + * + * [Lear more about localization.](/data/v2.0.0/docs/working-with-localization) */ localeId?: string; /** diff --git a/src/api/resources/components/client/requests/ComponentsGetContentRequest.ts b/src/api/resources/components/client/requests/ComponentsGetContentRequest.ts index 95179db5..810ffa3d 100644 --- a/src/api/resources/components/client/requests/ComponentsGetContentRequest.ts +++ b/src/api/resources/components/client/requests/ComponentsGetContentRequest.ts @@ -6,12 +6,16 @@ * @example * { * localeId: "65427cf400e02b306eaa04a0", - * branchId: "68026fa68ef6dc744c75b833" + * branchId: "68026fa68ef6dc744c75b833", + * limit: 1.1, + * offset: 1.1 * } */ export interface ComponentsGetContentRequest { /** - * Unique identifier for a specific locale. Applicable, when using localization. + * Unique identifier for a specific Locale. + * + * [Lear more about localization.](/data/v2.0.0/docs/working-with-localization) */ localeId?: string; /** diff --git a/src/api/resources/components/client/requests/ComponentsGetPropertiesRequest.ts b/src/api/resources/components/client/requests/ComponentsGetPropertiesRequest.ts index 3416abb1..a2271bec 100644 --- a/src/api/resources/components/client/requests/ComponentsGetPropertiesRequest.ts +++ b/src/api/resources/components/client/requests/ComponentsGetPropertiesRequest.ts @@ -6,12 +6,16 @@ * @example * { * localeId: "65427cf400e02b306eaa04a0", - * branchId: "68026fa68ef6dc744c75b833" + * branchId: "68026fa68ef6dc744c75b833", + * limit: 1.1, + * offset: 1.1 * } */ export interface ComponentsGetPropertiesRequest { /** - * Unique identifier for a specific locale. Applicable, when using localization. + * Unique identifier for a specific Locale. + * + * [Lear more about localization.](/data/v2.0.0/docs/working-with-localization) */ localeId?: string; /** diff --git a/src/api/resources/components/client/requests/ComponentsListRequest.ts b/src/api/resources/components/client/requests/ComponentsListRequest.ts index 15895412..04d1beb5 100644 --- a/src/api/resources/components/client/requests/ComponentsListRequest.ts +++ b/src/api/resources/components/client/requests/ComponentsListRequest.ts @@ -5,7 +5,9 @@ /** * @example * { - * branchId: "68026fa68ef6dc744c75b833" + * branchId: "68026fa68ef6dc744c75b833", + * limit: 1.1, + * offset: 1.1 * } */ export interface ComponentsListRequest { diff --git a/src/api/resources/components/types/ComponentDomWriteNodesItem.ts b/src/api/resources/components/types/ComponentDomWriteNodesItem.ts index 0b3da451..4437947d 100644 --- a/src/api/resources/components/types/ComponentDomWriteNodesItem.ts +++ b/src/api/resources/components/types/ComponentDomWriteNodesItem.ts @@ -5,9 +5,9 @@ import * as Webflow from "../../../index"; export type ComponentDomWriteNodesItem = - | Webflow.TextNode - | Webflow.ComponentInstance + | Webflow.TextNodeWrite + | Webflow.ComponentInstanceNodePropertyOverridesWrite | Webflow.Select - | Webflow.TextInput - | Webflow.SubmitButton - | Webflow.SearchButton; + | Webflow.TextInputNodeWrite + | Webflow.SubmitButtonNodeWrite + | Webflow.SearchButtonNodeWrite; diff --git a/src/api/resources/ecommerce/client/Client.ts b/src/api/resources/ecommerce/client/Client.ts index 0bcf424d..f2e260ed 100644 --- a/src/api/resources/ecommerce/client/Client.ts +++ b/src/api/resources/ecommerce/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Ecommerce { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace Ecommerce { export class Ecommerce { protected readonly _options: Ecommerce.Options; - constructor(_options: Ecommerce.Options) { + constructor(_options: Ecommerce.Options = {}) { this._options = _options; } @@ -179,7 +179,12 @@ export class Ecommerce { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/forms/client/Client.ts b/src/api/resources/forms/client/Client.ts index 8884d200..bb744b6a 100644 --- a/src/api/resources/forms/client/Client.ts +++ b/src/api/resources/forms/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Forms { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -38,7 +38,7 @@ export declare namespace Forms { export class Forms { protected readonly _options: Forms.Options; - constructor(_options: Forms.Options) { + constructor(_options: Forms.Options = {}) { this._options = _options; } @@ -60,7 +60,10 @@ export class Forms { * @throws {@link Webflow.InternalServerError} * * @example - * await client.forms.list("580e63e98c9a982ac9b8b741") + * await client.forms.list("580e63e98c9a982ac9b8b741", { + * limit: 1.1, + * offset: 1.1 + * }) */ public list( siteId: string, @@ -349,7 +352,10 @@ export class Forms { * @throws {@link Webflow.InternalServerError} * * @example - * await client.forms.listSubmissions("580e63e98c9a982ac9b8b741") + * await client.forms.listSubmissions("580e63e98c9a982ac9b8b741", { + * offset: 1.1, + * limit: 1.1 + * }) */ public listSubmissions( formId: string, @@ -920,7 +926,9 @@ export class Forms { * * @example * await client.forms.listSubmissionsBySite("580e63e98c9a982ac9b8b741", { - * elementId: "18259716-3e5a-646a-5f41-5dc4b9405aa0" + * elementId: "18259716-3e5a-646a-5f41-5dc4b9405aa0", + * offset: 1.1, + * limit: 1.1 * }) */ public listSubmissionsBySite( @@ -1059,7 +1067,604 @@ export class Forms { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + /** + * List form submissions for a given form within a specific site. + * + * Required scope | `forms:read` + * + * @param {string} siteId - Unique identifier for a Site + * @param {string} formId - Unique identifier for a Form + * @param {Webflow.FormsListSubmissionsByFormAndSiteRequest} request + * @param {Forms.RequestOptions} requestOptions - Request-specific configuration. + * + * @throws {@link Webflow.BadRequestError} + * @throws {@link Webflow.UnauthorizedError} + * @throws {@link Webflow.ForbiddenError} + * @throws {@link Webflow.NotFoundError} + * @throws {@link Webflow.TooManyRequestsError} + * @throws {@link Webflow.InternalServerError} + * + * @example + * await client.forms.listSubmissionsByFormAndSite("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741", { + * offset: 1.1, + * limit: 1.1 + * }) + */ + public listSubmissionsByFormAndSite( + siteId: string, + formId: string, + request: Webflow.FormsListSubmissionsByFormAndSiteRequest = {}, + requestOptions?: Forms.RequestOptions, + ): core.HttpResponsePromise { + return core.HttpResponsePromise.fromPromise( + this.__listSubmissionsByFormAndSite(siteId, formId, request, requestOptions), + ); + } + + private async __listSubmissionsByFormAndSite( + siteId: string, + formId: string, + request: Webflow.FormsListSubmissionsByFormAndSiteRequest = {}, + requestOptions?: Forms.RequestOptions, + ): Promise> { + const { offset, limit } = request; + const _queryParams: Record = {}; + if (offset != null) { + _queryParams["offset"] = offset.toString(); + } + + if (limit != null) { + _queryParams["limit"] = limit.toString(); + } + + const _response = await core.fetcher({ + url: urlJoin( + (await core.Supplier.get(this._options.baseUrl)) ?? + ((await core.Supplier.get(this._options.environment)) ?? environments.WebflowEnvironment.DataApi) + .base, + `sites/${encodeURIComponent(siteId)}/forms/${encodeURIComponent(formId)}/submissions`, + ), + method: "GET", + headers: mergeHeaders( + this._options?.headers, + mergeOnlyDefinedHeaders({ Authorization: await this._getAuthorizationHeader() }), + requestOptions?.headers, + ), + queryParameters: _queryParams, + timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000, + maxRetries: requestOptions?.maxRetries, + abortSignal: requestOptions?.abortSignal, + }); + if (_response.ok) { + return { + data: serializers.FormSubmissionList.parseOrThrow(_response.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + rawResponse: _response.rawResponse, + }; + } + + if (_response.error.reason === "status-code") { + switch (_response.error.statusCode) { + case 400: + throw new Webflow.BadRequestError(_response.error.body, _response.rawResponse); + case 401: + throw new Webflow.UnauthorizedError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + case 403: + throw new Webflow.ForbiddenError(_response.error.body, _response.rawResponse); + case 404: + throw new Webflow.NotFoundError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + case 429: + throw new Webflow.TooManyRequestsError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + case 500: + throw new Webflow.InternalServerError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + default: + throw new errors.WebflowError({ + statusCode: _response.error.statusCode, + body: _response.error.body, + rawResponse: _response.rawResponse, + }); + } + } + + switch (_response.error.reason) { + case "non-json": + throw new errors.WebflowError({ + statusCode: _response.error.statusCode, + body: _response.error.rawBody, + rawResponse: _response.rawResponse, + }); + case "timeout": + throw new errors.WebflowTimeoutError( + "Timeout exceeded when calling GET /sites/{site_id}/forms/{form_id}/submissions.", + ); + case "unknown": + throw new errors.WebflowError({ + message: _response.error.errorMessage, + rawResponse: _response.rawResponse, + }); + } + } + + /** + * Get information about a form submission within a specific site. + * + * Required scope | `forms:read` + * + * @param {string} siteId - Unique identifier for a Site + * @param {string} formSubmissionId - Unique identifier for a Form Submission + * @param {Forms.RequestOptions} requestOptions - Request-specific configuration. + * + * @throws {@link Webflow.BadRequestError} + * @throws {@link Webflow.UnauthorizedError} + * @throws {@link Webflow.ForbiddenError} + * @throws {@link Webflow.NotFoundError} + * @throws {@link Webflow.TooManyRequestsError} + * @throws {@link Webflow.InternalServerError} + * + * @example + * await client.forms.getSubmissionBySite("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741") + */ + public getSubmissionBySite( + siteId: string, + formSubmissionId: string, + requestOptions?: Forms.RequestOptions, + ): core.HttpResponsePromise { + return core.HttpResponsePromise.fromPromise( + this.__getSubmissionBySite(siteId, formSubmissionId, requestOptions), + ); + } + + private async __getSubmissionBySite( + siteId: string, + formSubmissionId: string, + requestOptions?: Forms.RequestOptions, + ): Promise> { + const _response = await core.fetcher({ + url: urlJoin( + (await core.Supplier.get(this._options.baseUrl)) ?? + ((await core.Supplier.get(this._options.environment)) ?? environments.WebflowEnvironment.DataApi) + .base, + `sites/${encodeURIComponent(siteId)}/form_submissions/${encodeURIComponent(formSubmissionId)}`, + ), + method: "GET", + headers: mergeHeaders( + this._options?.headers, + mergeOnlyDefinedHeaders({ Authorization: await this._getAuthorizationHeader() }), + requestOptions?.headers, + ), + timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000, + maxRetries: requestOptions?.maxRetries, + abortSignal: requestOptions?.abortSignal, + }); + if (_response.ok) { + return { + data: serializers.FormSubmission.parseOrThrow(_response.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + rawResponse: _response.rawResponse, + }; + } + + if (_response.error.reason === "status-code") { + switch (_response.error.statusCode) { + case 400: + throw new Webflow.BadRequestError(_response.error.body, _response.rawResponse); + case 401: + throw new Webflow.UnauthorizedError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + case 403: + throw new Webflow.ForbiddenError(_response.error.body, _response.rawResponse); + case 404: + throw new Webflow.NotFoundError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + case 429: + throw new Webflow.TooManyRequestsError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + case 500: + throw new Webflow.InternalServerError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + default: + throw new errors.WebflowError({ + statusCode: _response.error.statusCode, + body: _response.error.body, + rawResponse: _response.rawResponse, + }); + } + } + + switch (_response.error.reason) { + case "non-json": + throw new errors.WebflowError({ + statusCode: _response.error.statusCode, + body: _response.error.rawBody, + rawResponse: _response.rawResponse, + }); + case "timeout": + throw new errors.WebflowTimeoutError( + "Timeout exceeded when calling GET /sites/{site_id}/form_submissions/{form_submission_id}.", + ); + case "unknown": + throw new errors.WebflowError({ + message: _response.error.errorMessage, + rawResponse: _response.rawResponse, + }); + } + } + + /** + * Delete a form submission within a specific site. + * + * Required scope | `forms:write` + * + * @param {string} siteId - Unique identifier for a Site + * @param {string} formSubmissionId - Unique identifier for a Form Submission + * @param {Forms.RequestOptions} requestOptions - Request-specific configuration. + * + * @throws {@link Webflow.BadRequestError} + * @throws {@link Webflow.UnauthorizedError} + * @throws {@link Webflow.ForbiddenError} + * @throws {@link Webflow.NotFoundError} + * @throws {@link Webflow.ConflictError} + * @throws {@link Webflow.TooManyRequestsError} + * @throws {@link Webflow.InternalServerError} + * + * @example + * await client.forms.deleteSubmissionBySite("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741") + */ + public deleteSubmissionBySite( + siteId: string, + formSubmissionId: string, + requestOptions?: Forms.RequestOptions, + ): core.HttpResponsePromise { + return core.HttpResponsePromise.fromPromise( + this.__deleteSubmissionBySite(siteId, formSubmissionId, requestOptions), + ); + } + + private async __deleteSubmissionBySite( + siteId: string, + formSubmissionId: string, + requestOptions?: Forms.RequestOptions, + ): Promise> { + const _response = await core.fetcher({ + url: urlJoin( + (await core.Supplier.get(this._options.baseUrl)) ?? + ((await core.Supplier.get(this._options.environment)) ?? environments.WebflowEnvironment.DataApi) + .base, + `sites/${encodeURIComponent(siteId)}/form_submissions/${encodeURIComponent(formSubmissionId)}`, + ), + method: "DELETE", + headers: mergeHeaders( + this._options?.headers, + mergeOnlyDefinedHeaders({ Authorization: await this._getAuthorizationHeader() }), + requestOptions?.headers, + ), + timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000, + maxRetries: requestOptions?.maxRetries, + abortSignal: requestOptions?.abortSignal, + }); + if (_response.ok) { + return { data: undefined, rawResponse: _response.rawResponse }; + } + + if (_response.error.reason === "status-code") { + switch (_response.error.statusCode) { + case 400: + throw new Webflow.BadRequestError(_response.error.body, _response.rawResponse); + case 401: + throw new Webflow.UnauthorizedError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + case 403: + throw new Webflow.ForbiddenError(_response.error.body, _response.rawResponse); + case 404: + throw new Webflow.NotFoundError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + case 409: + throw new Webflow.ConflictError(_response.error.body, _response.rawResponse); + case 429: + throw new Webflow.TooManyRequestsError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + case 500: + throw new Webflow.InternalServerError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + default: + throw new errors.WebflowError({ + statusCode: _response.error.statusCode, + body: _response.error.body, + rawResponse: _response.rawResponse, + }); + } + } + + switch (_response.error.reason) { + case "non-json": + throw new errors.WebflowError({ + statusCode: _response.error.statusCode, + body: _response.error.rawBody, + rawResponse: _response.rawResponse, + }); + case "timeout": + throw new errors.WebflowTimeoutError( + "Timeout exceeded when calling DELETE /sites/{site_id}/form_submissions/{form_submission_id}.", + ); + case "unknown": + throw new errors.WebflowError({ + message: _response.error.errorMessage, + rawResponse: _response.rawResponse, + }); + } + } + + /** + * Update hidden fields on a form submission within a specific site. + * + * Required scope | `forms:write` + * + * @param {string} siteId - Unique identifier for a Site + * @param {string} formSubmissionId - Unique identifier for a Form Submission + * @param {Webflow.FormsUpdateSubmissionBySiteRequest} request + * @param {Forms.RequestOptions} requestOptions - Request-specific configuration. + * + * @throws {@link Webflow.BadRequestError} + * @throws {@link Webflow.UnauthorizedError} + * @throws {@link Webflow.ForbiddenError} + * @throws {@link Webflow.NotFoundError} + * @throws {@link Webflow.ConflictError} + * @throws {@link Webflow.TooManyRequestsError} + * @throws {@link Webflow.InternalServerError} + * + * @example + * await client.forms.updateSubmissionBySite("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741") + */ + public updateSubmissionBySite( + siteId: string, + formSubmissionId: string, + request: Webflow.FormsUpdateSubmissionBySiteRequest = {}, + requestOptions?: Forms.RequestOptions, + ): core.HttpResponsePromise { + return core.HttpResponsePromise.fromPromise( + this.__updateSubmissionBySite(siteId, formSubmissionId, request, requestOptions), + ); + } + + private async __updateSubmissionBySite( + siteId: string, + formSubmissionId: string, + request: Webflow.FormsUpdateSubmissionBySiteRequest = {}, + requestOptions?: Forms.RequestOptions, + ): Promise> { + const _response = await core.fetcher({ + url: urlJoin( + (await core.Supplier.get(this._options.baseUrl)) ?? + ((await core.Supplier.get(this._options.environment)) ?? environments.WebflowEnvironment.DataApi) + .base, + `sites/${encodeURIComponent(siteId)}/form_submissions/${encodeURIComponent(formSubmissionId)}`, + ), + method: "PATCH", + headers: mergeHeaders( + this._options?.headers, + mergeOnlyDefinedHeaders({ Authorization: await this._getAuthorizationHeader() }), + requestOptions?.headers, + ), + contentType: "application/json", + requestType: "json", + body: serializers.FormsUpdateSubmissionBySiteRequest.jsonOrThrow(request, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + }), + timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000, + maxRetries: requestOptions?.maxRetries, + abortSignal: requestOptions?.abortSignal, + }); + if (_response.ok) { + return { + data: serializers.FormSubmission.parseOrThrow(_response.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + rawResponse: _response.rawResponse, + }; + } + + if (_response.error.reason === "status-code") { + switch (_response.error.statusCode) { + case 400: + throw new Webflow.BadRequestError(_response.error.body, _response.rawResponse); + case 401: + throw new Webflow.UnauthorizedError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + case 403: + throw new Webflow.ForbiddenError(_response.error.body, _response.rawResponse); + case 404: + throw new Webflow.NotFoundError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + case 409: + throw new Webflow.ConflictError(_response.error.body, _response.rawResponse); + case 429: + throw new Webflow.TooManyRequestsError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + case 500: + throw new Webflow.InternalServerError( + serializers.Error_.parseOrThrow(_response.error.body, { + unrecognizedObjectKeys: "passthrough", + allowUnrecognizedUnionMembers: true, + allowUnrecognizedEnumValues: true, + skipValidation: true, + breadcrumbsPrefix: ["response"], + }), + _response.rawResponse, + ); + default: + throw new errors.WebflowError({ + statusCode: _response.error.statusCode, + body: _response.error.body, + rawResponse: _response.rawResponse, + }); + } + } + + switch (_response.error.reason) { + case "non-json": + throw new errors.WebflowError({ + statusCode: _response.error.statusCode, + body: _response.error.rawBody, + rawResponse: _response.rawResponse, + }); + case "timeout": + throw new errors.WebflowTimeoutError( + "Timeout exceeded when calling PATCH /sites/{site_id}/form_submissions/{form_submission_id}.", + ); + case "unknown": + throw new errors.WebflowError({ + message: _response.error.errorMessage, + rawResponse: _response.rawResponse, + }); + } + } + + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/forms/client/requests/FormsListRequest.ts b/src/api/resources/forms/client/requests/FormsListRequest.ts index 5341bfb2..4e085579 100644 --- a/src/api/resources/forms/client/requests/FormsListRequest.ts +++ b/src/api/resources/forms/client/requests/FormsListRequest.ts @@ -4,7 +4,10 @@ /** * @example - * {} + * { + * limit: 1.1, + * offset: 1.1 + * } */ export interface FormsListRequest { /** diff --git a/src/api/resources/forms/client/requests/FormsListSubmissionsByFormAndSiteRequest.ts b/src/api/resources/forms/client/requests/FormsListSubmissionsByFormAndSiteRequest.ts new file mode 100644 index 00000000..a411a145 --- /dev/null +++ b/src/api/resources/forms/client/requests/FormsListSubmissionsByFormAndSiteRequest.ts @@ -0,0 +1,21 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +/** + * @example + * { + * offset: 1.1, + * limit: 1.1 + * } + */ +export interface FormsListSubmissionsByFormAndSiteRequest { + /** + * Offset used for pagination if the results have more than limit records + */ + offset?: number; + /** + * Maximum number of records to be returned (max limit: 100) + */ + limit?: number; +} diff --git a/src/api/resources/forms/client/requests/FormsListSubmissionsBySiteRequest.ts b/src/api/resources/forms/client/requests/FormsListSubmissionsBySiteRequest.ts index 1b38bff2..8b7ddaf4 100644 --- a/src/api/resources/forms/client/requests/FormsListSubmissionsBySiteRequest.ts +++ b/src/api/resources/forms/client/requests/FormsListSubmissionsBySiteRequest.ts @@ -5,7 +5,9 @@ /** * @example * { - * elementId: "18259716-3e5a-646a-5f41-5dc4b9405aa0" + * elementId: "18259716-3e5a-646a-5f41-5dc4b9405aa0", + * offset: 1.1, + * limit: 1.1 * } */ export interface FormsListSubmissionsBySiteRequest { diff --git a/src/api/resources/forms/client/requests/FormsListSubmissionsRequest.ts b/src/api/resources/forms/client/requests/FormsListSubmissionsRequest.ts index 68766ac2..56f85c8a 100644 --- a/src/api/resources/forms/client/requests/FormsListSubmissionsRequest.ts +++ b/src/api/resources/forms/client/requests/FormsListSubmissionsRequest.ts @@ -4,7 +4,10 @@ /** * @example - * {} + * { + * offset: 1.1, + * limit: 1.1 + * } */ export interface FormsListSubmissionsRequest { /** diff --git a/src/api/resources/forms/client/requests/FormsUpdateSubmissionBySiteRequest.ts b/src/api/resources/forms/client/requests/FormsUpdateSubmissionBySiteRequest.ts new file mode 100644 index 00000000..eae5bfb0 --- /dev/null +++ b/src/api/resources/forms/client/requests/FormsUpdateSubmissionBySiteRequest.ts @@ -0,0 +1,12 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +/** + * @example + * {} + */ +export interface FormsUpdateSubmissionBySiteRequest { + /** An existing **hidden field** defined on the form schema, and the corresponding value to set */ + formSubmissionData?: Record; +} diff --git a/src/api/resources/forms/client/requests/index.ts b/src/api/resources/forms/client/requests/index.ts index 44ba90b9..00ff96b6 100644 --- a/src/api/resources/forms/client/requests/index.ts +++ b/src/api/resources/forms/client/requests/index.ts @@ -2,3 +2,5 @@ export { type FormsListRequest } from "./FormsListRequest"; export { type FormsListSubmissionsRequest } from "./FormsListSubmissionsRequest"; export { type FormsUpdateSubmissionRequest } from "./FormsUpdateSubmissionRequest"; export { type FormsListSubmissionsBySiteRequest } from "./FormsListSubmissionsBySiteRequest"; +export { type FormsListSubmissionsByFormAndSiteRequest } from "./FormsListSubmissionsByFormAndSiteRequest"; +export { type FormsUpdateSubmissionBySiteRequest } from "./FormsUpdateSubmissionBySiteRequest"; diff --git a/src/api/resources/inventory/client/Client.ts b/src/api/resources/inventory/client/Client.ts index b621b366..7448e5be 100644 --- a/src/api/resources/inventory/client/Client.ts +++ b/src/api/resources/inventory/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Inventory { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -38,7 +38,7 @@ export declare namespace Inventory { export class Inventory { protected readonly _options: Inventory.Options; - constructor(_options: Inventory.Options) { + constructor(_options: Inventory.Options = {}) { this._options = _options; } @@ -344,7 +344,12 @@ export class Inventory { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/orders/client/Client.ts b/src/api/resources/orders/client/Client.ts index 820f6df0..a2d5a6d7 100644 --- a/src/api/resources/orders/client/Client.ts +++ b/src/api/resources/orders/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Orders { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -38,7 +38,7 @@ export declare namespace Orders { export class Orders { protected readonly _options: Orders.Options; - constructor(_options: Orders.Options) { + constructor(_options: Orders.Options = {}) { this._options = _options; } @@ -60,7 +60,11 @@ export class Orders { * @throws {@link Webflow.InternalServerError} * * @example - * await client.orders.list("580e63e98c9a982ac9b8b741") + * await client.orders.list("580e63e98c9a982ac9b8b741", { + * status: "pending", + * offset: 1.1, + * limit: 1.1 + * }) */ public list( siteId: string, @@ -951,7 +955,12 @@ export class Orders { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/orders/client/requests/OrdersListRequest.ts b/src/api/resources/orders/client/requests/OrdersListRequest.ts index 6282942d..ac45d33f 100644 --- a/src/api/resources/orders/client/requests/OrdersListRequest.ts +++ b/src/api/resources/orders/client/requests/OrdersListRequest.ts @@ -6,7 +6,11 @@ import * as Webflow from "../../../../index"; /** * @example - * {} + * { + * status: "pending", + * offset: 1.1, + * limit: 1.1 + * } */ export interface OrdersListRequest { /** diff --git a/src/api/resources/pages/client/Client.ts b/src/api/resources/pages/client/Client.ts index e39ecb53..abc05512 100644 --- a/src/api/resources/pages/client/Client.ts +++ b/src/api/resources/pages/client/Client.ts @@ -16,7 +16,7 @@ export declare namespace Pages { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -40,7 +40,7 @@ export class Pages { protected readonly _options: Pages.Options; protected _scripts: Scripts | undefined; - constructor(_options: Pages.Options) { + constructor(_options: Pages.Options = {}) { this._options = _options; } @@ -65,7 +65,9 @@ export class Pages { * * @example * await client.pages.list("580e63e98c9a982ac9b8b741", { - * localeId: "65427cf400e02b306eaa04a0" + * localeId: "65427cf400e02b306eaa04a0", + * limit: 1.1, + * offset: 1.1 * }) */ public list( @@ -347,10 +349,6 @@ export class Pages { /** * Update Page-level metadata, including SEO and Open Graph fields. * - * - * Note: When updating Page Metadata in secondary locales, you may only add `slug` to the request if your Site has the [Advanced or Enterprise Localization](https://webflow.com/localization) add-on. - * - * * Required scope | `pages:write` * * @param {string} pageId - Unique identifier for a Page @@ -512,11 +510,9 @@ export class Pages { } /** - * Get content from a static page. This includes text nodes, image nodes, select nodes, text input nodes, submit button nodes, and component instances with [property overrides](https://help.webflow.com/hc/en-us/articles/33961219350547-Component-properties#how-to-modify-property-values-on-component-instances). + * Get text and component instance content from a static page. * - * To retrieve the static content of a component instance, use the [Get Component Content](/data/reference/pages-and-components/components/get-content) endpoint. - * - * If you do not include a `localeId` in your request, the response will return any content that can be localized from the Primary locale. + * Localization * * Required scope | `pages:read` * @@ -533,7 +529,9 @@ export class Pages { * * @example * await client.pages.getContent("63c720f9347c2139b248e552", { - * localeId: "65427cf400e02b306eaa04a0" + * localeId: "65427cf400e02b306eaa04a0", + * limit: 1.1, + * offset: 1.1 * }) */ public getContent( @@ -674,8 +672,9 @@ export class Pages { * This endpoint updates content on a static page in **secondary locales**. It supports updating up to 1000 nodes in a single request. * * Before making updates: - * 1. Use the [get page content](/data/reference/pages-and-components/pages/get-content) endpoint to identify available content nodes and their types - * 2. If the page has component instances, retrieve the component's properties that you'll override using the [get component properties](/data/reference/pages-and-components/components/get-properties) endpoint + * 1. Use the [get page content](/data/reference/pages-and-components/pages/get-content) endpoint to identify available content nodes and their types. + * 2. If the page has component instances, retrieve the component's properties that you'll override using the [get component properties](/data/reference/pages-and-components/components/get-properties) endpoint. + * 3. DOM elements may include a `data-w-id` attribute. This attribute is used by Webflow to maintain custom attributes and links across locales. Always include the original `data-w-id` value in your update requests to ensure consistent behavior across all locales. * * * This endpoint is specifically for localized pages. Ensure that the specified `localeId` is a valid **secondary locale** for the site otherwise the request will fail. @@ -861,7 +860,12 @@ export class Pages { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/pages/client/requests/PageMetadataWrite.ts b/src/api/resources/pages/client/requests/PageMetadataWrite.ts index 4e85b1ff..6b91f91c 100644 --- a/src/api/resources/pages/client/requests/PageMetadataWrite.ts +++ b/src/api/resources/pages/client/requests/PageMetadataWrite.ts @@ -24,12 +24,19 @@ import * as Webflow from "../../../../index"; */ export interface PageMetadataWrite { /** - * Unique identifier for a specific locale. Applicable, when using localization. + * Unique identifier for a specific Locale. + * + * [Lear more about localization.](/data/v2.0.0/docs/working-with-localization) */ localeId?: string; /** Title for the page */ title?: string; - /** Slug for the page */ + /** + * Slug for the page. + * + * + * **Note:** Updating slugs in secondary locales is only supported in Advanced and Enterprise localization add-on plans. + */ slug?: string; /** SEO-related fields for the Page */ seo?: Webflow.PageMetadataWriteSeo; diff --git a/src/api/resources/pages/client/requests/PagesGetContentRequest.ts b/src/api/resources/pages/client/requests/PagesGetContentRequest.ts index 498d1f87..e28a93d2 100644 --- a/src/api/resources/pages/client/requests/PagesGetContentRequest.ts +++ b/src/api/resources/pages/client/requests/PagesGetContentRequest.ts @@ -5,12 +5,16 @@ /** * @example * { - * localeId: "65427cf400e02b306eaa04a0" + * localeId: "65427cf400e02b306eaa04a0", + * limit: 1.1, + * offset: 1.1 * } */ export interface PagesGetContentRequest { /** - * Unique identifier for a specific locale. Applicable, when using localization. + * Unique identifier for a specific Locale. + * + * [Lear more about localization.](/data/v2.0.0/docs/working-with-localization) */ localeId?: string; /** diff --git a/src/api/resources/pages/client/requests/PagesGetMetadataRequest.ts b/src/api/resources/pages/client/requests/PagesGetMetadataRequest.ts index 6afc0c77..68114fa7 100644 --- a/src/api/resources/pages/client/requests/PagesGetMetadataRequest.ts +++ b/src/api/resources/pages/client/requests/PagesGetMetadataRequest.ts @@ -10,7 +10,9 @@ */ export interface PagesGetMetadataRequest { /** - * Unique identifier for a specific locale. Applicable, when using localization. + * Unique identifier for a specific Locale. + * + * [Lear more about localization.](/data/v2.0.0/docs/working-with-localization) */ localeId?: string; } diff --git a/src/api/resources/pages/client/requests/PagesListRequest.ts b/src/api/resources/pages/client/requests/PagesListRequest.ts index 5ba1736d..adcce34a 100644 --- a/src/api/resources/pages/client/requests/PagesListRequest.ts +++ b/src/api/resources/pages/client/requests/PagesListRequest.ts @@ -5,12 +5,16 @@ /** * @example * { - * localeId: "65427cf400e02b306eaa04a0" + * localeId: "65427cf400e02b306eaa04a0", + * limit: 1.1, + * offset: 1.1 * } */ export interface PagesListRequest { /** - * Unique identifier for a specific locale. Applicable, when using localization. + * Unique identifier for a specific Locale. + * + * [Lear more about localization.](/data/v2.0.0/docs/working-with-localization) */ localeId?: string; /** diff --git a/src/api/resources/pages/resources/scripts/client/Client.ts b/src/api/resources/pages/resources/scripts/client/Client.ts index febd913c..2622188b 100644 --- a/src/api/resources/pages/resources/scripts/client/Client.ts +++ b/src/api/resources/pages/resources/scripts/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Scripts { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace Scripts { export class Scripts { protected readonly _options: Scripts.Options; - constructor(_options: Scripts.Options) { + constructor(_options: Scripts.Options = {}) { this._options = _options; } @@ -459,7 +459,12 @@ export class Scripts { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/pages/types/PageDomWriteNodesItem.ts b/src/api/resources/pages/types/PageDomWriteNodesItem.ts index 689d80b3..09895469 100644 --- a/src/api/resources/pages/types/PageDomWriteNodesItem.ts +++ b/src/api/resources/pages/types/PageDomWriteNodesItem.ts @@ -5,9 +5,9 @@ import * as Webflow from "../../../index"; export type PageDomWriteNodesItem = - | Webflow.TextNode - | Webflow.ComponentInstance + | Webflow.TextNodeWrite + | Webflow.ComponentInstanceNodePropertyOverridesWrite | Webflow.Select - | Webflow.TextInput - | Webflow.SubmitButton - | Webflow.SearchButton; + | Webflow.TextInputNodeWrite + | Webflow.SubmitButtonNodeWrite + | Webflow.SearchButtonNodeWrite; diff --git a/src/api/resources/products/client/Client.ts b/src/api/resources/products/client/Client.ts index 289e5d40..8da928e6 100644 --- a/src/api/resources/products/client/Client.ts +++ b/src/api/resources/products/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Products { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace Products { export class Products { protected readonly _options: Products.Options; - constructor(_options: Products.Options) { + constructor(_options: Products.Options = {}) { this._options = _options; } @@ -60,7 +60,10 @@ export class Products { * @throws {@link Webflow.InternalServerError} * * @example - * await client.products.list("580e63e98c9a982ac9b8b741") + * await client.products.list("580e63e98c9a982ac9b8b741", { + * offset: 1.1, + * limit: 1.1 + * }) */ public list( siteId: string, @@ -1051,7 +1054,12 @@ export class Products { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/products/client/requests/ProductsListRequest.ts b/src/api/resources/products/client/requests/ProductsListRequest.ts index f29738c4..d89e80fd 100644 --- a/src/api/resources/products/client/requests/ProductsListRequest.ts +++ b/src/api/resources/products/client/requests/ProductsListRequest.ts @@ -4,7 +4,10 @@ /** * @example - * {} + * { + * offset: 1.1, + * limit: 1.1 + * } */ export interface ProductsListRequest { /** diff --git a/src/api/resources/scripts/client/Client.ts b/src/api/resources/scripts/client/Client.ts index c8d9a525..dce2f569 100644 --- a/src/api/resources/scripts/client/Client.ts +++ b/src/api/resources/scripts/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Scripts { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace Scripts { export class Scripts { protected readonly _options: Scripts.Options; - constructor(_options: Scripts.Options) { + constructor(_options: Scripts.Options = {}) { this._options = _options; } @@ -482,7 +482,12 @@ export class Scripts { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/sites/client/Client.ts b/src/api/resources/sites/client/Client.ts index 49468918..ccbfcdc7 100644 --- a/src/api/resources/sites/client/Client.ts +++ b/src/api/resources/sites/client/Client.ts @@ -22,7 +22,7 @@ export declare namespace Sites { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -52,7 +52,7 @@ export class Sites { protected _comments: Comments | undefined; protected _scripts: Scripts | undefined; - constructor(_options: Sites.Options) { + constructor(_options: Sites.Options = {}) { this._options = _options; } @@ -1017,7 +1017,12 @@ export class Sites { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/sites/resources/activityLogs/client/Client.ts b/src/api/resources/sites/resources/activityLogs/client/Client.ts index be8ad675..3bb413b1 100644 --- a/src/api/resources/sites/resources/activityLogs/client/Client.ts +++ b/src/api/resources/sites/resources/activityLogs/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace ActivityLogs { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace ActivityLogs { export class ActivityLogs { protected readonly _options: ActivityLogs.Options; - constructor(_options: ActivityLogs.Options) { + constructor(_options: ActivityLogs.Options = {}) { this._options = _options; } @@ -56,7 +56,10 @@ export class ActivityLogs { * @throws {@link Webflow.InternalServerError} * * @example - * await client.sites.activityLogs.list("580e63e98c9a982ac9b8b741") + * await client.sites.activityLogs.list("580e63e98c9a982ac9b8b741", { + * limit: 1.1, + * offset: 1.1 + * }) */ public list( siteId: string, @@ -177,7 +180,12 @@ export class ActivityLogs { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/sites/resources/activityLogs/client/requests/ActivityLogsListRequest.ts b/src/api/resources/sites/resources/activityLogs/client/requests/ActivityLogsListRequest.ts index 190390d5..e9351691 100644 --- a/src/api/resources/sites/resources/activityLogs/client/requests/ActivityLogsListRequest.ts +++ b/src/api/resources/sites/resources/activityLogs/client/requests/ActivityLogsListRequest.ts @@ -4,7 +4,10 @@ /** * @example - * {} + * { + * limit: 1.1, + * offset: 1.1 + * } */ export interface ActivityLogsListRequest { /** diff --git a/src/api/resources/sites/resources/comments/client/Client.ts b/src/api/resources/sites/resources/comments/client/Client.ts index 7c08aa08..eeba63bf 100644 --- a/src/api/resources/sites/resources/comments/client/Client.ts +++ b/src/api/resources/sites/resources/comments/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Comments { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace Comments { export class Comments { protected readonly _options: Comments.Options; - constructor(_options: Comments.Options) { + constructor(_options: Comments.Options = {}) { this._options = _options; } @@ -60,7 +60,11 @@ export class Comments { * * @example * await client.sites.comments.listCommentThreads("580e63e98c9a982ac9b8b741", { - * localeId: "65427cf400e02b306eaa04a0" + * localeId: "65427cf400e02b306eaa04a0", + * offset: 1.1, + * limit: 1.1, + * sortBy: "createdOn", + * sortOrder: "asc" * }) */ public listCommentThreads( @@ -236,7 +240,11 @@ export class Comments { * * @example * await client.sites.comments.getCommentThread("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741", { - * localeId: "65427cf400e02b306eaa04a0" + * localeId: "65427cf400e02b306eaa04a0", + * offset: 1.1, + * limit: 1.1, + * sortBy: "createdOn", + * sortOrder: "asc" * }) */ public getCommentThread( @@ -418,7 +426,11 @@ export class Comments { * * @example * await client.sites.comments.listCommentReplies("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741", { - * localeId: "65427cf400e02b306eaa04a0" + * localeId: "65427cf400e02b306eaa04a0", + * offset: 1.1, + * limit: 1.1, + * sortBy: "createdOn", + * sortOrder: "asc" * }) */ public listCommentReplies( @@ -578,7 +590,12 @@ export class Comments { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/sites/resources/comments/client/requests/CommentsGetCommentThreadRequest.ts b/src/api/resources/sites/resources/comments/client/requests/CommentsGetCommentThreadRequest.ts index 451ff87b..5d0862c9 100644 --- a/src/api/resources/sites/resources/comments/client/requests/CommentsGetCommentThreadRequest.ts +++ b/src/api/resources/sites/resources/comments/client/requests/CommentsGetCommentThreadRequest.ts @@ -7,12 +7,18 @@ import * as Webflow from "../../../../../../index"; /** * @example * { - * localeId: "65427cf400e02b306eaa04a0" + * localeId: "65427cf400e02b306eaa04a0", + * offset: 1.1, + * limit: 1.1, + * sortBy: "createdOn", + * sortOrder: "asc" * } */ export interface CommentsGetCommentThreadRequest { /** - * Unique identifier for a specific locale. Applicable, when using localization. + * Unique identifier for a specific Locale. + * + * [Lear more about localization.](/data/v2.0.0/docs/working-with-localization) */ localeId?: string; /** diff --git a/src/api/resources/sites/resources/comments/client/requests/CommentsListCommentRepliesRequest.ts b/src/api/resources/sites/resources/comments/client/requests/CommentsListCommentRepliesRequest.ts index 5e2589dd..25c64593 100644 --- a/src/api/resources/sites/resources/comments/client/requests/CommentsListCommentRepliesRequest.ts +++ b/src/api/resources/sites/resources/comments/client/requests/CommentsListCommentRepliesRequest.ts @@ -7,12 +7,18 @@ import * as Webflow from "../../../../../../index"; /** * @example * { - * localeId: "65427cf400e02b306eaa04a0" + * localeId: "65427cf400e02b306eaa04a0", + * offset: 1.1, + * limit: 1.1, + * sortBy: "createdOn", + * sortOrder: "asc" * } */ export interface CommentsListCommentRepliesRequest { /** - * Unique identifier for a specific locale. Applicable, when using localization. + * Unique identifier for a specific Locale. + * + * [Lear more about localization.](/data/v2.0.0/docs/working-with-localization) */ localeId?: string; /** diff --git a/src/api/resources/sites/resources/comments/client/requests/CommentsListCommentThreadsRequest.ts b/src/api/resources/sites/resources/comments/client/requests/CommentsListCommentThreadsRequest.ts index 2f9fac0b..3aaa0c23 100644 --- a/src/api/resources/sites/resources/comments/client/requests/CommentsListCommentThreadsRequest.ts +++ b/src/api/resources/sites/resources/comments/client/requests/CommentsListCommentThreadsRequest.ts @@ -7,12 +7,18 @@ import * as Webflow from "../../../../../../index"; /** * @example * { - * localeId: "65427cf400e02b306eaa04a0" + * localeId: "65427cf400e02b306eaa04a0", + * offset: 1.1, + * limit: 1.1, + * sortBy: "createdOn", + * sortOrder: "asc" * } */ export interface CommentsListCommentThreadsRequest { /** - * Unique identifier for a specific locale. Applicable, when using localization. + * Unique identifier for a specific Locale. + * + * [Lear more about localization.](/data/v2.0.0/docs/working-with-localization) */ localeId?: string; /** diff --git a/src/api/resources/sites/resources/plans/client/Client.ts b/src/api/resources/sites/resources/plans/client/Client.ts index 8a4aed88..740813e2 100644 --- a/src/api/resources/sites/resources/plans/client/Client.ts +++ b/src/api/resources/sites/resources/plans/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Plans { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace Plans { export class Plans { protected readonly _options: Plans.Options; - constructor(_options: Plans.Options) { + constructor(_options: Plans.Options = {}) { this._options = _options; } @@ -173,7 +173,12 @@ export class Plans { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/sites/resources/redirects/client/Client.ts b/src/api/resources/sites/resources/redirects/client/Client.ts index ffa99f24..8d393634 100644 --- a/src/api/resources/sites/resources/redirects/client/Client.ts +++ b/src/api/resources/sites/resources/redirects/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Redirects { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace Redirects { export class Redirects { protected readonly _options: Redirects.Options; - constructor(_options: Redirects.Options) { + constructor(_options: Redirects.Options = {}) { this._options = _options; } @@ -619,7 +619,12 @@ export class Redirects { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/sites/resources/robotsTxt/client/Client.ts b/src/api/resources/sites/resources/robotsTxt/client/Client.ts index 6f527daa..719e5607 100644 --- a/src/api/resources/sites/resources/robotsTxt/client/Client.ts +++ b/src/api/resources/sites/resources/robotsTxt/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace RobotsTxt { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace RobotsTxt { export class RobotsTxt { protected readonly _options: RobotsTxt.Options; - constructor(_options: RobotsTxt.Options) { + constructor(_options: RobotsTxt.Options = {}) { this._options = _options; } @@ -628,7 +628,12 @@ export class RobotsTxt { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/sites/resources/scripts/client/Client.ts b/src/api/resources/sites/resources/scripts/client/Client.ts index 95660e93..dcc9031a 100644 --- a/src/api/resources/sites/resources/scripts/client/Client.ts +++ b/src/api/resources/sites/resources/scripts/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Scripts { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace Scripts { export class Scripts { protected readonly _options: Scripts.Options; - constructor(_options: Scripts.Options) { + constructor(_options: Scripts.Options = {}) { this._options = _options; } @@ -482,7 +482,10 @@ export class Scripts { * @throws {@link Webflow.InternalServerError} * * @example - * await client.sites.scripts.listCustomCodeBlocks("580e63e98c9a982ac9b8b741") + * await client.sites.scripts.listCustomCodeBlocks("580e63e98c9a982ac9b8b741", { + * offset: 1.1, + * limit: 1.1 + * }) */ public listCustomCodeBlocks( siteId: string, @@ -614,7 +617,12 @@ export class Scripts { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/sites/resources/scripts/client/requests/ScriptsListCustomCodeBlocksRequest.ts b/src/api/resources/sites/resources/scripts/client/requests/ScriptsListCustomCodeBlocksRequest.ts index 696f9805..5063abf4 100644 --- a/src/api/resources/sites/resources/scripts/client/requests/ScriptsListCustomCodeBlocksRequest.ts +++ b/src/api/resources/sites/resources/scripts/client/requests/ScriptsListCustomCodeBlocksRequest.ts @@ -4,7 +4,10 @@ /** * @example - * {} + * { + * offset: 1.1, + * limit: 1.1 + * } */ export interface ScriptsListCustomCodeBlocksRequest { /** diff --git a/src/api/resources/sites/resources/wellKnown/client/Client.ts b/src/api/resources/sites/resources/wellKnown/client/Client.ts index a52d8361..8346e2dd 100644 --- a/src/api/resources/sites/resources/wellKnown/client/Client.ts +++ b/src/api/resources/sites/resources/wellKnown/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace WellKnown { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace WellKnown { export class WellKnown { protected readonly _options: WellKnown.Options; - constructor(_options: WellKnown.Options) { + constructor(_options: WellKnown.Options = {}) { this._options = _options; } @@ -67,8 +67,9 @@ export class WellKnown { * * @example * await client.sites.wellKnown.put("580e63e98c9a982ac9b8b741", { - * fileName: "fileName", - * fileData: "fileData" + * fileName: "apple-app-site-association.txt", + * fileData: "{\n \"applinks\": {\n \"apps\": [],\n \"details\": [\n {\n \"appID\": \"ABCDE12345.com.example.app\",\n \"paths\": [ \"/*\", \"/some/path/*\" ]\n }\n ]\n }\n}\n", + * contentType: "application/json" * }) */ public put( @@ -323,7 +324,12 @@ export class WellKnown { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/sites/resources/wellKnown/client/requests/WellKnownFile.ts b/src/api/resources/sites/resources/wellKnown/client/requests/WellKnownFile.ts index 14b408f6..62a7c2cc 100644 --- a/src/api/resources/sites/resources/wellKnown/client/requests/WellKnownFile.ts +++ b/src/api/resources/sites/resources/wellKnown/client/requests/WellKnownFile.ts @@ -7,8 +7,9 @@ import * as Webflow from "../../../../../../index"; /** * @example * { - * fileName: "fileName", - * fileData: "fileData" + * fileName: "apple-app-site-association.txt", + * fileData: "{\n \"applinks\": {\n \"apps\": [],\n \"details\": [\n {\n \"appID\": \"ABCDE12345.com.example.app\",\n \"paths\": [ \"/*\", \"/some/path/*\" ]\n }\n ]\n }\n}\n", + * contentType: "application/json" * } */ export interface WellKnownFile { diff --git a/src/api/resources/token/client/Client.ts b/src/api/resources/token/client/Client.ts index a06c9113..8daffbd1 100644 --- a/src/api/resources/token/client/Client.ts +++ b/src/api/resources/token/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Token { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace Token { export class Token { protected readonly _options: Token.Options; - constructor(_options: Token.Options) { + constructor(_options: Token.Options = {}) { this._options = _options; } @@ -218,7 +218,12 @@ export class Token { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/users/client/Client.ts b/src/api/resources/users/client/Client.ts index 4b9bc67b..881c258e 100644 --- a/src/api/resources/users/client/Client.ts +++ b/src/api/resources/users/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Users { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace Users { export class Users { protected readonly _options: Users.Options; - constructor(_options: Users.Options) { + constructor(_options: Users.Options = {}) { this._options = _options; } @@ -56,7 +56,11 @@ export class Users { * @throws {@link Webflow.InternalServerError} * * @example - * await client.users.list("580e63e98c9a982ac9b8b741") + * await client.users.list("580e63e98c9a982ac9b8b741", { + * offset: 1.1, + * limit: 1.1, + * sort: "CreatedOn" + * }) */ public list( siteId: string, @@ -787,7 +791,12 @@ export class Users { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/users/client/requests/UsersListRequest.ts b/src/api/resources/users/client/requests/UsersListRequest.ts index 449c9389..e583aadb 100644 --- a/src/api/resources/users/client/requests/UsersListRequest.ts +++ b/src/api/resources/users/client/requests/UsersListRequest.ts @@ -6,7 +6,11 @@ import * as Webflow from "../../../../index"; /** * @example - * {} + * { + * offset: 1.1, + * limit: 1.1, + * sort: "CreatedOn" + * } */ export interface UsersListRequest { /** diff --git a/src/api/resources/webhooks/client/Client.ts b/src/api/resources/webhooks/client/Client.ts index 590a3993..3fef40e1 100644 --- a/src/api/resources/webhooks/client/Client.ts +++ b/src/api/resources/webhooks/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace Webhooks { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -38,7 +38,7 @@ export declare namespace Webhooks { export class Webhooks { protected readonly _options: Webhooks.Options; - constructor(_options: Webhooks.Options) { + constructor(_options: Webhooks.Options = {}) { this._options = _options; } @@ -576,7 +576,12 @@ export class Webhooks { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/workspaces/client/Client.ts b/src/api/resources/workspaces/client/Client.ts index c584ada4..579b9e20 100644 --- a/src/api/resources/workspaces/client/Client.ts +++ b/src/api/resources/workspaces/client/Client.ts @@ -11,7 +11,7 @@ export declare namespace Workspaces { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -21,7 +21,7 @@ export class Workspaces { protected readonly _options: Workspaces.Options; protected _auditLogs: AuditLogs | undefined; - constructor(_options: Workspaces.Options) { + constructor(_options: Workspaces.Options = {}) { this._options = _options; } diff --git a/src/api/resources/workspaces/resources/auditLogs/client/Client.ts b/src/api/resources/workspaces/resources/auditLogs/client/Client.ts index 3ddce97f..2891a903 100644 --- a/src/api/resources/workspaces/resources/auditLogs/client/Client.ts +++ b/src/api/resources/workspaces/resources/auditLogs/client/Client.ts @@ -15,7 +15,7 @@ export declare namespace AuditLogs { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; - accessToken: core.Supplier; + accessToken?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; } @@ -35,7 +35,7 @@ export declare namespace AuditLogs { export class AuditLogs { protected readonly _options: AuditLogs.Options; - constructor(_options: AuditLogs.Options) { + constructor(_options: AuditLogs.Options = {}) { this._options = _options; } @@ -58,8 +58,12 @@ export class AuditLogs { * * @example * await client.workspaces.auditLogs.getWorkspaceAuditLogs("hitchhikers-workspace", { - * from: new Date("2024-04-22T16:00:31.000Z"), - * to: new Date("2024-04-22T16:00:31.000Z") + * limit: 1.1, + * offset: 1.1, + * sortOrder: "asc", + * eventType: "user_access", + * from: new Date("2025-06-22T16:00:31.000Z"), + * to: new Date("2025-07-22T16:00:31.000Z") * }) */ public getWorkspaceAuditLogs( @@ -220,7 +224,12 @@ export class AuditLogs { } } - protected async _getAuthorizationHeader(): Promise { - return `Bearer ${await core.Supplier.get(this._options.accessToken)}`; + protected async _getAuthorizationHeader(): Promise { + const bearer = await core.Supplier.get(this._options.accessToken); + if (bearer != null) { + return `Bearer ${bearer}`; + } + + return undefined; } } diff --git a/src/api/resources/workspaces/resources/auditLogs/client/requests/AuditLogsGetWorkspaceAuditLogsRequest.ts b/src/api/resources/workspaces/resources/auditLogs/client/requests/AuditLogsGetWorkspaceAuditLogsRequest.ts index 4a360ad2..9d125874 100644 --- a/src/api/resources/workspaces/resources/auditLogs/client/requests/AuditLogsGetWorkspaceAuditLogsRequest.ts +++ b/src/api/resources/workspaces/resources/auditLogs/client/requests/AuditLogsGetWorkspaceAuditLogsRequest.ts @@ -7,8 +7,12 @@ import * as Webflow from "../../../../../../index"; /** * @example * { - * from: new Date("2024-04-22T16:00:31.000Z"), - * to: new Date("2024-04-22T16:00:31.000Z") + * limit: 1.1, + * offset: 1.1, + * sortOrder: "asc", + * eventType: "user_access", + * from: new Date("2025-06-22T16:00:31.000Z"), + * to: new Date("2025-07-22T16:00:31.000Z") * } */ export interface AuditLogsGetWorkspaceAuditLogsRequest { diff --git a/src/api/types/CollectionItemChanged.ts b/src/api/types/CollectionItemChanged.ts index 46083e63..1b301c10 100644 --- a/src/api/types/CollectionItemChanged.ts +++ b/src/api/types/CollectionItemChanged.ts @@ -10,5 +10,5 @@ import * as Webflow from "../index"; export interface CollectionItemChanged { /** The type of event that triggered the request */ triggerType: "collection_item_changed"; - payload: Webflow.CollectionItemChangedPayload; + payload: Webflow.SingleLocaleCreatedPayload; } diff --git a/src/api/types/CollectionItemChangedPayload.ts b/src/api/types/CollectionItemChangedPayload.ts deleted file mode 100644 index 1d162590..00000000 --- a/src/api/types/CollectionItemChangedPayload.ts +++ /dev/null @@ -1,7 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as Webflow from "../index"; - -export type CollectionItemChangedPayload = Webflow.SingleLocaleChangedPayload | Webflow.MultiLocaleChangedPayload; diff --git a/src/api/types/CollectionItemCreated.ts b/src/api/types/CollectionItemCreated.ts index ea139d1d..63474fa4 100644 --- a/src/api/types/CollectionItemCreated.ts +++ b/src/api/types/CollectionItemCreated.ts @@ -10,5 +10,5 @@ import * as Webflow from "../index"; export interface CollectionItemCreated { /** The type of event that triggered the request */ triggerType: "collection_item_created"; - payload: Webflow.CollectionItemCreatedPayload; + payload: Webflow.SingleLocaleCreatedPayload; } diff --git a/src/api/types/CollectionItemCreatedPayload.ts b/src/api/types/CollectionItemCreatedPayload.ts deleted file mode 100644 index 629ad5d3..00000000 --- a/src/api/types/CollectionItemCreatedPayload.ts +++ /dev/null @@ -1,7 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as Webflow from "../index"; - -export type CollectionItemCreatedPayload = Webflow.SingleLocaleCreatedPayload | Webflow.MultiLocaleCreatedPayload; diff --git a/src/api/types/CollectionItemPublished.ts b/src/api/types/CollectionItemPublished.ts new file mode 100644 index 00000000..ac069407 --- /dev/null +++ b/src/api/types/CollectionItemPublished.ts @@ -0,0 +1,11 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +import * as Webflow from "../index"; + +export interface CollectionItemPublished { + /** The type of event that triggered the request */ + triggerType?: string; + payload?: Webflow.Payload; +} diff --git a/src/api/types/ComponentInstance.ts b/src/api/types/ComponentInstanceNodePropertyOverridesWrite.ts similarity index 87% rename from src/api/types/ComponentInstance.ts rename to src/api/types/ComponentInstanceNodePropertyOverridesWrite.ts index 0454ca1d..2fe7cd3b 100644 --- a/src/api/types/ComponentInstance.ts +++ b/src/api/types/ComponentInstanceNodePropertyOverridesWrite.ts @@ -7,7 +7,7 @@ import * as Webflow from "../index"; /** * Update text property overrides of a component instance */ -export interface ComponentInstance { +export interface ComponentInstanceNodePropertyOverridesWrite { /** Node UUID */ nodeId: string; /** A list of component instance properties to override within the specified secondary locale. */ diff --git a/src/api/types/ComponentNodeDom.ts b/src/api/types/ComponentNode.ts similarity index 93% rename from src/api/types/ComponentNodeDom.ts rename to src/api/types/ComponentNode.ts index dd238ddd..6b1d4a62 100644 --- a/src/api/types/ComponentNodeDom.ts +++ b/src/api/types/ComponentNode.ts @@ -7,7 +7,7 @@ import * as Webflow from "../index"; /** * Represents a component instance within the DOM. It contains details about the component instance, such as its type and properties. */ -export interface ComponentNodeDom { +export interface ComponentNode { /** The unique identifier of the component instance node */ id: string; /** The unique identifier of the component */ diff --git a/src/api/types/Dom.ts b/src/api/types/Dom.ts index e84462ba..5a387c24 100644 --- a/src/api/types/Dom.ts +++ b/src/api/types/Dom.ts @@ -10,7 +10,7 @@ import * as Webflow from "../index"; export interface Dom { /** Page ID */ pageId?: string; - /** If the page is a branch, this is the ID of the branch */ + /** The unique identifier of a [specific page branch.](https://help.webflow.com/hc/en-us/articles/33961355506195-Page-branching) */ branchId?: string; nodes?: Webflow.Node[]; pagination?: Webflow.Pagination; diff --git a/src/api/types/ImageNodeDom.ts b/src/api/types/ImageNode.ts similarity index 94% rename from src/api/types/ImageNodeDom.ts rename to src/api/types/ImageNode.ts index 02048f84..8134be46 100644 --- a/src/api/types/ImageNodeDom.ts +++ b/src/api/types/ImageNode.ts @@ -7,7 +7,7 @@ import * as Webflow from "../index"; /** * Represents an image within the DOM. It contains details about the image, such as its alternative text (alt) for accessibility and an asset identifier for fetching the actual image resource. Additional attributes can be associated with the image for styling or other purposes. */ -export interface ImageNodeDom { +export interface ImageNode { /** Node UUID */ id: string; /** The image details of the node */ diff --git a/src/api/types/LocalizedItem.ts b/src/api/types/LocalizedItem.ts deleted file mode 100644 index 517b0bea..00000000 --- a/src/api/types/LocalizedItem.ts +++ /dev/null @@ -1,32 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -export interface LocalizedItem { - /** Collection ID the item belongs to */ - cid: string; - /** Unique identifier for the item */ - id: string; - /** Locale identifier for this version of the item */ - locale: string; - /** Whether the item is in draft state */ - draft: boolean; - /** Whether the item is archived */ - archived: boolean; - /** Name of the item */ - name: string; - /** URL-friendly version of the name */ - slug: string; - /** Timestamp of last update */ - updatedOn: Date; - /** Identifier of user who last updated the item */ - updatedBy: string; - /** Timestamp of creation */ - createdOn: Date; - /** Identifier of user who created the item */ - createdBy: string; - /** Timestamp of last publish, if published */ - publishedOn?: Date; - /** Identifier of user who last published the item */ - publishedBy?: string; -} diff --git a/src/api/types/MultiLocaleChangedPayload.ts b/src/api/types/MultiLocaleChangedPayload.ts deleted file mode 100644 index bec891f6..00000000 --- a/src/api/types/MultiLocaleChangedPayload.ts +++ /dev/null @@ -1,24 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as Webflow from "../index"; - -export interface MultiLocaleChangedPayload { - /** Unique identifier for the Item */ - id: string; - /** Unique identifier of the workspace */ - workspaceId: string; - /** Unique identifier of the site */ - siteId: string; - /** Unique identifier of the collection */ - collectionId: string; - /** Unique identifier of the CMS locale for this item */ - cmsLocaleId?: string; - lastPublished?: Date; - lastUpdated?: Date; - createdOn?: Date; - isArchived?: boolean; - isDraft?: boolean; - fieldData: Webflow.MultiLocaleChangedPayloadFieldData; -} diff --git a/src/api/types/MultiLocaleChangedPayloadFieldData.ts b/src/api/types/MultiLocaleChangedPayloadFieldData.ts deleted file mode 100644 index 43322f64..00000000 --- a/src/api/types/MultiLocaleChangedPayloadFieldData.ts +++ /dev/null @@ -1,12 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -export interface MultiLocaleChangedPayloadFieldData { - name: string; - slug: string; - /** Locale identifier for this version of the item */ - locale: string; - /** Accepts any additional properties */ - [key: string]: any; -} diff --git a/src/api/types/MultiLocaleCreatedPayload.ts b/src/api/types/MultiLocaleCreatedPayload.ts deleted file mode 100644 index d26e3f04..00000000 --- a/src/api/types/MultiLocaleCreatedPayload.ts +++ /dev/null @@ -1,18 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as Webflow from "../index"; - -export interface MultiLocaleCreatedPayload { - /** Unique identifier of the site */ - siteId: string; - /** Unique identifier of the workspace */ - workspaceId: string; - /** Unique identifier of the collection */ - collectionId: string; - /** Unique identifier of the CMS locale for this item */ - cmsLocaleId?: string; - /** Collection of localized items, keyed by locale index (0-n) */ - fieldData: Record; -} diff --git a/src/api/types/Node.ts b/src/api/types/Node.ts index 6d2d21fc..3aee1b92 100644 --- a/src/api/types/Node.ts +++ b/src/api/types/Node.ts @@ -17,31 +17,31 @@ export type Node = | Webflow.Node.SearchButton; export namespace Node { - export interface Text extends Webflow.TextNodeDom { + export interface Text extends Webflow.TextNode { type: "text"; } - export interface Image extends Webflow.ImageNodeDom { + export interface Image extends Webflow.ImageNode { type: "image"; } - export interface ComponentInstance extends Webflow.ComponentNodeDom { + export interface ComponentInstance extends Webflow.ComponentNode { type: "component-instance"; } - export interface TextInput extends Webflow.TextInputNodeDom { + export interface TextInput extends Webflow.TextInputNode { type: "text-input"; } - export interface Select extends Webflow.SelectNodeDom { + export interface Select extends Webflow.SelectNode { type: "select"; } - export interface SubmitButton extends Webflow.SubmitButtonNodeDom { + export interface SubmitButton extends Webflow.SubmitButtonNode { type: "submit-button"; } - export interface SearchButton extends Webflow.SearchButtonNodeDom { + export interface SearchButton extends Webflow.SearchButtonNode { type: "search-button"; } } diff --git a/src/api/types/Payload.ts b/src/api/types/Payload.ts new file mode 100644 index 00000000..4690b4cc --- /dev/null +++ b/src/api/types/Payload.ts @@ -0,0 +1,27 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +import * as Webflow from "../index"; + +/** + * The payload of data sent from Webflow + */ +export interface Payload { + /** The ID of the collection item that was unpublished */ + id?: string; + /** The ID of the site */ + siteId?: string; + /** The ID of the workspace */ + workspaceId?: string; + /** The ID of the collection */ + collectionId?: string; + /** Unique identifier of the CMS locale for this item */ + cmsLocaleId?: string; + lastPublished?: Date; + lastUpdated?: Date; + createdOn?: Date; + isArchived?: boolean; + isDraft?: boolean; + fieldData?: Webflow.PayloadFieldData; +} diff --git a/src/api/types/SingleLocaleChangedPayloadFieldData.ts b/src/api/types/PayloadFieldData.ts similarity index 76% rename from src/api/types/SingleLocaleChangedPayloadFieldData.ts rename to src/api/types/PayloadFieldData.ts index d566ccb2..526ec184 100644 --- a/src/api/types/SingleLocaleChangedPayloadFieldData.ts +++ b/src/api/types/PayloadFieldData.ts @@ -2,7 +2,7 @@ * This file was auto-generated by Fern from our API Definition. */ -export interface SingleLocaleChangedPayloadFieldData { +export interface PayloadFieldData { name: string; slug: string; /** Accepts any additional properties */ diff --git a/src/api/types/SearchButtonNodeDom.ts b/src/api/types/SearchButtonNode.ts similarity index 92% rename from src/api/types/SearchButtonNodeDom.ts rename to src/api/types/SearchButtonNode.ts index c049d03c..5c05178b 100644 --- a/src/api/types/SearchButtonNodeDom.ts +++ b/src/api/types/SearchButtonNode.ts @@ -5,7 +5,7 @@ /** * Represents search button elements within the DOM. It contains the text of the button. Additional attributes can be associated with the text for styling or other purposes. */ -export interface SearchButtonNodeDom { +export interface SearchButtonNode { /** Node UUID */ id: string; /** The text content of the search button. */ diff --git a/src/api/types/SearchButton.ts b/src/api/types/SearchButtonNodeWrite.ts similarity index 84% rename from src/api/types/SearchButton.ts rename to src/api/types/SearchButtonNodeWrite.ts index e7d1b806..b3e53d29 100644 --- a/src/api/types/SearchButton.ts +++ b/src/api/types/SearchButtonNodeWrite.ts @@ -5,7 +5,7 @@ /** * Update a search button node */ -export interface SearchButton { +export interface SearchButtonNodeWrite { /** Node UUID */ nodeId: string; /** The text content of the search button. */ diff --git a/src/api/types/SelectNodeDom.ts b/src/api/types/SelectNode.ts similarity index 94% rename from src/api/types/SelectNodeDom.ts rename to src/api/types/SelectNode.ts index f0d591f9..772862be 100644 --- a/src/api/types/SelectNodeDom.ts +++ b/src/api/types/SelectNode.ts @@ -7,7 +7,7 @@ import * as Webflow from "../index"; /** * Represents select elements within the DOM. It contains the list of choices in the select. Additional attributes can be associated with the text for styling or other purposes. */ -export interface SelectNodeDom { +export interface SelectNode { /** Node UUID */ id: string; /** The list of choices in this select node. */ diff --git a/src/api/types/SingleLocaleChangedPayload.ts b/src/api/types/SingleLocaleChangedPayload.ts deleted file mode 100644 index 5e2f5227..00000000 --- a/src/api/types/SingleLocaleChangedPayload.ts +++ /dev/null @@ -1,24 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as Webflow from "../index"; - -export interface SingleLocaleChangedPayload { - /** Unique identifier for the Item */ - id: string; - /** Unique identifier of the workspace */ - workspaceId: string; - /** Unique identifier of the site */ - siteId: string; - /** Unique identifier of the collection */ - collectionId: string; - /** Unique identifier of the CMS locale for this item */ - cmsLocaleId?: string; - lastPublished?: Date; - lastUpdated?: Date; - createdOn?: Date; - isArchived?: boolean; - isDraft?: boolean; - fieldData: Webflow.SingleLocaleChangedPayloadFieldData; -} diff --git a/src/api/types/SiteMembership.ts b/src/api/types/SiteMembership.ts index 48318af1..be0c8259 100644 --- a/src/api/types/SiteMembership.ts +++ b/src/api/types/SiteMembership.ts @@ -13,4 +13,5 @@ export interface SiteMembership { roleName?: string; /** The previous role that the user had */ previousRoleName?: string; + granularAccess?: Webflow.WorkspaceAuditLogItemPayloadSiteMembershipGranularAccess; } diff --git a/src/api/types/SiteMembershipAuditLogItemEventSubType.ts b/src/api/types/SiteMembershipAuditLogItemEventSubType.ts index 949efce8..7cf2375a 100644 --- a/src/api/types/SiteMembershipAuditLogItemEventSubType.ts +++ b/src/api/types/SiteMembershipAuditLogItemEventSubType.ts @@ -2,9 +2,14 @@ * This file was auto-generated by Fern from our API Definition. */ -export type SiteMembershipAuditLogItemEventSubType = "user_added" | "user_removed" | "user_role_updated"; +export type SiteMembershipAuditLogItemEventSubType = + | "user_added" + | "user_removed" + | "user_role_updated" + | "user_granular_access_updated"; export const SiteMembershipAuditLogItemEventSubType = { UserAdded: "user_added", UserRemoved: "user_removed", UserRoleUpdated: "user_role_updated", + UserGranularAccessUpdated: "user_granular_access_updated", } as const; diff --git a/src/api/types/SubmitButtonNodeDom.ts b/src/api/types/SubmitButtonNode.ts similarity index 93% rename from src/api/types/SubmitButtonNodeDom.ts rename to src/api/types/SubmitButtonNode.ts index e86f58c8..18b31327 100644 --- a/src/api/types/SubmitButtonNodeDom.ts +++ b/src/api/types/SubmitButtonNode.ts @@ -5,7 +5,7 @@ /** * Represents submit button elements within the DOM. It contains the text and waiting text of the button. Additional attributes can be associated with the text for styling or other purposes. */ -export interface SubmitButtonNodeDom { +export interface SubmitButtonNode { /** Node UUID */ id: string; /** The text content of the submit button. */ diff --git a/src/api/types/SubmitButton.ts b/src/api/types/SubmitButtonNodeWrite.ts similarity index 88% rename from src/api/types/SubmitButton.ts rename to src/api/types/SubmitButtonNodeWrite.ts index a0b0f91b..f7f5e428 100644 --- a/src/api/types/SubmitButton.ts +++ b/src/api/types/SubmitButtonNodeWrite.ts @@ -5,7 +5,7 @@ /** * Update a submit button node */ -export interface SubmitButton { +export interface SubmitButtonNodeWrite { /** Node UUID */ nodeId: string; /** The text content of the submit button. */ diff --git a/src/api/types/TextInputNodeDom.ts b/src/api/types/TextInputNode.ts similarity index 92% rename from src/api/types/TextInputNodeDom.ts rename to src/api/types/TextInputNode.ts index 229bbc2b..17dca89c 100644 --- a/src/api/types/TextInputNodeDom.ts +++ b/src/api/types/TextInputNode.ts @@ -5,7 +5,7 @@ /** * Represents text input and textarea elements within the DOM. It contains the placeholder text in the input. Additional attributes can be associated with the text for styling or other purposes. */ -export interface TextInputNodeDom { +export interface TextInputNode { /** Node UUID */ id: string; /** The placeholder text of the input node */ diff --git a/src/api/types/TextInput.ts b/src/api/types/TextInputNodeWrite.ts similarity index 86% rename from src/api/types/TextInput.ts rename to src/api/types/TextInputNodeWrite.ts index 524c2bd2..4e25aded 100644 --- a/src/api/types/TextInput.ts +++ b/src/api/types/TextInputNodeWrite.ts @@ -5,7 +5,7 @@ /** * Update placeholder text on a text input node */ -export interface TextInput { +export interface TextInputNodeWrite { /** Node UUID */ nodeId: string; /** The placeholder text of the input node */ diff --git a/src/api/types/TextNode.ts b/src/api/types/TextNode.ts index e3fe015c..13015905 100644 --- a/src/api/types/TextNode.ts +++ b/src/api/types/TextNode.ts @@ -2,12 +2,16 @@ * This file was auto-generated by Fern from our API Definition. */ +import * as Webflow from "../index"; + /** - * Update a text node + * Represents text content within the DOM. It contains both the raw text and its HTML representation. Additional attributes can be associated with the text for styling or other purposes. */ export interface TextNode { /** Node UUID */ - nodeId: string; - /** HTML content of the node, including the HTML tag. The HTML tags must be the same as what's returned from the Get Content endpoint. */ - text: string; + id: string; + /** The text content of the node */ + text: Webflow.TextNodeText; + /** The custom attributes of the node */ + attributes?: Record; } diff --git a/src/api/types/TextNodeDom.ts b/src/api/types/TextNodeDom.ts deleted file mode 100644 index 49e88086..00000000 --- a/src/api/types/TextNodeDom.ts +++ /dev/null @@ -1,17 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as Webflow from "../index"; - -/** - * Represents text content within the DOM. It contains both the raw text and its HTML representation. Additional attributes can be associated with the text for styling or other purposes. - */ -export interface TextNodeDom { - /** Node UUID */ - id: string; - /** The text content of the node */ - text: Webflow.TextNodeText; - /** The custom attributes of the node */ - attributes?: Record; -} diff --git a/src/api/types/TextNodeWrite.ts b/src/api/types/TextNodeWrite.ts new file mode 100644 index 00000000..0c52cf2c --- /dev/null +++ b/src/api/types/TextNodeWrite.ts @@ -0,0 +1,13 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +/** + * Update a text node + */ +export interface TextNodeWrite { + /** Node UUID */ + nodeId: string; + /** HTML content of the node, including the HTML tag. The HTML tags must be the same as what's returned from the Get Content endpoint. */ + text: string; +} diff --git a/src/api/types/TriggerType.ts b/src/api/types/TriggerType.ts index 5d4eed0f..a059fadb 100644 --- a/src/api/types/TriggerType.ts +++ b/src/api/types/TriggerType.ts @@ -20,6 +20,7 @@ export type TriggerType = | "collection_item_created" | "collection_item_changed" | "collection_item_deleted" + | "collection_item_published" | "collection_item_unpublished" | "comment_created"; export const TriggerType = { @@ -37,6 +38,7 @@ export const TriggerType = { CollectionItemCreated: "collection_item_created", CollectionItemChanged: "collection_item_changed", CollectionItemDeleted: "collection_item_deleted", + CollectionItemPublished: "collection_item_published", CollectionItemUnpublished: "collection_item_unpublished", CommentCreated: "comment_created", } as const; diff --git a/src/api/types/WorkspaceAuditLogItemPayloadSiteMembershipGranularAccess.ts b/src/api/types/WorkspaceAuditLogItemPayloadSiteMembershipGranularAccess.ts new file mode 100644 index 00000000..3e0fbcb7 --- /dev/null +++ b/src/api/types/WorkspaceAuditLogItemPayloadSiteMembershipGranularAccess.ts @@ -0,0 +1,10 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +export interface WorkspaceAuditLogItemPayloadSiteMembershipGranularAccess { + id?: string; + name?: string; + type?: "cms"; + restricted?: boolean; +} diff --git a/src/api/types/WorkspaceAuditLogItemPayloadSiteMembershipMethod.ts b/src/api/types/WorkspaceAuditLogItemPayloadSiteMembershipMethod.ts index e63419ef..950c77de 100644 --- a/src/api/types/WorkspaceAuditLogItemPayloadSiteMembershipMethod.ts +++ b/src/api/types/WorkspaceAuditLogItemPayloadSiteMembershipMethod.ts @@ -2,11 +2,18 @@ * This file was auto-generated by Fern from our API Definition. */ -export type WorkspaceAuditLogItemPayloadSiteMembershipMethod = "sso" | "invite" | "scim" | "dashboard" | "admin"; +export type WorkspaceAuditLogItemPayloadSiteMembershipMethod = + | "sso" + | "invite" + | "scim" + | "dashboard" + | "admin" + | "access_request"; export const WorkspaceAuditLogItemPayloadSiteMembershipMethod = { Sso: "sso", Invite: "invite", Scim: "scim", Dashboard: "dashboard", Admin: "admin", + AccessRequest: "access_request", } as const; diff --git a/src/api/types/WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem.ts b/src/api/types/WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem.ts new file mode 100644 index 00000000..860cdaad --- /dev/null +++ b/src/api/types/WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem.ts @@ -0,0 +1,8 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +export interface WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem { + id?: string; + email?: string; +} diff --git a/src/api/types/WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod.ts b/src/api/types/WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod.ts index a063306d..22b080cc 100644 --- a/src/api/types/WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod.ts +++ b/src/api/types/WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod.ts @@ -2,9 +2,10 @@ * This file was auto-generated by Fern from our API Definition. */ -export type WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod = "sso" | "dashboard" | "admin"; +export type WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod = "sso" | "dashboard" | "admin" | "access_request"; export const WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod = { Sso: "sso", Dashboard: "dashboard", Admin: "admin", + AccessRequest: "access_request", } as const; diff --git a/src/api/types/WorkspaceInvitation.ts b/src/api/types/WorkspaceInvitation.ts index 59aa2857..448c82ae 100644 --- a/src/api/types/WorkspaceInvitation.ts +++ b/src/api/types/WorkspaceInvitation.ts @@ -12,4 +12,5 @@ export interface WorkspaceInvitation { roleName?: string; /** The previous role that the user had */ previousRoleName?: string; + targetUsers?: Webflow.WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem[]; } diff --git a/src/api/types/WorkspaceInvitationAuditLogItemEventSubType.ts b/src/api/types/WorkspaceInvitationAuditLogItemEventSubType.ts index 55366efa..bc474207 100644 --- a/src/api/types/WorkspaceInvitationAuditLogItemEventSubType.ts +++ b/src/api/types/WorkspaceInvitationAuditLogItemEventSubType.ts @@ -7,11 +7,13 @@ export type WorkspaceInvitationAuditLogItemEventSubType = | "invite_accepted" | "invite_updated" | "invite_canceled" - | "invite_declined"; + | "invite_declined" + | "access_request_accepted"; export const WorkspaceInvitationAuditLogItemEventSubType = { InviteSent: "invite_sent", InviteAccepted: "invite_accepted", InviteUpdated: "invite_updated", InviteCanceled: "invite_canceled", InviteDeclined: "invite_declined", + AccessRequestAccepted: "access_request_accepted", } as const; diff --git a/src/api/types/index.ts b/src/api/types/index.ts index 05a25767..226d0e81 100644 --- a/src/api/types/index.ts +++ b/src/api/types/index.ts @@ -34,12 +34,14 @@ export * from "./WorkspaceAuditLogItemPayloadSiteMembershipSite"; export * from "./WorkspaceAuditLogItemPayloadSiteMembershipTargetUser"; export * from "./WorkspaceAuditLogItemPayloadSiteMembershipMethod"; export * from "./WorkspaceAuditLogItemPayloadSiteMembershipUserType"; +export * from "./WorkspaceAuditLogItemPayloadSiteMembershipGranularAccess"; export * from "./SiteMembership"; export * from "./SiteMembershipAuditLogItemEventSubType"; export * from "./SiteMembershipAuditLogItem"; export * from "./WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUser"; export * from "./WorkspaceAuditLogItemPayloadWorkspaceInvitationMethod"; export * from "./WorkspaceAuditLogItemPayloadWorkspaceInvitationUserType"; +export * from "./WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem"; export * from "./WorkspaceInvitation"; export * from "./WorkspaceInvitationAuditLogItemEventSubType"; export * from "./WorkspaceInvitationAuditLogItem"; @@ -111,28 +113,28 @@ export * from "./PageOpenGraph"; export * from "./Page"; export * from "./PageList"; export * from "./TextNodeText"; -export * from "./TextNodeDom"; +export * from "./TextNode"; export * from "./ImageNodeImage"; -export * from "./ImageNodeDom"; +export * from "./ImageNode"; export * from "./Text"; export * from "./ComponentPropertyType"; export * from "./ComponentProperty"; -export * from "./ComponentNodeDom"; -export * from "./TextInputNodeDom"; +export * from "./ComponentNode"; +export * from "./TextInputNode"; export * from "./SelectNodeChoicesItem"; -export * from "./SelectNodeDom"; -export * from "./SubmitButtonNodeDom"; -export * from "./SearchButtonNodeDom"; +export * from "./SelectNode"; +export * from "./SubmitButtonNode"; +export * from "./SearchButtonNode"; export * from "./Node"; export * from "./Dom"; -export * from "./TextNode"; +export * from "./TextNodeWrite"; export * from "./ComponentInstanceNodePropertyOverridesWritePropertyOverridesItem"; -export * from "./ComponentInstance"; +export * from "./ComponentInstanceNodePropertyOverridesWrite"; export * from "./SelectNodeWriteChoicesItem"; export * from "./Select"; -export * from "./TextInput"; -export * from "./SubmitButton"; -export * from "./SearchButton"; +export * from "./TextInputNodeWrite"; +export * from "./SubmitButtonNodeWrite"; +export * from "./SearchButtonNodeWrite"; export * from "./Component"; export * from "./ComponentList"; export * from "./ComponentDom"; @@ -239,19 +241,14 @@ export * from "./NewOrder"; export * from "./UpdatedOrder"; export * from "./SingleLocaleCreatedPayloadFieldData"; export * from "./SingleLocaleCreatedPayload"; -export * from "./LocalizedItem"; -export * from "./MultiLocaleCreatedPayload"; -export * from "./CollectionItemCreatedPayload"; export * from "./CollectionItemCreated"; -export * from "./SingleLocaleChangedPayloadFieldData"; -export * from "./SingleLocaleChangedPayload"; -export * from "./MultiLocaleChangedPayloadFieldData"; -export * from "./MultiLocaleChangedPayload"; -export * from "./CollectionItemChangedPayload"; export * from "./CollectionItemChanged"; export * from "./CollectionItemRemovedPayloadFieldData"; export * from "./CollectionItemRemovedPayload"; export * from "./CollectionItemRemoved"; +export * from "./PayloadFieldData"; +export * from "./Payload"; +export * from "./CollectionItemPublished"; export * from "./CollectionItemUnpublishedPayloadFieldData"; export * from "./CollectionItemUnpublishedPayload"; export * from "./CollectionItemUnpublished"; diff --git a/src/environments.ts b/src/environments.ts index 84e3537b..33bf50cf 100644 --- a/src/environments.ts +++ b/src/environments.ts @@ -6,8 +6,6 @@ export interface WebflowEnvironmentUrls { base: string; dataApi: string; contentDeliveryApi: string; - production: string; - cdn: string; } export const WebflowEnvironment = { @@ -15,8 +13,6 @@ export const WebflowEnvironment = { base: "https://api.webflow.com/v2", dataApi: "https://api.webflow.com/v2", contentDeliveryApi: "https://api-cdn.webflow.com/v2", - production: "https://api.webflow.com/v2", - cdn: "https://api-cdn.webflow.com/v2", }, } as const; diff --git a/src/serialization/resources/components/types/ComponentDomWriteNodesItem.ts b/src/serialization/resources/components/types/ComponentDomWriteNodesItem.ts index 942b68e4..b26c150f 100644 --- a/src/serialization/resources/components/types/ComponentDomWriteNodesItem.ts +++ b/src/serialization/resources/components/types/ComponentDomWriteNodesItem.ts @@ -5,31 +5,31 @@ import * as serializers from "../../../index"; import * as Webflow from "../../../../api/index"; import * as core from "../../../../core"; -import { TextNode } from "../../../types/TextNode"; -import { ComponentInstance } from "../../../types/ComponentInstance"; +import { TextNodeWrite } from "../../../types/TextNodeWrite"; +import { ComponentInstanceNodePropertyOverridesWrite } from "../../../types/ComponentInstanceNodePropertyOverridesWrite"; import { Select } from "../../../types/Select"; -import { TextInput } from "../../../types/TextInput"; -import { SubmitButton } from "../../../types/SubmitButton"; -import { SearchButton } from "../../../types/SearchButton"; +import { TextInputNodeWrite } from "../../../types/TextInputNodeWrite"; +import { SubmitButtonNodeWrite } from "../../../types/SubmitButtonNodeWrite"; +import { SearchButtonNodeWrite } from "../../../types/SearchButtonNodeWrite"; export const ComponentDomWriteNodesItem: core.serialization.Schema< serializers.ComponentDomWriteNodesItem.Raw, Webflow.ComponentDomWriteNodesItem > = core.serialization.undiscriminatedUnion([ - TextNode, - ComponentInstance, + TextNodeWrite, + ComponentInstanceNodePropertyOverridesWrite, Select, - TextInput, - SubmitButton, - SearchButton, + TextInputNodeWrite, + SubmitButtonNodeWrite, + SearchButtonNodeWrite, ]); export declare namespace ComponentDomWriteNodesItem { export type Raw = - | TextNode.Raw - | ComponentInstance.Raw + | TextNodeWrite.Raw + | ComponentInstanceNodePropertyOverridesWrite.Raw | Select.Raw - | TextInput.Raw - | SubmitButton.Raw - | SearchButton.Raw; + | TextInputNodeWrite.Raw + | SubmitButtonNodeWrite.Raw + | SearchButtonNodeWrite.Raw; } diff --git a/src/serialization/resources/forms/client/requests/FormsUpdateSubmissionBySiteRequest.ts b/src/serialization/resources/forms/client/requests/FormsUpdateSubmissionBySiteRequest.ts new file mode 100644 index 00000000..8c66a2b8 --- /dev/null +++ b/src/serialization/resources/forms/client/requests/FormsUpdateSubmissionBySiteRequest.ts @@ -0,0 +1,20 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +import * as serializers from "../../../../index"; +import * as Webflow from "../../../../../api/index"; +import * as core from "../../../../../core"; + +export const FormsUpdateSubmissionBySiteRequest: core.serialization.Schema< + serializers.FormsUpdateSubmissionBySiteRequest.Raw, + Webflow.FormsUpdateSubmissionBySiteRequest +> = core.serialization.object({ + formSubmissionData: core.serialization.record(core.serialization.string(), core.serialization.unknown()).optional(), +}); + +export declare namespace FormsUpdateSubmissionBySiteRequest { + export interface Raw { + formSubmissionData?: Record | null; + } +} diff --git a/src/serialization/resources/forms/client/requests/index.ts b/src/serialization/resources/forms/client/requests/index.ts index 71e69650..67dc6e66 100644 --- a/src/serialization/resources/forms/client/requests/index.ts +++ b/src/serialization/resources/forms/client/requests/index.ts @@ -1 +1,2 @@ export { FormsUpdateSubmissionRequest } from "./FormsUpdateSubmissionRequest"; +export { FormsUpdateSubmissionBySiteRequest } from "./FormsUpdateSubmissionBySiteRequest"; diff --git a/src/serialization/resources/pages/types/PageDomWriteNodesItem.ts b/src/serialization/resources/pages/types/PageDomWriteNodesItem.ts index 49ae4c50..e6c3c944 100644 --- a/src/serialization/resources/pages/types/PageDomWriteNodesItem.ts +++ b/src/serialization/resources/pages/types/PageDomWriteNodesItem.ts @@ -5,31 +5,31 @@ import * as serializers from "../../../index"; import * as Webflow from "../../../../api/index"; import * as core from "../../../../core"; -import { TextNode } from "../../../types/TextNode"; -import { ComponentInstance } from "../../../types/ComponentInstance"; +import { TextNodeWrite } from "../../../types/TextNodeWrite"; +import { ComponentInstanceNodePropertyOverridesWrite } from "../../../types/ComponentInstanceNodePropertyOverridesWrite"; import { Select } from "../../../types/Select"; -import { TextInput } from "../../../types/TextInput"; -import { SubmitButton } from "../../../types/SubmitButton"; -import { SearchButton } from "../../../types/SearchButton"; +import { TextInputNodeWrite } from "../../../types/TextInputNodeWrite"; +import { SubmitButtonNodeWrite } from "../../../types/SubmitButtonNodeWrite"; +import { SearchButtonNodeWrite } from "../../../types/SearchButtonNodeWrite"; export const PageDomWriteNodesItem: core.serialization.Schema< serializers.PageDomWriteNodesItem.Raw, Webflow.PageDomWriteNodesItem > = core.serialization.undiscriminatedUnion([ - TextNode, - ComponentInstance, + TextNodeWrite, + ComponentInstanceNodePropertyOverridesWrite, Select, - TextInput, - SubmitButton, - SearchButton, + TextInputNodeWrite, + SubmitButtonNodeWrite, + SearchButtonNodeWrite, ]); export declare namespace PageDomWriteNodesItem { export type Raw = - | TextNode.Raw - | ComponentInstance.Raw + | TextNodeWrite.Raw + | ComponentInstanceNodePropertyOverridesWrite.Raw | Select.Raw - | TextInput.Raw - | SubmitButton.Raw - | SearchButton.Raw; + | TextInputNodeWrite.Raw + | SubmitButtonNodeWrite.Raw + | SearchButtonNodeWrite.Raw; } diff --git a/src/serialization/types/CollectionItemChanged.ts b/src/serialization/types/CollectionItemChanged.ts index d286ddec..93bad748 100644 --- a/src/serialization/types/CollectionItemChanged.ts +++ b/src/serialization/types/CollectionItemChanged.ts @@ -5,19 +5,19 @@ import * as serializers from "../index"; import * as Webflow from "../../api/index"; import * as core from "../../core"; -import { CollectionItemChangedPayload } from "./CollectionItemChangedPayload"; +import { SingleLocaleCreatedPayload } from "./SingleLocaleCreatedPayload"; export const CollectionItemChanged: core.serialization.ObjectSchema< serializers.CollectionItemChanged.Raw, Webflow.CollectionItemChanged > = core.serialization.object({ triggerType: core.serialization.stringLiteral("collection_item_changed"), - payload: CollectionItemChangedPayload, + payload: SingleLocaleCreatedPayload, }); export declare namespace CollectionItemChanged { export interface Raw { triggerType: "collection_item_changed"; - payload: CollectionItemChangedPayload.Raw; + payload: SingleLocaleCreatedPayload.Raw; } } diff --git a/src/serialization/types/CollectionItemChangedPayload.ts b/src/serialization/types/CollectionItemChangedPayload.ts deleted file mode 100644 index 751fb501..00000000 --- a/src/serialization/types/CollectionItemChangedPayload.ts +++ /dev/null @@ -1,18 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as serializers from "../index"; -import * as Webflow from "../../api/index"; -import * as core from "../../core"; -import { SingleLocaleChangedPayload } from "./SingleLocaleChangedPayload"; -import { MultiLocaleChangedPayload } from "./MultiLocaleChangedPayload"; - -export const CollectionItemChangedPayload: core.serialization.Schema< - serializers.CollectionItemChangedPayload.Raw, - Webflow.CollectionItemChangedPayload -> = core.serialization.undiscriminatedUnion([SingleLocaleChangedPayload, MultiLocaleChangedPayload]); - -export declare namespace CollectionItemChangedPayload { - export type Raw = SingleLocaleChangedPayload.Raw | MultiLocaleChangedPayload.Raw; -} diff --git a/src/serialization/types/CollectionItemCreated.ts b/src/serialization/types/CollectionItemCreated.ts index ec730a47..0d508596 100644 --- a/src/serialization/types/CollectionItemCreated.ts +++ b/src/serialization/types/CollectionItemCreated.ts @@ -5,19 +5,19 @@ import * as serializers from "../index"; import * as Webflow from "../../api/index"; import * as core from "../../core"; -import { CollectionItemCreatedPayload } from "./CollectionItemCreatedPayload"; +import { SingleLocaleCreatedPayload } from "./SingleLocaleCreatedPayload"; export const CollectionItemCreated: core.serialization.ObjectSchema< serializers.CollectionItemCreated.Raw, Webflow.CollectionItemCreated > = core.serialization.object({ triggerType: core.serialization.stringLiteral("collection_item_created"), - payload: CollectionItemCreatedPayload, + payload: SingleLocaleCreatedPayload, }); export declare namespace CollectionItemCreated { export interface Raw { triggerType: "collection_item_created"; - payload: CollectionItemCreatedPayload.Raw; + payload: SingleLocaleCreatedPayload.Raw; } } diff --git a/src/serialization/types/CollectionItemCreatedPayload.ts b/src/serialization/types/CollectionItemCreatedPayload.ts deleted file mode 100644 index b67ad22e..00000000 --- a/src/serialization/types/CollectionItemCreatedPayload.ts +++ /dev/null @@ -1,18 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as serializers from "../index"; -import * as Webflow from "../../api/index"; -import * as core from "../../core"; -import { SingleLocaleCreatedPayload } from "./SingleLocaleCreatedPayload"; -import { MultiLocaleCreatedPayload } from "./MultiLocaleCreatedPayload"; - -export const CollectionItemCreatedPayload: core.serialization.Schema< - serializers.CollectionItemCreatedPayload.Raw, - Webflow.CollectionItemCreatedPayload -> = core.serialization.undiscriminatedUnion([SingleLocaleCreatedPayload, MultiLocaleCreatedPayload]); - -export declare namespace CollectionItemCreatedPayload { - export type Raw = SingleLocaleCreatedPayload.Raw | MultiLocaleCreatedPayload.Raw; -} diff --git a/src/serialization/types/CollectionItemPublished.ts b/src/serialization/types/CollectionItemPublished.ts new file mode 100644 index 00000000..dd096d58 --- /dev/null +++ b/src/serialization/types/CollectionItemPublished.ts @@ -0,0 +1,23 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +import * as serializers from "../index"; +import * as Webflow from "../../api/index"; +import * as core from "../../core"; +import { Payload } from "./Payload"; + +export const CollectionItemPublished: core.serialization.ObjectSchema< + serializers.CollectionItemPublished.Raw, + Webflow.CollectionItemPublished +> = core.serialization.object({ + triggerType: core.serialization.string().optional(), + payload: Payload.optional(), +}); + +export declare namespace CollectionItemPublished { + export interface Raw { + triggerType?: string | null; + payload?: Payload.Raw | null; + } +} diff --git a/src/serialization/types/ComponentInstance.ts b/src/serialization/types/ComponentInstanceNodePropertyOverridesWrite.ts similarity index 71% rename from src/serialization/types/ComponentInstance.ts rename to src/serialization/types/ComponentInstanceNodePropertyOverridesWrite.ts index c4d7c78a..b8c3596b 100644 --- a/src/serialization/types/ComponentInstance.ts +++ b/src/serialization/types/ComponentInstanceNodePropertyOverridesWrite.ts @@ -7,15 +7,15 @@ import * as Webflow from "../../api/index"; import * as core from "../../core"; import { ComponentInstanceNodePropertyOverridesWritePropertyOverridesItem } from "./ComponentInstanceNodePropertyOverridesWritePropertyOverridesItem"; -export const ComponentInstance: core.serialization.ObjectSchema< - serializers.ComponentInstance.Raw, - Webflow.ComponentInstance +export const ComponentInstanceNodePropertyOverridesWrite: core.serialization.ObjectSchema< + serializers.ComponentInstanceNodePropertyOverridesWrite.Raw, + Webflow.ComponentInstanceNodePropertyOverridesWrite > = core.serialization.object({ nodeId: core.serialization.string(), propertyOverrides: core.serialization.list(ComponentInstanceNodePropertyOverridesWritePropertyOverridesItem), }); -export declare namespace ComponentInstance { +export declare namespace ComponentInstanceNodePropertyOverridesWrite { export interface Raw { nodeId: string; propertyOverrides: ComponentInstanceNodePropertyOverridesWritePropertyOverridesItem.Raw[]; diff --git a/src/serialization/types/ComponentNodeDom.ts b/src/serialization/types/ComponentNode.ts similarity index 51% rename from src/serialization/types/ComponentNodeDom.ts rename to src/serialization/types/ComponentNode.ts index 18a3534e..ac0e54c9 100644 --- a/src/serialization/types/ComponentNodeDom.ts +++ b/src/serialization/types/ComponentNode.ts @@ -7,16 +7,14 @@ import * as Webflow from "../../api/index"; import * as core from "../../core"; import { ComponentProperty } from "./ComponentProperty"; -export const ComponentNodeDom: core.serialization.ObjectSchema< - serializers.ComponentNodeDom.Raw, - Webflow.ComponentNodeDom -> = core.serialization.object({ - id: core.serialization.string(), - componentId: core.serialization.string(), - propertyOverrides: core.serialization.list(ComponentProperty), -}); +export const ComponentNode: core.serialization.ObjectSchema = + core.serialization.object({ + id: core.serialization.string(), + componentId: core.serialization.string(), + propertyOverrides: core.serialization.list(ComponentProperty), + }); -export declare namespace ComponentNodeDom { +export declare namespace ComponentNode { export interface Raw { id: string; componentId: string; diff --git a/src/serialization/types/FieldValidationsAdditionalPropertiesAdditionalProperties.ts b/src/serialization/types/FieldValidationsAdditionalPropertiesAdditionalProperties.ts index 33bf82f2..8d75dec8 100644 --- a/src/serialization/types/FieldValidationsAdditionalPropertiesAdditionalProperties.ts +++ b/src/serialization/types/FieldValidationsAdditionalPropertiesAdditionalProperties.ts @@ -10,11 +10,11 @@ export const FieldValidationsAdditionalPropertiesAdditionalProperties: core.seri serializers.FieldValidationsAdditionalPropertiesAdditionalProperties.Raw, Webflow.FieldValidationsAdditionalPropertiesAdditionalProperties > = core.serialization.object({ - additionalProperties: core.serialization.unknown().optional(), + additionalProperties: core.serialization.unknown(), }); export declare namespace FieldValidationsAdditionalPropertiesAdditionalProperties { export interface Raw { - additionalProperties?: unknown | null; + additionalProperties?: unknown; } } diff --git a/src/serialization/types/ImageNodeDom.ts b/src/serialization/types/ImageNode.ts similarity index 80% rename from src/serialization/types/ImageNodeDom.ts rename to src/serialization/types/ImageNode.ts index d1f7fd23..a95eb1b7 100644 --- a/src/serialization/types/ImageNodeDom.ts +++ b/src/serialization/types/ImageNode.ts @@ -7,14 +7,14 @@ import * as Webflow from "../../api/index"; import * as core from "../../core"; import { ImageNodeImage } from "./ImageNodeImage"; -export const ImageNodeDom: core.serialization.ObjectSchema = +export const ImageNode: core.serialization.ObjectSchema = core.serialization.object({ id: core.serialization.string(), image: ImageNodeImage, attributes: core.serialization.record(core.serialization.string(), core.serialization.string()).optional(), }); -export declare namespace ImageNodeDom { +export declare namespace ImageNode { export interface Raw { id: string; image: ImageNodeImage.Raw; diff --git a/src/serialization/types/LocalizedItem.ts b/src/serialization/types/LocalizedItem.ts deleted file mode 100644 index 0cb5ff70..00000000 --- a/src/serialization/types/LocalizedItem.ts +++ /dev/null @@ -1,42 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as serializers from "../index"; -import * as Webflow from "../../api/index"; -import * as core from "../../core"; - -export const LocalizedItem: core.serialization.ObjectSchema = - core.serialization.object({ - cid: core.serialization.property("_cid", core.serialization.string()), - id: core.serialization.property("_id", core.serialization.string()), - locale: core.serialization.property("_locale", core.serialization.string()), - draft: core.serialization.property("_draft", core.serialization.boolean()), - archived: core.serialization.property("_archived", core.serialization.boolean()), - name: core.serialization.string(), - slug: core.serialization.string(), - updatedOn: core.serialization.property("updated-on", core.serialization.date()), - updatedBy: core.serialization.property("updated-by", core.serialization.string()), - createdOn: core.serialization.property("created-on", core.serialization.date()), - createdBy: core.serialization.property("created-by", core.serialization.string()), - publishedOn: core.serialization.property("published-on", core.serialization.date().optional()), - publishedBy: core.serialization.property("published-by", core.serialization.string().optional()), - }); - -export declare namespace LocalizedItem { - export interface Raw { - _cid: string; - _id: string; - _locale: string; - _draft: boolean; - _archived: boolean; - name: string; - slug: string; - "updated-on": string; - "updated-by": string; - "created-on": string; - "created-by": string; - "published-on"?: string | null; - "published-by"?: string | null; - } -} diff --git a/src/serialization/types/MultiLocaleChangedPayload.ts b/src/serialization/types/MultiLocaleChangedPayload.ts deleted file mode 100644 index d543b905..00000000 --- a/src/serialization/types/MultiLocaleChangedPayload.ts +++ /dev/null @@ -1,41 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as serializers from "../index"; -import * as Webflow from "../../api/index"; -import * as core from "../../core"; -import { MultiLocaleChangedPayloadFieldData } from "./MultiLocaleChangedPayloadFieldData"; - -export const MultiLocaleChangedPayload: core.serialization.ObjectSchema< - serializers.MultiLocaleChangedPayload.Raw, - Webflow.MultiLocaleChangedPayload -> = core.serialization.object({ - id: core.serialization.string(), - workspaceId: core.serialization.string(), - siteId: core.serialization.string(), - collectionId: core.serialization.string(), - cmsLocaleId: core.serialization.string().optional(), - lastPublished: core.serialization.date().optional(), - lastUpdated: core.serialization.date().optional(), - createdOn: core.serialization.date().optional(), - isArchived: core.serialization.boolean().optional(), - isDraft: core.serialization.boolean().optional(), - fieldData: MultiLocaleChangedPayloadFieldData, -}); - -export declare namespace MultiLocaleChangedPayload { - export interface Raw { - id: string; - workspaceId: string; - siteId: string; - collectionId: string; - cmsLocaleId?: string | null; - lastPublished?: string | null; - lastUpdated?: string | null; - createdOn?: string | null; - isArchived?: boolean | null; - isDraft?: boolean | null; - fieldData: MultiLocaleChangedPayloadFieldData.Raw; - } -} diff --git a/src/serialization/types/MultiLocaleChangedPayloadFieldData.ts b/src/serialization/types/MultiLocaleChangedPayloadFieldData.ts deleted file mode 100644 index c7788139..00000000 --- a/src/serialization/types/MultiLocaleChangedPayloadFieldData.ts +++ /dev/null @@ -1,27 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as serializers from "../index"; -import * as Webflow from "../../api/index"; -import * as core from "../../core"; - -export const MultiLocaleChangedPayloadFieldData: core.serialization.ObjectSchema< - serializers.MultiLocaleChangedPayloadFieldData.Raw, - Webflow.MultiLocaleChangedPayloadFieldData -> = core.serialization - .object({ - name: core.serialization.string(), - slug: core.serialization.string(), - locale: core.serialization.property("_locale", core.serialization.string()), - }) - .passthrough(); - -export declare namespace MultiLocaleChangedPayloadFieldData { - export interface Raw { - name: string; - slug: string; - _locale: string; - [key: string]: any; - } -} diff --git a/src/serialization/types/MultiLocaleCreatedPayload.ts b/src/serialization/types/MultiLocaleCreatedPayload.ts deleted file mode 100644 index 00a26e16..00000000 --- a/src/serialization/types/MultiLocaleCreatedPayload.ts +++ /dev/null @@ -1,29 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as serializers from "../index"; -import * as Webflow from "../../api/index"; -import * as core from "../../core"; -import { LocalizedItem } from "./LocalizedItem"; - -export const MultiLocaleCreatedPayload: core.serialization.ObjectSchema< - serializers.MultiLocaleCreatedPayload.Raw, - Webflow.MultiLocaleCreatedPayload -> = core.serialization.object({ - siteId: core.serialization.string(), - workspaceId: core.serialization.string(), - collectionId: core.serialization.string(), - cmsLocaleId: core.serialization.string().optional(), - fieldData: core.serialization.record(core.serialization.string(), LocalizedItem), -}); - -export declare namespace MultiLocaleCreatedPayload { - export interface Raw { - siteId: string; - workspaceId: string; - collectionId: string; - cmsLocaleId?: string | null; - fieldData: Record; - } -} diff --git a/src/serialization/types/Node.ts b/src/serialization/types/Node.ts index 7ff635d1..dc6acf73 100644 --- a/src/serialization/types/Node.ts +++ b/src/serialization/types/Node.ts @@ -5,23 +5,23 @@ import * as serializers from "../index"; import * as Webflow from "../../api/index"; import * as core from "../../core"; -import { TextNodeDom } from "./TextNodeDom"; -import { ImageNodeDom } from "./ImageNodeDom"; -import { ComponentNodeDom } from "./ComponentNodeDom"; -import { TextInputNodeDom } from "./TextInputNodeDom"; -import { SelectNodeDom } from "./SelectNodeDom"; -import { SubmitButtonNodeDom } from "./SubmitButtonNodeDom"; -import { SearchButtonNodeDom } from "./SearchButtonNodeDom"; +import { TextNode } from "./TextNode"; +import { ImageNode } from "./ImageNode"; +import { ComponentNode } from "./ComponentNode"; +import { TextInputNode } from "./TextInputNode"; +import { SelectNode } from "./SelectNode"; +import { SubmitButtonNode } from "./SubmitButtonNode"; +import { SearchButtonNode } from "./SearchButtonNode"; export const Node: core.serialization.Schema = core.serialization .union("type", { - text: TextNodeDom, - image: ImageNodeDom, - "component-instance": ComponentNodeDom, - "text-input": TextInputNodeDom, - select: SelectNodeDom, - "submit-button": SubmitButtonNodeDom, - "search-button": SearchButtonNodeDom, + text: TextNode, + image: ImageNode, + "component-instance": ComponentNode, + "text-input": TextInputNode, + select: SelectNode, + "submit-button": SubmitButtonNode, + "search-button": SearchButtonNode, }) .transform({ transform: (value) => value, @@ -38,31 +38,31 @@ export declare namespace Node { | Node.SubmitButton | Node.SearchButton; - export interface Text extends TextNodeDom.Raw { + export interface Text extends TextNode.Raw { type: "text"; } - export interface Image extends ImageNodeDom.Raw { + export interface Image extends ImageNode.Raw { type: "image"; } - export interface ComponentInstance extends ComponentNodeDom.Raw { + export interface ComponentInstance extends ComponentNode.Raw { type: "component-instance"; } - export interface TextInput extends TextInputNodeDom.Raw { + export interface TextInput extends TextInputNode.Raw { type: "text-input"; } - export interface Select extends SelectNodeDom.Raw { + export interface Select extends SelectNode.Raw { type: "select"; } - export interface SubmitButton extends SubmitButtonNodeDom.Raw { + export interface SubmitButton extends SubmitButtonNode.Raw { type: "submit-button"; } - export interface SearchButton extends SearchButtonNodeDom.Raw { + export interface SearchButton extends SearchButtonNode.Raw { type: "search-button"; } } diff --git a/src/serialization/types/Payload.ts b/src/serialization/types/Payload.ts new file mode 100644 index 00000000..ffaf5cb9 --- /dev/null +++ b/src/serialization/types/Payload.ts @@ -0,0 +1,39 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +import * as serializers from "../index"; +import * as Webflow from "../../api/index"; +import * as core from "../../core"; +import { PayloadFieldData } from "./PayloadFieldData"; + +export const Payload: core.serialization.ObjectSchema = + core.serialization.object({ + id: core.serialization.string().optional(), + siteId: core.serialization.string().optional(), + workspaceId: core.serialization.string().optional(), + collectionId: core.serialization.string().optional(), + cmsLocaleId: core.serialization.string().optional(), + lastPublished: core.serialization.date().optional(), + lastUpdated: core.serialization.date().optional(), + createdOn: core.serialization.date().optional(), + isArchived: core.serialization.boolean().optional(), + isDraft: core.serialization.boolean().optional(), + fieldData: PayloadFieldData.optional(), + }); + +export declare namespace Payload { + export interface Raw { + id?: string | null; + siteId?: string | null; + workspaceId?: string | null; + collectionId?: string | null; + cmsLocaleId?: string | null; + lastPublished?: string | null; + lastUpdated?: string | null; + createdOn?: string | null; + isArchived?: boolean | null; + isDraft?: boolean | null; + fieldData?: PayloadFieldData.Raw | null; + } +} diff --git a/src/serialization/types/SingleLocaleChangedPayloadFieldData.ts b/src/serialization/types/PayloadFieldData.ts similarity index 64% rename from src/serialization/types/SingleLocaleChangedPayloadFieldData.ts rename to src/serialization/types/PayloadFieldData.ts index ff2894ce..1076c24c 100644 --- a/src/serialization/types/SingleLocaleChangedPayloadFieldData.ts +++ b/src/serialization/types/PayloadFieldData.ts @@ -6,9 +6,9 @@ import * as serializers from "../index"; import * as Webflow from "../../api/index"; import * as core from "../../core"; -export const SingleLocaleChangedPayloadFieldData: core.serialization.ObjectSchema< - serializers.SingleLocaleChangedPayloadFieldData.Raw, - Webflow.SingleLocaleChangedPayloadFieldData +export const PayloadFieldData: core.serialization.ObjectSchema< + serializers.PayloadFieldData.Raw, + Webflow.PayloadFieldData > = core.serialization .object({ name: core.serialization.string(), @@ -16,7 +16,7 @@ export const SingleLocaleChangedPayloadFieldData: core.serialization.ObjectSchem }) .passthrough(); -export declare namespace SingleLocaleChangedPayloadFieldData { +export declare namespace PayloadFieldData { export interface Raw { name: string; slug: string; diff --git a/src/serialization/types/SearchButton.ts b/src/serialization/types/SearchButton.ts deleted file mode 100644 index 9335c703..00000000 --- a/src/serialization/types/SearchButton.ts +++ /dev/null @@ -1,20 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as serializers from "../index"; -import * as Webflow from "../../api/index"; -import * as core from "../../core"; - -export const SearchButton: core.serialization.ObjectSchema = - core.serialization.object({ - nodeId: core.serialization.string(), - value: core.serialization.string(), - }); - -export declare namespace SearchButton { - export interface Raw { - nodeId: string; - value: string; - } -} diff --git a/src/serialization/types/SearchButtonNodeDom.ts b/src/serialization/types/SearchButtonNode.ts similarity index 74% rename from src/serialization/types/SearchButtonNodeDom.ts rename to src/serialization/types/SearchButtonNode.ts index 91d6f06e..9cb3904d 100644 --- a/src/serialization/types/SearchButtonNodeDom.ts +++ b/src/serialization/types/SearchButtonNode.ts @@ -6,16 +6,16 @@ import * as serializers from "../index"; import * as Webflow from "../../api/index"; import * as core from "../../core"; -export const SearchButtonNodeDom: core.serialization.ObjectSchema< - serializers.SearchButtonNodeDom.Raw, - Webflow.SearchButtonNodeDom +export const SearchButtonNode: core.serialization.ObjectSchema< + serializers.SearchButtonNode.Raw, + Webflow.SearchButtonNode > = core.serialization.object({ id: core.serialization.string(), value: core.serialization.string(), attributes: core.serialization.record(core.serialization.string(), core.serialization.string()).optional(), }); -export declare namespace SearchButtonNodeDom { +export declare namespace SearchButtonNode { export interface Raw { id: string; value: string; diff --git a/src/serialization/types/SearchButtonNodeWrite.ts b/src/serialization/types/SearchButtonNodeWrite.ts new file mode 100644 index 00000000..b0fbc7e8 --- /dev/null +++ b/src/serialization/types/SearchButtonNodeWrite.ts @@ -0,0 +1,22 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +import * as serializers from "../index"; +import * as Webflow from "../../api/index"; +import * as core from "../../core"; + +export const SearchButtonNodeWrite: core.serialization.ObjectSchema< + serializers.SearchButtonNodeWrite.Raw, + Webflow.SearchButtonNodeWrite +> = core.serialization.object({ + nodeId: core.serialization.string(), + value: core.serialization.string(), +}); + +export declare namespace SearchButtonNodeWrite { + export interface Raw { + nodeId: string; + value: string; + } +} diff --git a/src/serialization/types/SelectNodeDom.ts b/src/serialization/types/SelectNode.ts similarity index 81% rename from src/serialization/types/SelectNodeDom.ts rename to src/serialization/types/SelectNode.ts index 0270847c..78828b27 100644 --- a/src/serialization/types/SelectNodeDom.ts +++ b/src/serialization/types/SelectNode.ts @@ -7,14 +7,14 @@ import * as Webflow from "../../api/index"; import * as core from "../../core"; import { SelectNodeChoicesItem } from "./SelectNodeChoicesItem"; -export const SelectNodeDom: core.serialization.ObjectSchema = +export const SelectNode: core.serialization.ObjectSchema = core.serialization.object({ id: core.serialization.string(), choices: core.serialization.list(SelectNodeChoicesItem), attributes: core.serialization.record(core.serialization.string(), core.serialization.string()).optional(), }); -export declare namespace SelectNodeDom { +export declare namespace SelectNode { export interface Raw { id: string; choices: SelectNodeChoicesItem.Raw[]; diff --git a/src/serialization/types/SingleLocaleChangedPayload.ts b/src/serialization/types/SingleLocaleChangedPayload.ts deleted file mode 100644 index 040a37c9..00000000 --- a/src/serialization/types/SingleLocaleChangedPayload.ts +++ /dev/null @@ -1,41 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as serializers from "../index"; -import * as Webflow from "../../api/index"; -import * as core from "../../core"; -import { SingleLocaleChangedPayloadFieldData } from "./SingleLocaleChangedPayloadFieldData"; - -export const SingleLocaleChangedPayload: core.serialization.ObjectSchema< - serializers.SingleLocaleChangedPayload.Raw, - Webflow.SingleLocaleChangedPayload -> = core.serialization.object({ - id: core.serialization.string(), - workspaceId: core.serialization.string(), - siteId: core.serialization.string(), - collectionId: core.serialization.string(), - cmsLocaleId: core.serialization.string().optional(), - lastPublished: core.serialization.date().optional(), - lastUpdated: core.serialization.date().optional(), - createdOn: core.serialization.date().optional(), - isArchived: core.serialization.boolean().optional(), - isDraft: core.serialization.boolean().optional(), - fieldData: SingleLocaleChangedPayloadFieldData, -}); - -export declare namespace SingleLocaleChangedPayload { - export interface Raw { - id: string; - workspaceId: string; - siteId: string; - collectionId: string; - cmsLocaleId?: string | null; - lastPublished?: string | null; - lastUpdated?: string | null; - createdOn?: string | null; - isArchived?: boolean | null; - isDraft?: boolean | null; - fieldData: SingleLocaleChangedPayloadFieldData.Raw; - } -} diff --git a/src/serialization/types/SiteMembership.ts b/src/serialization/types/SiteMembership.ts index 2149b3f8..8208542c 100644 --- a/src/serialization/types/SiteMembership.ts +++ b/src/serialization/types/SiteMembership.ts @@ -9,6 +9,7 @@ import { WorkspaceAuditLogItemPayloadSiteMembershipSite } from "./WorkspaceAudit import { WorkspaceAuditLogItemPayloadSiteMembershipTargetUser } from "./WorkspaceAuditLogItemPayloadSiteMembershipTargetUser"; import { WorkspaceAuditLogItemPayloadSiteMembershipMethod } from "./WorkspaceAuditLogItemPayloadSiteMembershipMethod"; import { WorkspaceAuditLogItemPayloadSiteMembershipUserType } from "./WorkspaceAuditLogItemPayloadSiteMembershipUserType"; +import { WorkspaceAuditLogItemPayloadSiteMembershipGranularAccess } from "./WorkspaceAuditLogItemPayloadSiteMembershipGranularAccess"; export const SiteMembership: core.serialization.ObjectSchema = core.serialization.object({ @@ -18,6 +19,7 @@ export const SiteMembership: core.serialization.ObjectSchema = core.serialization.enum_(["user_added", "user_removed", "user_role_updated"]); +> = core.serialization.enum_(["user_added", "user_removed", "user_role_updated", "user_granular_access_updated"]); export declare namespace SiteMembershipAuditLogItemEventSubType { - export type Raw = "user_added" | "user_removed" | "user_role_updated"; + export type Raw = "user_added" | "user_removed" | "user_role_updated" | "user_granular_access_updated"; } diff --git a/src/serialization/types/SubmitButton.ts b/src/serialization/types/SubmitButton.ts deleted file mode 100644 index fa39f98f..00000000 --- a/src/serialization/types/SubmitButton.ts +++ /dev/null @@ -1,22 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as serializers from "../index"; -import * as Webflow from "../../api/index"; -import * as core from "../../core"; - -export const SubmitButton: core.serialization.ObjectSchema = - core.serialization.object({ - nodeId: core.serialization.string(), - value: core.serialization.string().optional(), - waitingText: core.serialization.string().optional(), - }); - -export declare namespace SubmitButton { - export interface Raw { - nodeId: string; - value?: string | null; - waitingText?: string | null; - } -} diff --git a/src/serialization/types/SubmitButtonNodeDom.ts b/src/serialization/types/SubmitButtonNode.ts similarity index 77% rename from src/serialization/types/SubmitButtonNodeDom.ts rename to src/serialization/types/SubmitButtonNode.ts index e0e77384..794a1d5a 100644 --- a/src/serialization/types/SubmitButtonNodeDom.ts +++ b/src/serialization/types/SubmitButtonNode.ts @@ -6,9 +6,9 @@ import * as serializers from "../index"; import * as Webflow from "../../api/index"; import * as core from "../../core"; -export const SubmitButtonNodeDom: core.serialization.ObjectSchema< - serializers.SubmitButtonNodeDom.Raw, - Webflow.SubmitButtonNodeDom +export const SubmitButtonNode: core.serialization.ObjectSchema< + serializers.SubmitButtonNode.Raw, + Webflow.SubmitButtonNode > = core.serialization.object({ id: core.serialization.string(), value: core.serialization.string(), @@ -16,7 +16,7 @@ export const SubmitButtonNodeDom: core.serialization.ObjectSchema< attributes: core.serialization.record(core.serialization.string(), core.serialization.string()).optional(), }); -export declare namespace SubmitButtonNodeDom { +export declare namespace SubmitButtonNode { export interface Raw { id: string; value: string; diff --git a/src/serialization/types/SubmitButtonNodeWrite.ts b/src/serialization/types/SubmitButtonNodeWrite.ts new file mode 100644 index 00000000..8cf1a7f8 --- /dev/null +++ b/src/serialization/types/SubmitButtonNodeWrite.ts @@ -0,0 +1,24 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +import * as serializers from "../index"; +import * as Webflow from "../../api/index"; +import * as core from "../../core"; + +export const SubmitButtonNodeWrite: core.serialization.ObjectSchema< + serializers.SubmitButtonNodeWrite.Raw, + Webflow.SubmitButtonNodeWrite +> = core.serialization.object({ + nodeId: core.serialization.string(), + value: core.serialization.string().optional(), + waitingText: core.serialization.string().optional(), +}); + +export declare namespace SubmitButtonNodeWrite { + export interface Raw { + nodeId: string; + value?: string | null; + waitingText?: string | null; + } +} diff --git a/src/serialization/types/TextNodeDom.ts b/src/serialization/types/TextInputNode.ts similarity index 66% rename from src/serialization/types/TextNodeDom.ts rename to src/serialization/types/TextInputNode.ts index 3e6d704c..71726816 100644 --- a/src/serialization/types/TextNodeDom.ts +++ b/src/serialization/types/TextInputNode.ts @@ -5,19 +5,18 @@ import * as serializers from "../index"; import * as Webflow from "../../api/index"; import * as core from "../../core"; -import { TextNodeText } from "./TextNodeText"; -export const TextNodeDom: core.serialization.ObjectSchema = +export const TextInputNode: core.serialization.ObjectSchema = core.serialization.object({ id: core.serialization.string(), - text: TextNodeText, + placeholder: core.serialization.string(), attributes: core.serialization.record(core.serialization.string(), core.serialization.string()).optional(), }); -export declare namespace TextNodeDom { +export declare namespace TextInputNode { export interface Raw { id: string; - text: TextNodeText.Raw; + placeholder: string; attributes?: Record | null; } } diff --git a/src/serialization/types/TextInputNodeDom.ts b/src/serialization/types/TextInputNodeDom.ts deleted file mode 100644 index 8c500a29..00000000 --- a/src/serialization/types/TextInputNodeDom.ts +++ /dev/null @@ -1,24 +0,0 @@ -/** - * This file was auto-generated by Fern from our API Definition. - */ - -import * as serializers from "../index"; -import * as Webflow from "../../api/index"; -import * as core from "../../core"; - -export const TextInputNodeDom: core.serialization.ObjectSchema< - serializers.TextInputNodeDom.Raw, - Webflow.TextInputNodeDom -> = core.serialization.object({ - id: core.serialization.string(), - placeholder: core.serialization.string(), - attributes: core.serialization.record(core.serialization.string(), core.serialization.string()).optional(), -}); - -export declare namespace TextInputNodeDom { - export interface Raw { - id: string; - placeholder: string; - attributes?: Record | null; - } -} diff --git a/src/serialization/types/TextInputNodeWrite.ts b/src/serialization/types/TextInputNodeWrite.ts new file mode 100644 index 00000000..737b37a0 --- /dev/null +++ b/src/serialization/types/TextInputNodeWrite.ts @@ -0,0 +1,22 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +import * as serializers from "../index"; +import * as Webflow from "../../api/index"; +import * as core from "../../core"; + +export const TextInputNodeWrite: core.serialization.ObjectSchema< + serializers.TextInputNodeWrite.Raw, + Webflow.TextInputNodeWrite +> = core.serialization.object({ + nodeId: core.serialization.string(), + placeholder: core.serialization.string(), +}); + +export declare namespace TextInputNodeWrite { + export interface Raw { + nodeId: string; + placeholder: string; + } +} diff --git a/src/serialization/types/TextNode.ts b/src/serialization/types/TextNode.ts index 44e7eac9..b0cca75c 100644 --- a/src/serialization/types/TextNode.ts +++ b/src/serialization/types/TextNode.ts @@ -5,16 +5,19 @@ import * as serializers from "../index"; import * as Webflow from "../../api/index"; import * as core from "../../core"; +import { TextNodeText } from "./TextNodeText"; export const TextNode: core.serialization.ObjectSchema = core.serialization.object({ - nodeId: core.serialization.string(), - text: core.serialization.string(), + id: core.serialization.string(), + text: TextNodeText, + attributes: core.serialization.record(core.serialization.string(), core.serialization.string()).optional(), }); export declare namespace TextNode { export interface Raw { - nodeId: string; - text: string; + id: string; + text: TextNodeText.Raw; + attributes?: Record | null; } } diff --git a/src/serialization/types/TextInput.ts b/src/serialization/types/TextNodeWrite.ts similarity index 60% rename from src/serialization/types/TextInput.ts rename to src/serialization/types/TextNodeWrite.ts index 688c190f..ab1d060e 100644 --- a/src/serialization/types/TextInput.ts +++ b/src/serialization/types/TextNodeWrite.ts @@ -6,15 +6,15 @@ import * as serializers from "../index"; import * as Webflow from "../../api/index"; import * as core from "../../core"; -export const TextInput: core.serialization.ObjectSchema = +export const TextNodeWrite: core.serialization.ObjectSchema = core.serialization.object({ nodeId: core.serialization.string(), - placeholder: core.serialization.string(), + text: core.serialization.string(), }); -export declare namespace TextInput { +export declare namespace TextNodeWrite { export interface Raw { nodeId: string; - placeholder: string; + text: string; } } diff --git a/src/serialization/types/TriggerType.ts b/src/serialization/types/TriggerType.ts index 23b39f06..b3c9eb26 100644 --- a/src/serialization/types/TriggerType.ts +++ b/src/serialization/types/TriggerType.ts @@ -22,6 +22,7 @@ export const TriggerType: core.serialization.Schema = core.serialization.object({ + id: core.serialization.string().optional(), + name: core.serialization.string().optional(), + type: core.serialization.stringLiteral("cms").optional(), + restricted: core.serialization.boolean().optional(), +}); + +export declare namespace WorkspaceAuditLogItemPayloadSiteMembershipGranularAccess { + export interface Raw { + id?: string | null; + name?: string | null; + type?: "cms" | null; + restricted?: boolean | null; + } +} diff --git a/src/serialization/types/WorkspaceAuditLogItemPayloadSiteMembershipMethod.ts b/src/serialization/types/WorkspaceAuditLogItemPayloadSiteMembershipMethod.ts index c8d90a28..aec1001e 100644 --- a/src/serialization/types/WorkspaceAuditLogItemPayloadSiteMembershipMethod.ts +++ b/src/serialization/types/WorkspaceAuditLogItemPayloadSiteMembershipMethod.ts @@ -9,8 +9,8 @@ import * as core from "../../core"; export const WorkspaceAuditLogItemPayloadSiteMembershipMethod: core.serialization.Schema< serializers.WorkspaceAuditLogItemPayloadSiteMembershipMethod.Raw, Webflow.WorkspaceAuditLogItemPayloadSiteMembershipMethod -> = core.serialization.enum_(["sso", "invite", "scim", "dashboard", "admin"]); +> = core.serialization.enum_(["sso", "invite", "scim", "dashboard", "admin", "access_request"]); export declare namespace WorkspaceAuditLogItemPayloadSiteMembershipMethod { - export type Raw = "sso" | "invite" | "scim" | "dashboard" | "admin"; + export type Raw = "sso" | "invite" | "scim" | "dashboard" | "admin" | "access_request"; } diff --git a/src/serialization/types/WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem.ts b/src/serialization/types/WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem.ts new file mode 100644 index 00000000..eae9726b --- /dev/null +++ b/src/serialization/types/WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem.ts @@ -0,0 +1,22 @@ +/** + * This file was auto-generated by Fern from our API Definition. + */ + +import * as serializers from "../index"; +import * as Webflow from "../../api/index"; +import * as core from "../../core"; + +export const WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem: core.serialization.ObjectSchema< + serializers.WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem.Raw, + Webflow.WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem +> = core.serialization.object({ + id: core.serialization.string().optional(), + email: core.serialization.string().optional(), +}); + +export declare namespace WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem { + export interface Raw { + id?: string | null; + email?: string | null; + } +} diff --git a/src/serialization/types/WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod.ts b/src/serialization/types/WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod.ts index 17a5815e..6b07d19c 100644 --- a/src/serialization/types/WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod.ts +++ b/src/serialization/types/WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod.ts @@ -9,8 +9,8 @@ import * as core from "../../core"; export const WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod: core.serialization.Schema< serializers.WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod.Raw, Webflow.WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod -> = core.serialization.enum_(["sso", "dashboard", "admin"]); +> = core.serialization.enum_(["sso", "dashboard", "admin", "access_request"]); export declare namespace WorkspaceAuditLogItemPayloadWorkspaceMembershipMethod { - export type Raw = "sso" | "dashboard" | "admin"; + export type Raw = "sso" | "dashboard" | "admin" | "access_request"; } diff --git a/src/serialization/types/WorkspaceInvitation.ts b/src/serialization/types/WorkspaceInvitation.ts index da3e4921..14fc0ed4 100644 --- a/src/serialization/types/WorkspaceInvitation.ts +++ b/src/serialization/types/WorkspaceInvitation.ts @@ -8,6 +8,7 @@ import * as core from "../../core"; import { WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUser } from "./WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUser"; import { WorkspaceAuditLogItemPayloadWorkspaceInvitationMethod } from "./WorkspaceAuditLogItemPayloadWorkspaceInvitationMethod"; import { WorkspaceAuditLogItemPayloadWorkspaceInvitationUserType } from "./WorkspaceAuditLogItemPayloadWorkspaceInvitationUserType"; +import { WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem } from "./WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem"; export const WorkspaceInvitation: core.serialization.ObjectSchema< serializers.WorkspaceInvitation.Raw, @@ -18,6 +19,7 @@ export const WorkspaceInvitation: core.serialization.ObjectSchema< userType: WorkspaceAuditLogItemPayloadWorkspaceInvitationUserType.optional(), roleName: core.serialization.string().optional(), previousRoleName: core.serialization.string().optional(), + targetUsers: core.serialization.list(WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem).optional(), }); export declare namespace WorkspaceInvitation { @@ -27,5 +29,6 @@ export declare namespace WorkspaceInvitation { userType?: WorkspaceAuditLogItemPayloadWorkspaceInvitationUserType.Raw | null; roleName?: string | null; previousRoleName?: string | null; + targetUsers?: WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem.Raw[] | null; } } diff --git a/src/serialization/types/WorkspaceInvitationAuditLogItemEventSubType.ts b/src/serialization/types/WorkspaceInvitationAuditLogItemEventSubType.ts index 1b045acc..3e1feda3 100644 --- a/src/serialization/types/WorkspaceInvitationAuditLogItemEventSubType.ts +++ b/src/serialization/types/WorkspaceInvitationAuditLogItemEventSubType.ts @@ -15,8 +15,15 @@ export const WorkspaceInvitationAuditLogItemEventSubType: core.serialization.Sch "invite_updated", "invite_canceled", "invite_declined", + "access_request_accepted", ]); export declare namespace WorkspaceInvitationAuditLogItemEventSubType { - export type Raw = "invite_sent" | "invite_accepted" | "invite_updated" | "invite_canceled" | "invite_declined"; + export type Raw = + | "invite_sent" + | "invite_accepted" + | "invite_updated" + | "invite_canceled" + | "invite_declined" + | "access_request_accepted"; } diff --git a/src/serialization/types/index.ts b/src/serialization/types/index.ts index 05a25767..226d0e81 100644 --- a/src/serialization/types/index.ts +++ b/src/serialization/types/index.ts @@ -34,12 +34,14 @@ export * from "./WorkspaceAuditLogItemPayloadSiteMembershipSite"; export * from "./WorkspaceAuditLogItemPayloadSiteMembershipTargetUser"; export * from "./WorkspaceAuditLogItemPayloadSiteMembershipMethod"; export * from "./WorkspaceAuditLogItemPayloadSiteMembershipUserType"; +export * from "./WorkspaceAuditLogItemPayloadSiteMembershipGranularAccess"; export * from "./SiteMembership"; export * from "./SiteMembershipAuditLogItemEventSubType"; export * from "./SiteMembershipAuditLogItem"; export * from "./WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUser"; export * from "./WorkspaceAuditLogItemPayloadWorkspaceInvitationMethod"; export * from "./WorkspaceAuditLogItemPayloadWorkspaceInvitationUserType"; +export * from "./WorkspaceAuditLogItemPayloadWorkspaceInvitationTargetUsersItem"; export * from "./WorkspaceInvitation"; export * from "./WorkspaceInvitationAuditLogItemEventSubType"; export * from "./WorkspaceInvitationAuditLogItem"; @@ -111,28 +113,28 @@ export * from "./PageOpenGraph"; export * from "./Page"; export * from "./PageList"; export * from "./TextNodeText"; -export * from "./TextNodeDom"; +export * from "./TextNode"; export * from "./ImageNodeImage"; -export * from "./ImageNodeDom"; +export * from "./ImageNode"; export * from "./Text"; export * from "./ComponentPropertyType"; export * from "./ComponentProperty"; -export * from "./ComponentNodeDom"; -export * from "./TextInputNodeDom"; +export * from "./ComponentNode"; +export * from "./TextInputNode"; export * from "./SelectNodeChoicesItem"; -export * from "./SelectNodeDom"; -export * from "./SubmitButtonNodeDom"; -export * from "./SearchButtonNodeDom"; +export * from "./SelectNode"; +export * from "./SubmitButtonNode"; +export * from "./SearchButtonNode"; export * from "./Node"; export * from "./Dom"; -export * from "./TextNode"; +export * from "./TextNodeWrite"; export * from "./ComponentInstanceNodePropertyOverridesWritePropertyOverridesItem"; -export * from "./ComponentInstance"; +export * from "./ComponentInstanceNodePropertyOverridesWrite"; export * from "./SelectNodeWriteChoicesItem"; export * from "./Select"; -export * from "./TextInput"; -export * from "./SubmitButton"; -export * from "./SearchButton"; +export * from "./TextInputNodeWrite"; +export * from "./SubmitButtonNodeWrite"; +export * from "./SearchButtonNodeWrite"; export * from "./Component"; export * from "./ComponentList"; export * from "./ComponentDom"; @@ -239,19 +241,14 @@ export * from "./NewOrder"; export * from "./UpdatedOrder"; export * from "./SingleLocaleCreatedPayloadFieldData"; export * from "./SingleLocaleCreatedPayload"; -export * from "./LocalizedItem"; -export * from "./MultiLocaleCreatedPayload"; -export * from "./CollectionItemCreatedPayload"; export * from "./CollectionItemCreated"; -export * from "./SingleLocaleChangedPayloadFieldData"; -export * from "./SingleLocaleChangedPayload"; -export * from "./MultiLocaleChangedPayloadFieldData"; -export * from "./MultiLocaleChangedPayload"; -export * from "./CollectionItemChangedPayload"; export * from "./CollectionItemChanged"; export * from "./CollectionItemRemovedPayloadFieldData"; export * from "./CollectionItemRemovedPayload"; export * from "./CollectionItemRemoved"; +export * from "./PayloadFieldData"; +export * from "./Payload"; +export * from "./CollectionItemPublished"; export * from "./CollectionItemUnpublishedPayloadFieldData"; export * from "./CollectionItemUnpublishedPayload"; export * from "./CollectionItemUnpublished"; diff --git a/tests/wire/accessGroups.test.ts b/tests/wire/accessGroups.test.ts index 3874beee..808ca1e2 100644 --- a/tests/wire/accessGroups.test.ts +++ b/tests/wire/accessGroups.test.ts @@ -10,13 +10,7 @@ describe("AccessGroups", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -49,7 +43,11 @@ describe("AccessGroups", () => { .jsonBody(rawResponseBody) .build(); - const response = await client.accessGroups.list("580e63e98c9a982ac9b8b741"); + const response = await client.accessGroups.list("580e63e98c9a982ac9b8b741", { + offset: 1.1, + limit: 1.1, + sort: "CreatedOn", + }); expect(response).toEqual({ count: 1, limit: 10, diff --git a/tests/wire/assets.test.ts b/tests/wire/assets.test.ts index a93ca8e7..bdcc5980 100644 --- a/tests/wire/assets.test.ts +++ b/tests/wire/assets.test.ts @@ -10,13 +10,7 @@ describe("Assets", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -84,7 +78,10 @@ describe("Assets", () => { .jsonBody(rawResponseBody) .build(); - const response = await client.assets.list("580e63e98c9a982ac9b8b741"); + const response = await client.assets.list("580e63e98c9a982ac9b8b741", { + offset: 1.1, + limit: 1.1, + }); expect(response).toEqual({ assets: [ { @@ -152,13 +149,7 @@ describe("Assets", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { fileName: "file.png", fileHash: "3c7d87c9575702bc3b1e991f4d3c638e" }; const rawResponseBody = { @@ -234,13 +225,7 @@ describe("Assets", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -308,13 +293,7 @@ describe("Assets", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); server.mockEndpoint().delete("/assets/580e63fc8c9a982ac9b8b745").respondWith().statusCode(200).build(); @@ -327,13 +306,7 @@ describe("Assets", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = {}; const rawResponseBody = { @@ -402,13 +375,7 @@ describe("Assets", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -456,13 +423,7 @@ describe("Assets", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { displayName: "my asset folder" }; const rawResponseBody = { @@ -501,13 +462,7 @@ describe("Assets", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { diff --git a/tests/wire/collections.test.ts b/tests/wire/collections.test.ts index fd887cef..e5f88e65 100644 --- a/tests/wire/collections.test.ts +++ b/tests/wire/collections.test.ts @@ -10,13 +10,7 @@ describe("Collections", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -90,13 +84,7 @@ describe("Collections", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { displayName: "Blog Posts", @@ -236,13 +224,7 @@ describe("Collections", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -580,13 +562,7 @@ describe("Collections", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); server.mockEndpoint().delete("/collections/580e63fc8c9a982ac9b8b745").respondWith().statusCode(200).build(); diff --git a/tests/wire/collections/fields.test.ts b/tests/wire/collections/fields.test.ts index 2363c952..6e27aaf6 100644 --- a/tests/wire/collections/fields.test.ts +++ b/tests/wire/collections/fields.test.ts @@ -10,13 +10,7 @@ describe("Fields", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { id: "562ac0395358780a1f5e6fbc", @@ -65,13 +59,7 @@ describe("Fields", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); server @@ -89,13 +77,7 @@ describe("Fields", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { isRequired: false, diff --git a/tests/wire/collections/items.test.ts b/tests/wire/collections/items.test.ts index 121c57e6..e3500c2d 100644 --- a/tests/wire/collections/items.test.ts +++ b/tests/wire/collections/items.test.ts @@ -10,13 +10,7 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -52,7 +46,15 @@ describe("Items", () => { .jsonBody(rawResponseBody) .build(); - const response = await client.collections.items.listItems("580e63fc8c9a982ac9b8b745"); + const response = await client.collections.items.listItems("580e63fc8c9a982ac9b8b745", { + cmsLocaleId: "cmsLocaleId", + offset: 1.1, + limit: 1.1, + name: "name", + slug: "slug", + sortBy: "lastPublished", + sortOrder: "asc", + }); expect(response).toEqual({ items: [ { @@ -94,18 +96,12 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { isArchived: false, isDraft: false, - fieldData: { name: "Pan Galactic Gargle Blaster Recipe", slug: "pan-galactic-gargle-blaster" }, + fieldData: { name: "The Hitchhiker's Guide to the Galaxy", slug: "hitchhikers-guide-to-the-galaxy" }, }; const rawResponseBody = { id: "42b720ef280c7a7a3be8cabe", @@ -115,7 +111,7 @@ describe("Items", () => { createdOn: "2022-11-17T17:11:57.148Z", isArchived: false, isDraft: false, - fieldData: { name: "Pan Galactic Gargle Blaster Recipe", slug: "pan-galactic-gargle-blaster" }, + fieldData: { name: "The Hitchhiker's Guide to the Galaxy", slug: "hitchhikers-guide-to-the-galaxy" }, }; server .mockEndpoint() @@ -127,12 +123,13 @@ describe("Items", () => { .build(); const response = await client.collections.items.createItem("580e63fc8c9a982ac9b8b745", { + skipInvalidFiles: true, body: { isArchived: false, isDraft: false, fieldData: { - name: "Pan Galactic Gargle Blaster Recipe", - slug: "pan-galactic-gargle-blaster", + name: "The Hitchhiker's Guide to the Galaxy", + slug: "hitchhikers-guide-to-the-galaxy", }, }, }); @@ -145,8 +142,8 @@ describe("Items", () => { isArchived: false, isDraft: false, fieldData: { - name: "Pan Galactic Gargle Blaster Recipe", - slug: "pan-galactic-gargle-blaster", + name: "The Hitchhiker's Guide to the Galaxy", + slug: "hitchhikers-guide-to-the-galaxy", }, }); }); @@ -155,13 +152,7 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { items: [{ id: "580e64008c9a982ac9b8b754" }] }; @@ -187,13 +178,7 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { items: [ @@ -274,6 +259,7 @@ describe("Items", () => { .build(); const response = await client.collections.items.updateItems("580e63fc8c9a982ac9b8b745", { + skipInvalidFiles: true, items: [ { id: "66f6ed9576ddacf3149d5ea6", @@ -376,13 +362,7 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -418,7 +398,15 @@ describe("Items", () => { .jsonBody(rawResponseBody) .build(); - const response = await client.collections.items.listItemsLive("580e63fc8c9a982ac9b8b745"); + const response = await client.collections.items.listItemsLive("580e63fc8c9a982ac9b8b745", { + cmsLocaleId: "cmsLocaleId", + offset: 1.1, + limit: 1.1, + name: "name", + slug: "slug", + sortBy: "lastPublished", + sortOrder: "asc", + }); expect(response).toEqual({ items: [ { @@ -460,18 +448,12 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { isArchived: false, isDraft: false, - fieldData: { name: "Pan Galactic Gargle Blaster Recipe", slug: "pan-galactic-gargle-blaster" }, + fieldData: { name: "The Hitchhiker's Guide to the Galaxy", slug: "hitchhikers-guide-to-the-galaxy" }, }; const rawResponseBody = { id: "42b720ef280c7a7a3be8cabe", @@ -481,7 +463,7 @@ describe("Items", () => { createdOn: "2022-11-17T17:11:57.148Z", isArchived: false, isDraft: false, - fieldData: { name: "Pan Galactic Gargle Blaster Recipe", slug: "pan-galactic-gargle-blaster" }, + fieldData: { name: "The Hitchhiker's Guide to the Galaxy", slug: "hitchhikers-guide-to-the-galaxy" }, }; server .mockEndpoint() @@ -493,12 +475,13 @@ describe("Items", () => { .build(); const response = await client.collections.items.createItemLive("580e63fc8c9a982ac9b8b745", { + skipInvalidFiles: true, body: { isArchived: false, isDraft: false, fieldData: { - name: "Pan Galactic Gargle Blaster Recipe", - slug: "pan-galactic-gargle-blaster", + name: "The Hitchhiker's Guide to the Galaxy", + slug: "hitchhikers-guide-to-the-galaxy", }, }, }); @@ -511,8 +494,8 @@ describe("Items", () => { isArchived: false, isDraft: false, fieldData: { - name: "Pan Galactic Gargle Blaster Recipe", - slug: "pan-galactic-gargle-blaster", + name: "The Hitchhiker's Guide to the Galaxy", + slug: "hitchhikers-guide-to-the-galaxy", }, }); }); @@ -521,13 +504,7 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { items: [{ id: "580e64008c9a982ac9b8b754" }] }; @@ -553,13 +530,7 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { items: [ @@ -639,6 +610,7 @@ describe("Items", () => { .build(); const response = await client.collections.items.updateItemsLive("580e63fc8c9a982ac9b8b745", { + skipInvalidFiles: true, items: [ { id: "66f6ed9576ddacf3149d5ea6", @@ -736,13 +708,7 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { cmsLocaleIds: ["66f6e966c9e1dc700a857ca3", "66f6e966c9e1dc700a857ca4", "66f6e966c9e1dc700a857ca5"], @@ -770,6 +736,7 @@ describe("Items", () => { .build(); const response = await client.collections.items.createItems("580e63fc8c9a982ac9b8b745", { + skipInvalidFiles: true, cmsLocaleIds: ["66f6e966c9e1dc700a857ca3", "66f6e966c9e1dc700a857ca4", "66f6e966c9e1dc700a857ca5"], isArchived: false, isDraft: false, @@ -797,13 +764,7 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -814,7 +775,7 @@ describe("Items", () => { createdOn: "2022-11-17T17:11:57.148Z", isArchived: false, isDraft: false, - fieldData: { name: "Pan Galactic Gargle Blaster Recipe", slug: "pan-galactic-gargle-blaster" }, + fieldData: { name: "The Hitchhiker's Guide to the Galaxy", slug: "hitchhikers-guide-to-the-galaxy" }, }; server .mockEndpoint() @@ -824,7 +785,13 @@ describe("Items", () => { .jsonBody(rawResponseBody) .build(); - const response = await client.collections.items.getItem("580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754"); + const response = await client.collections.items.getItem( + "580e63fc8c9a982ac9b8b745", + "580e64008c9a982ac9b8b754", + { + cmsLocaleId: "cmsLocaleId", + }, + ); expect(response).toEqual({ id: "42b720ef280c7a7a3be8cabe", cmsLocaleId: "653ad57de882f528b32e810e", @@ -834,8 +801,8 @@ describe("Items", () => { isArchived: false, isDraft: false, fieldData: { - name: "Pan Galactic Gargle Blaster Recipe", - slug: "pan-galactic-gargle-blaster", + name: "The Hitchhiker's Guide to the Galaxy", + slug: "hitchhikers-guide-to-the-galaxy", }, }); }); @@ -844,13 +811,7 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); server @@ -863,6 +824,9 @@ describe("Items", () => { const response = await client.collections.items.deleteItem( "580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", + { + cmsLocaleId: "cmsLocaleId", + }, ); expect(response).toEqual(undefined); }); @@ -871,18 +835,12 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { isArchived: false, isDraft: false, - fieldData: { name: "Pan Galactic Gargle Blaster Recipe", slug: "pan-galactic-gargle-blaster" }, + fieldData: { name: "The Hitchhiker's Guide to the Galaxy", slug: "hitchhikers-guide-to-the-galaxy" }, }; const rawResponseBody = { id: "42b720ef280c7a7a3be8cabe", @@ -892,7 +850,7 @@ describe("Items", () => { createdOn: "2022-11-17T17:11:57.148Z", isArchived: false, isDraft: false, - fieldData: { name: "Pan Galactic Gargle Blaster Recipe", slug: "pan-galactic-gargle-blaster" }, + fieldData: { name: "The Hitchhiker's Guide to the Galaxy", slug: "hitchhikers-guide-to-the-galaxy" }, }; server .mockEndpoint() @@ -907,12 +865,13 @@ describe("Items", () => { "580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", { + skipInvalidFiles: true, body: { isArchived: false, isDraft: false, fieldData: { - name: "Pan Galactic Gargle Blaster Recipe", - slug: "pan-galactic-gargle-blaster", + name: "The Hitchhiker's Guide to the Galaxy", + slug: "hitchhikers-guide-to-the-galaxy", }, }, }, @@ -926,8 +885,8 @@ describe("Items", () => { isArchived: false, isDraft: false, fieldData: { - name: "Pan Galactic Gargle Blaster Recipe", - slug: "pan-galactic-gargle-blaster", + name: "The Hitchhiker's Guide to the Galaxy", + slug: "hitchhikers-guide-to-the-galaxy", }, }); }); @@ -936,13 +895,7 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -953,7 +906,7 @@ describe("Items", () => { createdOn: "2022-11-17T17:11:57.148Z", isArchived: false, isDraft: false, - fieldData: { name: "Pan Galactic Gargle Blaster Recipe", slug: "pan-galactic-gargle-blaster" }, + fieldData: { name: "The Hitchhiker's Guide to the Galaxy", slug: "hitchhikers-guide-to-the-galaxy" }, }; server .mockEndpoint() @@ -966,6 +919,9 @@ describe("Items", () => { const response = await client.collections.items.getItemLive( "580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", + { + cmsLocaleId: "cmsLocaleId", + }, ); expect(response).toEqual({ id: "42b720ef280c7a7a3be8cabe", @@ -976,8 +932,8 @@ describe("Items", () => { isArchived: false, isDraft: false, fieldData: { - name: "Pan Galactic Gargle Blaster Recipe", - slug: "pan-galactic-gargle-blaster", + name: "The Hitchhiker's Guide to the Galaxy", + slug: "hitchhikers-guide-to-the-galaxy", }, }); }); @@ -986,13 +942,7 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); server @@ -1005,6 +955,9 @@ describe("Items", () => { const response = await client.collections.items.deleteItemLive( "580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", + { + cmsLocaleId: "cmsLocaleId", + }, ); expect(response).toEqual(undefined); }); @@ -1013,18 +966,12 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { isArchived: false, isDraft: false, - fieldData: { name: "Pan Galactic Gargle Blaster Recipe", slug: "pan-galactic-gargle-blaster" }, + fieldData: { name: "The Hitchhiker's Guide to the Galaxy", slug: "hitchhikers-guide-to-the-galaxy" }, }; const rawResponseBody = { id: "42b720ef280c7a7a3be8cabe", @@ -1034,7 +981,7 @@ describe("Items", () => { createdOn: "2022-11-17T17:11:57.148Z", isArchived: false, isDraft: false, - fieldData: { name: "Pan Galactic Gargle Blaster Recipe", slug: "pan-galactic-gargle-blaster" }, + fieldData: { name: "The Hitchhiker's Guide to the Galaxy", slug: "hitchhikers-guide-to-the-galaxy" }, }; server .mockEndpoint() @@ -1049,12 +996,13 @@ describe("Items", () => { "580e63fc8c9a982ac9b8b745", "580e64008c9a982ac9b8b754", { + skipInvalidFiles: true, body: { isArchived: false, isDraft: false, fieldData: { - name: "Pan Galactic Gargle Blaster Recipe", - slug: "pan-galactic-gargle-blaster", + name: "The Hitchhiker's Guide to the Galaxy", + slug: "hitchhikers-guide-to-the-galaxy", }, }, }, @@ -1068,8 +1016,8 @@ describe("Items", () => { isArchived: false, isDraft: false, fieldData: { - name: "Pan Galactic Gargle Blaster Recipe", - slug: "pan-galactic-gargle-blaster", + name: "The Hitchhiker's Guide to the Galaxy", + slug: "hitchhikers-guide-to-the-galaxy", }, }); }); @@ -1078,13 +1026,7 @@ describe("Items", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { itemIds: ["643fd856d66b6528195ee2ca", "643fd856d66b6528195ee2cb", "643fd856d66b6528195ee2cc"], diff --git a/tests/wire/components.test.ts b/tests/wire/components.test.ts index f93ef8a3..91326143 100644 --- a/tests/wire/components.test.ts +++ b/tests/wire/components.test.ts @@ -10,13 +10,7 @@ describe("Components", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -50,6 +44,8 @@ describe("Components", () => { const response = await client.components.list("580e63e98c9a982ac9b8b741", { branchId: "68026fa68ef6dc744c75b833", + limit: 1.1, + offset: 1.1, }); expect(response).toEqual({ components: [ @@ -90,13 +86,7 @@ describe("Components", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -137,6 +127,8 @@ describe("Components", () => { { localeId: "65427cf400e02b306eaa04a0", branchId: "68026fa68ef6dc744c75b833", + limit: 1.1, + offset: 1.1, }, ); expect(response).toEqual({ @@ -219,13 +211,7 @@ describe("Components", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { nodes: [ @@ -333,13 +319,7 @@ describe("Components", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -374,6 +354,8 @@ describe("Components", () => { { localeId: "65427cf400e02b306eaa04a0", branchId: "68026fa68ef6dc744c75b833", + limit: 1.1, + offset: 1.1, }, ); expect(response).toEqual({ @@ -408,13 +390,7 @@ describe("Components", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { properties: [ diff --git a/tests/wire/ecommerce.test.ts b/tests/wire/ecommerce.test.ts index 5e239d8e..0b004ea8 100644 --- a/tests/wire/ecommerce.test.ts +++ b/tests/wire/ecommerce.test.ts @@ -10,13 +10,7 @@ describe("Ecommerce", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { diff --git a/tests/wire/forms.test.ts b/tests/wire/forms.test.ts index d700e9f7..96dc1902 100644 --- a/tests/wire/forms.test.ts +++ b/tests/wire/forms.test.ts @@ -10,13 +10,7 @@ describe("Forms", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -71,7 +65,10 @@ describe("Forms", () => { .jsonBody(rawResponseBody) .build(); - const response = await client.forms.list("580e63e98c9a982ac9b8b741"); + const response = await client.forms.list("580e63e98c9a982ac9b8b741", { + limit: 1.1, + offset: 1.1, + }); expect(response).toEqual({ forms: [ { @@ -137,13 +134,7 @@ describe("Forms", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -217,13 +208,7 @@ describe("Forms", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -255,7 +240,10 @@ describe("Forms", () => { .jsonBody(rawResponseBody) .build(); - const response = await client.forms.listSubmissions("580e63e98c9a982ac9b8b741"); + const response = await client.forms.listSubmissions("580e63e98c9a982ac9b8b741", { + offset: 1.1, + limit: 1.1, + }); expect(response).toEqual({ formSubmissions: [ { @@ -293,13 +281,7 @@ describe("Forms", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -336,13 +318,7 @@ describe("Forms", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); server @@ -360,13 +336,7 @@ describe("Forms", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = {}; const rawResponseBody = { @@ -404,13 +374,7 @@ describe("Forms", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -444,6 +408,8 @@ describe("Forms", () => { const response = await client.forms.listSubmissionsBySite("580e63e98c9a982ac9b8b741", { elementId: "18259716-3e5a-646a-5f41-5dc4b9405aa0", + offset: 1.1, + limit: 1.1, }); expect(response).toEqual({ formSubmissions: [ @@ -477,4 +443,180 @@ describe("Forms", () => { }, }); }); + + test("list-submissions-by-form-and-site", async () => { + const server = mockServerPool.createServer(); + const client = new WebflowClient({ + accessToken: "test", + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, + }); + + const rawResponseBody = { + formSubmissions: [ + { + id: "6321ca84df3949bfc6752327", + displayName: "Sample Form", + siteId: "62749158efef318abc8d5a0f", + workspaceId: "62749158efef318abc8d5a0f", + dateSubmitted: "2022-09-14T12:35:16Z", + formResponse: { "First Name": "Arthur", "Last Name": "Dent" }, + }, + { + id: "660d64fabf6e0a0d4edab981", + displayName: "Sample Form", + siteId: "62749158efef318abc8d5a0f", + workspaceId: "62749158efef318abc8d5a0f", + dateSubmitted: "2022-09-14T12:35:16Z", + formResponse: { "First Name": "Ford", "Last Name": "Prefect" }, + }, + ], + pagination: { limit: 25, offset: 0, total: 2 }, + }; + server + .mockEndpoint() + .get("/sites/580e63e98c9a982ac9b8b741/forms/580e63e98c9a982ac9b8b741/submissions") + .respondWith() + .statusCode(200) + .jsonBody(rawResponseBody) + .build(); + + const response = await client.forms.listSubmissionsByFormAndSite( + "580e63e98c9a982ac9b8b741", + "580e63e98c9a982ac9b8b741", + { + offset: 1.1, + limit: 1.1, + }, + ); + expect(response).toEqual({ + formSubmissions: [ + { + id: "6321ca84df3949bfc6752327", + displayName: "Sample Form", + siteId: "62749158efef318abc8d5a0f", + workspaceId: "62749158efef318abc8d5a0f", + dateSubmitted: new Date("2022-09-14T12:35:16.000Z"), + formResponse: { + "First Name": "Arthur", + "Last Name": "Dent", + }, + }, + { + id: "660d64fabf6e0a0d4edab981", + displayName: "Sample Form", + siteId: "62749158efef318abc8d5a0f", + workspaceId: "62749158efef318abc8d5a0f", + dateSubmitted: new Date("2022-09-14T12:35:16.000Z"), + formResponse: { + "First Name": "Ford", + "Last Name": "Prefect", + }, + }, + ], + pagination: { + limit: 25, + offset: 0, + total: 2, + }, + }); + }); + + test("get-submission-by-site", async () => { + const server = mockServerPool.createServer(); + const client = new WebflowClient({ + accessToken: "test", + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, + }); + + const rawResponseBody = { + id: "6321ca84df3949bfc6752327", + displayName: "Sample Form", + siteId: "62749158efef318abc8d5a0f", + workspaceId: "62749158efef318abc8d5a0f", + dateSubmitted: "2022-09-14T12:35:16Z", + formResponse: { "First Name": "Arthur", "Last Name": "Dent" }, + }; + server + .mockEndpoint() + .get("/sites/580e63e98c9a982ac9b8b741/form_submissions/580e63e98c9a982ac9b8b741") + .respondWith() + .statusCode(200) + .jsonBody(rawResponseBody) + .build(); + + const response = await client.forms.getSubmissionBySite("580e63e98c9a982ac9b8b741", "580e63e98c9a982ac9b8b741"); + expect(response).toEqual({ + id: "6321ca84df3949bfc6752327", + displayName: "Sample Form", + siteId: "62749158efef318abc8d5a0f", + workspaceId: "62749158efef318abc8d5a0f", + dateSubmitted: new Date("2022-09-14T12:35:16.000Z"), + formResponse: { + "First Name": "Arthur", + "Last Name": "Dent", + }, + }); + }); + + test("delete-submission-by-site", async () => { + const server = mockServerPool.createServer(); + const client = new WebflowClient({ + accessToken: "test", + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, + }); + + server + .mockEndpoint() + .delete("/sites/580e63e98c9a982ac9b8b741/form_submissions/580e63e98c9a982ac9b8b741") + .respondWith() + .statusCode(200) + .build(); + + const response = await client.forms.deleteSubmissionBySite( + "580e63e98c9a982ac9b8b741", + "580e63e98c9a982ac9b8b741", + ); + expect(response).toEqual(undefined); + }); + + test("update-submission-by-site", async () => { + const server = mockServerPool.createServer(); + const client = new WebflowClient({ + accessToken: "test", + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, + }); + const rawRequestBody = {}; + const rawResponseBody = { + id: "6321ca84df3949bfc6752327", + displayName: "Sample Form", + siteId: "62749158efef318abc8d5a0f", + workspaceId: "62749158efef318abc8d5a0f", + dateSubmitted: "2022-09-14T12:35:16Z", + formResponse: { "First Name": "Arthur", "Last Name": "Dent" }, + }; + server + .mockEndpoint() + .patch("/sites/580e63e98c9a982ac9b8b741/form_submissions/580e63e98c9a982ac9b8b741") + .jsonBody(rawRequestBody) + .respondWith() + .statusCode(200) + .jsonBody(rawResponseBody) + .build(); + + const response = await client.forms.updateSubmissionBySite( + "580e63e98c9a982ac9b8b741", + "580e63e98c9a982ac9b8b741", + ); + expect(response).toEqual({ + id: "6321ca84df3949bfc6752327", + displayName: "Sample Form", + siteId: "62749158efef318abc8d5a0f", + workspaceId: "62749158efef318abc8d5a0f", + dateSubmitted: new Date("2022-09-14T12:35:16.000Z"), + formResponse: { + "First Name": "Arthur", + "Last Name": "Dent", + }, + }); + }); }); diff --git a/tests/wire/inventory.test.ts b/tests/wire/inventory.test.ts index f04ae495..c64b448f 100644 --- a/tests/wire/inventory.test.ts +++ b/tests/wire/inventory.test.ts @@ -10,13 +10,7 @@ describe("Inventory", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { id: "5bfedb42bab0ad90fa7dad39", quantity: 100, inventoryType: "finite" }; @@ -40,13 +34,7 @@ describe("Inventory", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { inventoryType: "infinite" }; const rawResponseBody = { id: "5bfedb42bab0ad90fa7dad39", quantity: 100, inventoryType: "finite" }; diff --git a/tests/wire/orders.test.ts b/tests/wire/orders.test.ts index 685f5e5c..e21f8ddc 100644 --- a/tests/wire/orders.test.ts +++ b/tests/wire/orders.test.ts @@ -10,13 +10,7 @@ describe("Orders", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -28,9 +22,9 @@ describe("Orders", () => { "Customer requested gift wrapping and a personalized note saying: Happy Birthday, Ford! 🎉 Please ensure the item is packed with extra bubble wrap for safe transit.", orderComment: 'Please gift wrap with a personal note saying "Happy Birthday, Ford! 🎉', acceptedOn: "2024-04-10T13:16:21Z", - customerPaid: { unit: "USD", value: "5892", string: " 211.55 USD" }, - netAmount: { unit: "USD", value: "5892", string: " 200.89 USD" }, - applicationFee: { unit: "USD", value: "5892", string: " 4.23 USD" }, + customerPaid: { unit: "USD", value: "5892", string: "$ 211.55 USD" }, + netAmount: { unit: "USD", value: "5892", string: "$ 200.89 USD" }, + applicationFee: { unit: "USD", value: "5892", string: "$ 4.23 USD" }, allAddresses: [ { type: "billing", @@ -81,7 +75,7 @@ describe("Orders", () => { purchasedItems: [ { count: 2, - rowTotal: { unit: "USD", value: "5892", string: " 111.22 USD" }, + rowTotal: { unit: "USD", value: "5892", string: "$ 111.22 USD" }, productId: "66072fb61b89448912e26791", productName: "Luxurious Fresh Ball", productSlug: "luxurious-fresh-ball", @@ -92,7 +86,7 @@ describe("Orders", () => { variantImage: { url: "https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg", }, - variantPrice: { unit: "USD", value: "5892", string: " 55.61 USD" }, + variantPrice: { unit: "USD", value: "5892", string: "$ 55.61 USD" }, weight: 11, width: 82, height: 70, @@ -100,7 +94,7 @@ describe("Orders", () => { }, { count: 1, - rowTotal: { unit: "USD", value: "5892", string: " 83.09 USD" }, + rowTotal: { unit: "USD", value: "5892", string: "$ 83.09 USD" }, productId: "66072fb61b89448912e2678b", productName: "Incredible Bronze Towels", productSlug: "incredible-bronze-towels", @@ -111,7 +105,7 @@ describe("Orders", () => { variantImage: { url: "https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e26729_image16.jpeg", }, - variantPrice: { unit: "USD", value: "5892", string: " 83.09 USD" }, + variantPrice: { unit: "USD", value: "5892", string: "$ 83.09 USD" }, width: 19, height: 72, length: 18, @@ -142,7 +136,7 @@ describe("Orders", () => { type: "tax", name: "State Taxes", description: "CA Taxes (6.25%)", - price: { unit: "USD", value: "5892", string: "3.44" }, + price: { unit: "USD", value: "5892", string: "$3.44" }, }, ], }, @@ -161,9 +155,9 @@ describe("Orders", () => { orderComment: "", acceptedOn: "2024-03-29T21:29:21Z", refundedOn: "2024-04-08T18:25:04Z", - customerPaid: { unit: "USD", value: "5892", string: " 118.73 USD" }, - netAmount: { unit: "USD", value: "5892", string: " 112.62 USD" }, - applicationFee: { unit: "USD", value: "5892", string: " 2.37 USD" }, + customerPaid: { unit: "USD", value: "5892", string: "$ 118.73 USD" }, + netAmount: { unit: "USD", value: "5892", string: "$ 112.62 USD" }, + applicationFee: { unit: "USD", value: "5892", string: "$ 2.37 USD" }, allAddresses: [ { type: "billing", @@ -213,7 +207,7 @@ describe("Orders", () => { purchasedItems: [ { count: 1, - rowTotal: { unit: "USD", value: "5892", string: " 55.61 USD" }, + rowTotal: { unit: "USD", value: "5892", string: "$ 55.61 USD" }, productId: "66072fb61b89448912e26791", productName: "Luxurious Fresh Ball", productSlug: "luxurious-fresh-ball", @@ -224,7 +218,7 @@ describe("Orders", () => { variantImage: { url: "https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg", }, - variantPrice: { unit: "USD", value: "5892", string: " 55.61 USD" }, + variantPrice: { unit: "USD", value: "5892", string: "$ 55.61 USD" }, weight: 11, width: 82, height: 70, @@ -232,7 +226,7 @@ describe("Orders", () => { }, { count: 1, - rowTotal: { unit: "USD", value: "5892", string: " 53.44 USD" }, + rowTotal: { unit: "USD", value: "5892", string: "$ 53.44 USD" }, productId: "66072fb61b89448912e26799", productName: "Recycled Steel Gloves", productSlug: "recycled-steel-gloves", @@ -243,7 +237,7 @@ describe("Orders", () => { variantImage: { url: "https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2671e_image2.jpeg", }, - variantPrice: { unit: "USD", value: "5892", string: " 53.44 USD" }, + variantPrice: { unit: "USD", value: "5892", string: "$ 53.44 USD" }, weight: 38, width: 76, height: 85, @@ -272,28 +266,28 @@ describe("Orders", () => { hasDownloads: false, paymentProcessor: "stripe", totals: { - subtotal: { unit: "USD", value: "5892", string: " 109.05 USD" }, + subtotal: { unit: "USD", value: "5892", string: "$ 109.05 USD" }, extras: [ { type: "tax", name: "State Taxes", description: "NY Taxes (4.00%)", - price: { unit: "USD", value: "5892", string: " 4.36 USD" }, + price: { unit: "USD", value: "5892", string: "$ 4.36 USD" }, }, { type: "tax", name: "City Taxes", description: "NEW YORK Taxes (4.88%)", - price: { unit: "USD", value: "5892", string: " 5.32 USD" }, + price: { unit: "USD", value: "5892", string: "$ 5.32 USD" }, }, { type: "shipping", name: "Flat", description: "", - price: { unit: "USD", value: "5892", string: " 0.00 USD" }, + price: { unit: "USD", value: "5892", string: "$ 0.00 USD" }, }, ], - total: { unit: "USD", value: "5892", string: " 118.73 USD" }, + total: { unit: "USD", value: "5892", string: "$ 118.73 USD" }, }, downloadFiles: [ { @@ -314,7 +308,11 @@ describe("Orders", () => { .jsonBody(rawResponseBody) .build(); - const response = await client.orders.list("580e63e98c9a982ac9b8b741"); + const response = await client.orders.list("580e63e98c9a982ac9b8b741", { + status: "pending", + offset: 1.1, + limit: 1.1, + }); expect(response).toEqual({ orders: [ { @@ -327,17 +325,17 @@ describe("Orders", () => { customerPaid: { unit: "USD", value: "5892", - string: " 211.55 USD", + string: "$ 211.55 USD", }, netAmount: { unit: "USD", value: "5892", - string: " 200.89 USD", + string: "$ 200.89 USD", }, applicationFee: { unit: "USD", value: "5892", - string: " 4.23 USD", + string: "$ 4.23 USD", }, allAddresses: [ { @@ -395,7 +393,7 @@ describe("Orders", () => { rowTotal: { unit: "USD", value: "5892", - string: " 111.22 USD", + string: "$ 111.22 USD", }, productId: "66072fb61b89448912e26791", productName: "Luxurious Fresh Ball", @@ -410,7 +408,7 @@ describe("Orders", () => { variantPrice: { unit: "USD", value: "5892", - string: " 55.61 USD", + string: "$ 55.61 USD", }, weight: 11, width: 82, @@ -422,7 +420,7 @@ describe("Orders", () => { rowTotal: { unit: "USD", value: "5892", - string: " 83.09 USD", + string: "$ 83.09 USD", }, productId: "66072fb61b89448912e2678b", productName: "Incredible Bronze Towels", @@ -437,7 +435,7 @@ describe("Orders", () => { variantPrice: { unit: "USD", value: "5892", - string: " 83.09 USD", + string: "$ 83.09 USD", }, width: 19, height: 72, @@ -481,7 +479,7 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: "3.44", + string: "$3.44", }, }, ], @@ -504,17 +502,17 @@ describe("Orders", () => { customerPaid: { unit: "USD", value: "5892", - string: " 118.73 USD", + string: "$ 118.73 USD", }, netAmount: { unit: "USD", value: "5892", - string: " 112.62 USD", + string: "$ 112.62 USD", }, applicationFee: { unit: "USD", value: "5892", - string: " 2.37 USD", + string: "$ 2.37 USD", }, allAddresses: [ { @@ -571,7 +569,7 @@ describe("Orders", () => { rowTotal: { unit: "USD", value: "5892", - string: " 55.61 USD", + string: "$ 55.61 USD", }, productId: "66072fb61b89448912e26791", productName: "Luxurious Fresh Ball", @@ -586,7 +584,7 @@ describe("Orders", () => { variantPrice: { unit: "USD", value: "5892", - string: " 55.61 USD", + string: "$ 55.61 USD", }, weight: 11, width: 82, @@ -598,7 +596,7 @@ describe("Orders", () => { rowTotal: { unit: "USD", value: "5892", - string: " 53.44 USD", + string: "$ 53.44 USD", }, productId: "66072fb61b89448912e26799", productName: "Recycled Steel Gloves", @@ -613,7 +611,7 @@ describe("Orders", () => { variantPrice: { unit: "USD", value: "5892", - string: " 53.44 USD", + string: "$ 53.44 USD", }, weight: 38, width: 76, @@ -655,7 +653,7 @@ describe("Orders", () => { subtotal: { unit: "USD", value: "5892", - string: " 109.05 USD", + string: "$ 109.05 USD", }, extras: [ { @@ -665,7 +663,7 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 4.36 USD", + string: "$ 4.36 USD", }, }, { @@ -675,7 +673,7 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 5.32 USD", + string: "$ 5.32 USD", }, }, { @@ -685,14 +683,14 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 0.00 USD", + string: "$ 0.00 USD", }, }, ], total: { unit: "USD", value: "5892", - string: " 118.73 USD", + string: "$ 118.73 USD", }, }, downloadFiles: [ @@ -716,13 +714,7 @@ describe("Orders", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -737,9 +729,9 @@ describe("Orders", () => { disputedOn: "2024-03-29T21:29:21Z", disputeUpdatedOn: "2024-03-29T21:29:21Z", disputeLastStatus: "charge_refunded", - customerPaid: { unit: "USD", value: "5892", string: " 118.73 USD" }, - netAmount: { unit: "USD", value: "5892", string: " 112.62 USD" }, - applicationFee: { unit: "USD", value: "5892", string: " 2.37 USD" }, + customerPaid: { unit: "USD", value: "5892", string: "$ 118.73 USD" }, + netAmount: { unit: "USD", value: "5892", string: "$ 112.62 USD" }, + applicationFee: { unit: "USD", value: "5892", string: "$ 2.37 USD" }, allAddresses: [ { type: "billing", @@ -793,7 +785,7 @@ describe("Orders", () => { purchasedItems: [ { count: 1, - rowTotal: { unit: "USD", value: "5892", string: " 55.61 USD" }, + rowTotal: { unit: "USD", value: "5892", string: "$ 55.61 USD" }, productId: "66072fb61b89448912e26791", productName: "Luxurious Fresh Ball", productSlug: "luxurious-fresh-ball", @@ -804,7 +796,7 @@ describe("Orders", () => { variantImage: { url: "https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg", }, - variantPrice: { unit: "USD", value: "5892", string: " 55.61 USD" }, + variantPrice: { unit: "USD", value: "5892", string: "$ 55.61 USD" }, weight: 11, width: 82, height: 70, @@ -812,7 +804,7 @@ describe("Orders", () => { }, { count: 1, - rowTotal: { unit: "USD", value: "5892", string: " 53.44 USD" }, + rowTotal: { unit: "USD", value: "5892", string: "$ 53.44 USD" }, productId: "66072fb61b89448912e26799", productName: "Recycled Steel Gloves", productSlug: "recycled-steel-gloves", @@ -823,7 +815,7 @@ describe("Orders", () => { variantImage: { url: "https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2671e_image2.jpeg", }, - variantPrice: { unit: "USD", value: "5892", string: " 53.44 USD" }, + variantPrice: { unit: "USD", value: "5892", string: "$ 53.44 USD" }, weight: 38, width: 76, height: 85, @@ -847,28 +839,28 @@ describe("Orders", () => { hasDownloads: false, paymentProcessor: "stripe", totals: { - subtotal: { unit: "USD", value: "5892", string: " 109.05 USD" }, + subtotal: { unit: "USD", value: "5892", string: "$ 109.05 USD" }, extras: [ { type: "tax", name: "State Taxes", description: "NY Taxes (4.00%)", - price: { unit: "USD", value: "5892", string: " 4.36 USD" }, + price: { unit: "USD", value: "5892", string: "$ 4.36 USD" }, }, { type: "tax", name: "City Taxes", description: "NEW YORK Taxes (4.88%)", - price: { unit: "USD", value: "5892", string: " 5.32 USD" }, + price: { unit: "USD", value: "5892", string: "$ 5.32 USD" }, }, { type: "shipping", name: "Flat", description: "", - price: { unit: "USD", value: "5892", string: " 0.00 USD" }, + price: { unit: "USD", value: "5892", string: "$ 0.00 USD" }, }, ], - total: { unit: "USD", value: "5892", string: " 118.73 USD" }, + total: { unit: "USD", value: "5892", string: "$ 118.73 USD" }, }, downloadFiles: [ { @@ -902,17 +894,17 @@ describe("Orders", () => { customerPaid: { unit: "USD", value: "5892", - string: " 118.73 USD", + string: "$ 118.73 USD", }, netAmount: { unit: "USD", value: "5892", - string: " 112.62 USD", + string: "$ 112.62 USD", }, applicationFee: { unit: "USD", value: "5892", - string: " 2.37 USD", + string: "$ 2.37 USD", }, allAddresses: [ { @@ -973,7 +965,7 @@ describe("Orders", () => { rowTotal: { unit: "USD", value: "5892", - string: " 55.61 USD", + string: "$ 55.61 USD", }, productId: "66072fb61b89448912e26791", productName: "Luxurious Fresh Ball", @@ -988,7 +980,7 @@ describe("Orders", () => { variantPrice: { unit: "USD", value: "5892", - string: " 55.61 USD", + string: "$ 55.61 USD", }, weight: 11, width: 82, @@ -1000,7 +992,7 @@ describe("Orders", () => { rowTotal: { unit: "USD", value: "5892", - string: " 53.44 USD", + string: "$ 53.44 USD", }, productId: "66072fb61b89448912e26799", productName: "Recycled Steel Gloves", @@ -1015,7 +1007,7 @@ describe("Orders", () => { variantPrice: { unit: "USD", value: "5892", - string: " 53.44 USD", + string: "$ 53.44 USD", }, weight: 38, width: 76, @@ -1057,7 +1049,7 @@ describe("Orders", () => { subtotal: { unit: "USD", value: "5892", - string: " 109.05 USD", + string: "$ 109.05 USD", }, extras: [ { @@ -1067,7 +1059,7 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 4.36 USD", + string: "$ 4.36 USD", }, }, { @@ -1077,7 +1069,7 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 5.32 USD", + string: "$ 5.32 USD", }, }, { @@ -1087,14 +1079,14 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 0.00 USD", + string: "$ 0.00 USD", }, }, ], total: { unit: "USD", value: "5892", - string: " 118.73 USD", + string: "$ 118.73 USD", }, }, downloadFiles: [ @@ -1111,13 +1103,7 @@ describe("Orders", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = {}; const rawResponseBody = { @@ -1132,9 +1118,9 @@ describe("Orders", () => { disputedOn: "2024-03-29T21:29:21Z", disputeUpdatedOn: "2024-03-29T21:29:21Z", disputeLastStatus: "charge_refunded", - customerPaid: { unit: "USD", value: "5892", string: " 118.73 USD" }, - netAmount: { unit: "USD", value: "5892", string: " 112.62 USD" }, - applicationFee: { unit: "USD", value: "5892", string: " 2.37 USD" }, + customerPaid: { unit: "USD", value: "5892", string: "$ 118.73 USD" }, + netAmount: { unit: "USD", value: "5892", string: "$ 112.62 USD" }, + applicationFee: { unit: "USD", value: "5892", string: "$ 2.37 USD" }, allAddresses: [ { type: "billing", @@ -1188,7 +1174,7 @@ describe("Orders", () => { purchasedItems: [ { count: 1, - rowTotal: { unit: "USD", value: "5892", string: " 55.61 USD" }, + rowTotal: { unit: "USD", value: "5892", string: "$ 55.61 USD" }, productId: "66072fb61b89448912e26791", productName: "Luxurious Fresh Ball", productSlug: "luxurious-fresh-ball", @@ -1199,7 +1185,7 @@ describe("Orders", () => { variantImage: { url: "https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg", }, - variantPrice: { unit: "USD", value: "5892", string: " 55.61 USD" }, + variantPrice: { unit: "USD", value: "5892", string: "$ 55.61 USD" }, weight: 11, width: 82, height: 70, @@ -1207,7 +1193,7 @@ describe("Orders", () => { }, { count: 1, - rowTotal: { unit: "USD", value: "5892", string: " 53.44 USD" }, + rowTotal: { unit: "USD", value: "5892", string: "$ 53.44 USD" }, productId: "66072fb61b89448912e26799", productName: "Recycled Steel Gloves", productSlug: "recycled-steel-gloves", @@ -1218,7 +1204,7 @@ describe("Orders", () => { variantImage: { url: "https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2671e_image2.jpeg", }, - variantPrice: { unit: "USD", value: "5892", string: " 53.44 USD" }, + variantPrice: { unit: "USD", value: "5892", string: "$ 53.44 USD" }, weight: 38, width: 76, height: 85, @@ -1242,28 +1228,28 @@ describe("Orders", () => { hasDownloads: false, paymentProcessor: "stripe", totals: { - subtotal: { unit: "USD", value: "5892", string: " 109.05 USD" }, + subtotal: { unit: "USD", value: "5892", string: "$ 109.05 USD" }, extras: [ { type: "tax", name: "State Taxes", description: "NY Taxes (4.00%)", - price: { unit: "USD", value: "5892", string: " 4.36 USD" }, + price: { unit: "USD", value: "5892", string: "$ 4.36 USD" }, }, { type: "tax", name: "City Taxes", description: "NEW YORK Taxes (4.88%)", - price: { unit: "USD", value: "5892", string: " 5.32 USD" }, + price: { unit: "USD", value: "5892", string: "$ 5.32 USD" }, }, { type: "shipping", name: "Flat", description: "", - price: { unit: "USD", value: "5892", string: " 0.00 USD" }, + price: { unit: "USD", value: "5892", string: "$ 0.00 USD" }, }, ], - total: { unit: "USD", value: "5892", string: " 118.73 USD" }, + total: { unit: "USD", value: "5892", string: "$ 118.73 USD" }, }, downloadFiles: [ { @@ -1298,17 +1284,17 @@ describe("Orders", () => { customerPaid: { unit: "USD", value: "5892", - string: " 118.73 USD", + string: "$ 118.73 USD", }, netAmount: { unit: "USD", value: "5892", - string: " 112.62 USD", + string: "$ 112.62 USD", }, applicationFee: { unit: "USD", value: "5892", - string: " 2.37 USD", + string: "$ 2.37 USD", }, allAddresses: [ { @@ -1369,7 +1355,7 @@ describe("Orders", () => { rowTotal: { unit: "USD", value: "5892", - string: " 55.61 USD", + string: "$ 55.61 USD", }, productId: "66072fb61b89448912e26791", productName: "Luxurious Fresh Ball", @@ -1384,7 +1370,7 @@ describe("Orders", () => { variantPrice: { unit: "USD", value: "5892", - string: " 55.61 USD", + string: "$ 55.61 USD", }, weight: 11, width: 82, @@ -1396,7 +1382,7 @@ describe("Orders", () => { rowTotal: { unit: "USD", value: "5892", - string: " 53.44 USD", + string: "$ 53.44 USD", }, productId: "66072fb61b89448912e26799", productName: "Recycled Steel Gloves", @@ -1411,7 +1397,7 @@ describe("Orders", () => { variantPrice: { unit: "USD", value: "5892", - string: " 53.44 USD", + string: "$ 53.44 USD", }, weight: 38, width: 76, @@ -1453,7 +1439,7 @@ describe("Orders", () => { subtotal: { unit: "USD", value: "5892", - string: " 109.05 USD", + string: "$ 109.05 USD", }, extras: [ { @@ -1463,7 +1449,7 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 4.36 USD", + string: "$ 4.36 USD", }, }, { @@ -1473,7 +1459,7 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 5.32 USD", + string: "$ 5.32 USD", }, }, { @@ -1483,14 +1469,14 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 0.00 USD", + string: "$ 0.00 USD", }, }, ], total: { unit: "USD", value: "5892", - string: " 118.73 USD", + string: "$ 118.73 USD", }, }, downloadFiles: [ @@ -1507,13 +1493,7 @@ describe("Orders", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = {}; const rawResponseBody = { @@ -1528,9 +1508,9 @@ describe("Orders", () => { disputedOn: "2024-03-29T21:29:21Z", disputeUpdatedOn: "2024-03-29T21:29:21Z", disputeLastStatus: "charge_refunded", - customerPaid: { unit: "USD", value: "5892", string: " 118.73 USD" }, - netAmount: { unit: "USD", value: "5892", string: " 112.62 USD" }, - applicationFee: { unit: "USD", value: "5892", string: " 2.37 USD" }, + customerPaid: { unit: "USD", value: "5892", string: "$ 118.73 USD" }, + netAmount: { unit: "USD", value: "5892", string: "$ 112.62 USD" }, + applicationFee: { unit: "USD", value: "5892", string: "$ 2.37 USD" }, allAddresses: [ { type: "billing", @@ -1584,7 +1564,7 @@ describe("Orders", () => { purchasedItems: [ { count: 1, - rowTotal: { unit: "USD", value: "5892", string: " 55.61 USD" }, + rowTotal: { unit: "USD", value: "5892", string: "$ 55.61 USD" }, productId: "66072fb61b89448912e26791", productName: "Luxurious Fresh Ball", productSlug: "luxurious-fresh-ball", @@ -1595,7 +1575,7 @@ describe("Orders", () => { variantImage: { url: "https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg", }, - variantPrice: { unit: "USD", value: "5892", string: " 55.61 USD" }, + variantPrice: { unit: "USD", value: "5892", string: "$ 55.61 USD" }, weight: 11, width: 82, height: 70, @@ -1603,7 +1583,7 @@ describe("Orders", () => { }, { count: 1, - rowTotal: { unit: "USD", value: "5892", string: " 53.44 USD" }, + rowTotal: { unit: "USD", value: "5892", string: "$ 53.44 USD" }, productId: "66072fb61b89448912e26799", productName: "Recycled Steel Gloves", productSlug: "recycled-steel-gloves", @@ -1614,7 +1594,7 @@ describe("Orders", () => { variantImage: { url: "https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2671e_image2.jpeg", }, - variantPrice: { unit: "USD", value: "5892", string: " 53.44 USD" }, + variantPrice: { unit: "USD", value: "5892", string: "$ 53.44 USD" }, weight: 38, width: 76, height: 85, @@ -1638,28 +1618,28 @@ describe("Orders", () => { hasDownloads: false, paymentProcessor: "stripe", totals: { - subtotal: { unit: "USD", value: "5892", string: " 109.05 USD" }, + subtotal: { unit: "USD", value: "5892", string: "$ 109.05 USD" }, extras: [ { type: "tax", name: "State Taxes", description: "NY Taxes (4.00%)", - price: { unit: "USD", value: "5892", string: " 4.36 USD" }, + price: { unit: "USD", value: "5892", string: "$ 4.36 USD" }, }, { type: "tax", name: "City Taxes", description: "NEW YORK Taxes (4.88%)", - price: { unit: "USD", value: "5892", string: " 5.32 USD" }, + price: { unit: "USD", value: "5892", string: "$ 5.32 USD" }, }, { type: "shipping", name: "Flat", description: "", - price: { unit: "USD", value: "5892", string: " 0.00 USD" }, + price: { unit: "USD", value: "5892", string: "$ 0.00 USD" }, }, ], - total: { unit: "USD", value: "5892", string: " 118.73 USD" }, + total: { unit: "USD", value: "5892", string: "$ 118.73 USD" }, }, downloadFiles: [ { @@ -1694,17 +1674,17 @@ describe("Orders", () => { customerPaid: { unit: "USD", value: "5892", - string: " 118.73 USD", + string: "$ 118.73 USD", }, netAmount: { unit: "USD", value: "5892", - string: " 112.62 USD", + string: "$ 112.62 USD", }, applicationFee: { unit: "USD", value: "5892", - string: " 2.37 USD", + string: "$ 2.37 USD", }, allAddresses: [ { @@ -1765,7 +1745,7 @@ describe("Orders", () => { rowTotal: { unit: "USD", value: "5892", - string: " 55.61 USD", + string: "$ 55.61 USD", }, productId: "66072fb61b89448912e26791", productName: "Luxurious Fresh Ball", @@ -1780,7 +1760,7 @@ describe("Orders", () => { variantPrice: { unit: "USD", value: "5892", - string: " 55.61 USD", + string: "$ 55.61 USD", }, weight: 11, width: 82, @@ -1792,7 +1772,7 @@ describe("Orders", () => { rowTotal: { unit: "USD", value: "5892", - string: " 53.44 USD", + string: "$ 53.44 USD", }, productId: "66072fb61b89448912e26799", productName: "Recycled Steel Gloves", @@ -1807,7 +1787,7 @@ describe("Orders", () => { variantPrice: { unit: "USD", value: "5892", - string: " 53.44 USD", + string: "$ 53.44 USD", }, weight: 38, width: 76, @@ -1849,7 +1829,7 @@ describe("Orders", () => { subtotal: { unit: "USD", value: "5892", - string: " 109.05 USD", + string: "$ 109.05 USD", }, extras: [ { @@ -1859,7 +1839,7 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 4.36 USD", + string: "$ 4.36 USD", }, }, { @@ -1869,7 +1849,7 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 5.32 USD", + string: "$ 5.32 USD", }, }, { @@ -1879,14 +1859,14 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 0.00 USD", + string: "$ 0.00 USD", }, }, ], total: { unit: "USD", value: "5892", - string: " 118.73 USD", + string: "$ 118.73 USD", }, }, downloadFiles: [ @@ -1903,13 +1883,7 @@ describe("Orders", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -1924,9 +1898,9 @@ describe("Orders", () => { disputedOn: "2024-03-29T21:29:21Z", disputeUpdatedOn: "2024-03-29T21:29:21Z", disputeLastStatus: "charge_refunded", - customerPaid: { unit: "USD", value: "5892", string: " 118.73 USD" }, - netAmount: { unit: "USD", value: "5892", string: " 112.62 USD" }, - applicationFee: { unit: "USD", value: "5892", string: " 2.37 USD" }, + customerPaid: { unit: "USD", value: "5892", string: "$ 118.73 USD" }, + netAmount: { unit: "USD", value: "5892", string: "$ 112.62 USD" }, + applicationFee: { unit: "USD", value: "5892", string: "$ 2.37 USD" }, allAddresses: [ { type: "billing", @@ -1980,7 +1954,7 @@ describe("Orders", () => { purchasedItems: [ { count: 1, - rowTotal: { unit: "USD", value: "5892", string: " 55.61 USD" }, + rowTotal: { unit: "USD", value: "5892", string: "$ 55.61 USD" }, productId: "66072fb61b89448912e26791", productName: "Luxurious Fresh Ball", productSlug: "luxurious-fresh-ball", @@ -1991,7 +1965,7 @@ describe("Orders", () => { variantImage: { url: "https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg", }, - variantPrice: { unit: "USD", value: "5892", string: " 55.61 USD" }, + variantPrice: { unit: "USD", value: "5892", string: "$ 55.61 USD" }, weight: 11, width: 82, height: 70, @@ -1999,7 +1973,7 @@ describe("Orders", () => { }, { count: 1, - rowTotal: { unit: "USD", value: "5892", string: " 53.44 USD" }, + rowTotal: { unit: "USD", value: "5892", string: "$ 53.44 USD" }, productId: "66072fb61b89448912e26799", productName: "Recycled Steel Gloves", productSlug: "recycled-steel-gloves", @@ -2010,7 +1984,7 @@ describe("Orders", () => { variantImage: { url: "https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2671e_image2.jpeg", }, - variantPrice: { unit: "USD", value: "5892", string: " 53.44 USD" }, + variantPrice: { unit: "USD", value: "5892", string: "$ 53.44 USD" }, weight: 38, width: 76, height: 85, @@ -2034,28 +2008,28 @@ describe("Orders", () => { hasDownloads: false, paymentProcessor: "stripe", totals: { - subtotal: { unit: "USD", value: "5892", string: " 109.05 USD" }, + subtotal: { unit: "USD", value: "5892", string: "$ 109.05 USD" }, extras: [ { type: "tax", name: "State Taxes", description: "NY Taxes (4.00%)", - price: { unit: "USD", value: "5892", string: " 4.36 USD" }, + price: { unit: "USD", value: "5892", string: "$ 4.36 USD" }, }, { type: "tax", name: "City Taxes", description: "NEW YORK Taxes (4.88%)", - price: { unit: "USD", value: "5892", string: " 5.32 USD" }, + price: { unit: "USD", value: "5892", string: "$ 5.32 USD" }, }, { type: "shipping", name: "Flat", description: "", - price: { unit: "USD", value: "5892", string: " 0.00 USD" }, + price: { unit: "USD", value: "5892", string: "$ 0.00 USD" }, }, ], - total: { unit: "USD", value: "5892", string: " 118.73 USD" }, + total: { unit: "USD", value: "5892", string: "$ 118.73 USD" }, }, downloadFiles: [ { @@ -2089,17 +2063,17 @@ describe("Orders", () => { customerPaid: { unit: "USD", value: "5892", - string: " 118.73 USD", + string: "$ 118.73 USD", }, netAmount: { unit: "USD", value: "5892", - string: " 112.62 USD", + string: "$ 112.62 USD", }, applicationFee: { unit: "USD", value: "5892", - string: " 2.37 USD", + string: "$ 2.37 USD", }, allAddresses: [ { @@ -2160,7 +2134,7 @@ describe("Orders", () => { rowTotal: { unit: "USD", value: "5892", - string: " 55.61 USD", + string: "$ 55.61 USD", }, productId: "66072fb61b89448912e26791", productName: "Luxurious Fresh Ball", @@ -2175,7 +2149,7 @@ describe("Orders", () => { variantPrice: { unit: "USD", value: "5892", - string: " 55.61 USD", + string: "$ 55.61 USD", }, weight: 11, width: 82, @@ -2187,7 +2161,7 @@ describe("Orders", () => { rowTotal: { unit: "USD", value: "5892", - string: " 53.44 USD", + string: "$ 53.44 USD", }, productId: "66072fb61b89448912e26799", productName: "Recycled Steel Gloves", @@ -2202,7 +2176,7 @@ describe("Orders", () => { variantPrice: { unit: "USD", value: "5892", - string: " 53.44 USD", + string: "$ 53.44 USD", }, weight: 38, width: 76, @@ -2244,7 +2218,7 @@ describe("Orders", () => { subtotal: { unit: "USD", value: "5892", - string: " 109.05 USD", + string: "$ 109.05 USD", }, extras: [ { @@ -2254,7 +2228,7 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 4.36 USD", + string: "$ 4.36 USD", }, }, { @@ -2264,7 +2238,7 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 5.32 USD", + string: "$ 5.32 USD", }, }, { @@ -2274,14 +2248,14 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 0.00 USD", + string: "$ 0.00 USD", }, }, ], total: { unit: "USD", value: "5892", - string: " 118.73 USD", + string: "$ 118.73 USD", }, }, downloadFiles: [ @@ -2298,13 +2272,7 @@ describe("Orders", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = {}; const rawResponseBody = { @@ -2319,9 +2287,9 @@ describe("Orders", () => { disputedOn: "2024-03-29T21:29:21Z", disputeUpdatedOn: "2024-03-29T21:29:21Z", disputeLastStatus: "charge_refunded", - customerPaid: { unit: "USD", value: "5892", string: " 118.73 USD" }, - netAmount: { unit: "USD", value: "5892", string: " 112.62 USD" }, - applicationFee: { unit: "USD", value: "5892", string: " 2.37 USD" }, + customerPaid: { unit: "USD", value: "5892", string: "$ 118.73 USD" }, + netAmount: { unit: "USD", value: "5892", string: "$ 112.62 USD" }, + applicationFee: { unit: "USD", value: "5892", string: "$ 2.37 USD" }, allAddresses: [ { type: "billing", @@ -2375,7 +2343,7 @@ describe("Orders", () => { purchasedItems: [ { count: 1, - rowTotal: { unit: "USD", value: "5892", string: " 55.61 USD" }, + rowTotal: { unit: "USD", value: "5892", string: "$ 55.61 USD" }, productId: "66072fb61b89448912e26791", productName: "Luxurious Fresh Ball", productSlug: "luxurious-fresh-ball", @@ -2386,7 +2354,7 @@ describe("Orders", () => { variantImage: { url: "https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2672c_image14.jpeg", }, - variantPrice: { unit: "USD", value: "5892", string: " 55.61 USD" }, + variantPrice: { unit: "USD", value: "5892", string: "$ 55.61 USD" }, weight: 11, width: 82, height: 70, @@ -2394,7 +2362,7 @@ describe("Orders", () => { }, { count: 1, - rowTotal: { unit: "USD", value: "5892", string: " 53.44 USD" }, + rowTotal: { unit: "USD", value: "5892", string: "$ 53.44 USD" }, productId: "66072fb61b89448912e26799", productName: "Recycled Steel Gloves", productSlug: "recycled-steel-gloves", @@ -2405,7 +2373,7 @@ describe("Orders", () => { variantImage: { url: "https://dev-assets.website-files.com/66072f39417a2a35b2589cc7/66072fb51b89448912e2671e_image2.jpeg", }, - variantPrice: { unit: "USD", value: "5892", string: " 53.44 USD" }, + variantPrice: { unit: "USD", value: "5892", string: "$ 53.44 USD" }, weight: 38, width: 76, height: 85, @@ -2429,28 +2397,28 @@ describe("Orders", () => { hasDownloads: false, paymentProcessor: "stripe", totals: { - subtotal: { unit: "USD", value: "5892", string: " 109.05 USD" }, + subtotal: { unit: "USD", value: "5892", string: "$ 109.05 USD" }, extras: [ { type: "tax", name: "State Taxes", description: "NY Taxes (4.00%)", - price: { unit: "USD", value: "5892", string: " 4.36 USD" }, + price: { unit: "USD", value: "5892", string: "$ 4.36 USD" }, }, { type: "tax", name: "City Taxes", description: "NEW YORK Taxes (4.88%)", - price: { unit: "USD", value: "5892", string: " 5.32 USD" }, + price: { unit: "USD", value: "5892", string: "$ 5.32 USD" }, }, { type: "shipping", name: "Flat", description: "", - price: { unit: "USD", value: "5892", string: " 0.00 USD" }, + price: { unit: "USD", value: "5892", string: "$ 0.00 USD" }, }, ], - total: { unit: "USD", value: "5892", string: " 118.73 USD" }, + total: { unit: "USD", value: "5892", string: "$ 118.73 USD" }, }, downloadFiles: [ { @@ -2485,17 +2453,17 @@ describe("Orders", () => { customerPaid: { unit: "USD", value: "5892", - string: " 118.73 USD", + string: "$ 118.73 USD", }, netAmount: { unit: "USD", value: "5892", - string: " 112.62 USD", + string: "$ 112.62 USD", }, applicationFee: { unit: "USD", value: "5892", - string: " 2.37 USD", + string: "$ 2.37 USD", }, allAddresses: [ { @@ -2556,7 +2524,7 @@ describe("Orders", () => { rowTotal: { unit: "USD", value: "5892", - string: " 55.61 USD", + string: "$ 55.61 USD", }, productId: "66072fb61b89448912e26791", productName: "Luxurious Fresh Ball", @@ -2571,7 +2539,7 @@ describe("Orders", () => { variantPrice: { unit: "USD", value: "5892", - string: " 55.61 USD", + string: "$ 55.61 USD", }, weight: 11, width: 82, @@ -2583,7 +2551,7 @@ describe("Orders", () => { rowTotal: { unit: "USD", value: "5892", - string: " 53.44 USD", + string: "$ 53.44 USD", }, productId: "66072fb61b89448912e26799", productName: "Recycled Steel Gloves", @@ -2598,7 +2566,7 @@ describe("Orders", () => { variantPrice: { unit: "USD", value: "5892", - string: " 53.44 USD", + string: "$ 53.44 USD", }, weight: 38, width: 76, @@ -2640,7 +2608,7 @@ describe("Orders", () => { subtotal: { unit: "USD", value: "5892", - string: " 109.05 USD", + string: "$ 109.05 USD", }, extras: [ { @@ -2650,7 +2618,7 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 4.36 USD", + string: "$ 4.36 USD", }, }, { @@ -2660,7 +2628,7 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 5.32 USD", + string: "$ 5.32 USD", }, }, { @@ -2670,14 +2638,14 @@ describe("Orders", () => { price: { unit: "USD", value: "5892", - string: " 0.00 USD", + string: "$ 0.00 USD", }, }, ], total: { unit: "USD", value: "5892", - string: " 118.73 USD", + string: "$ 118.73 USD", }, }, downloadFiles: [ diff --git a/tests/wire/pages.test.ts b/tests/wire/pages.test.ts index 608a6bf2..738c298c 100644 --- a/tests/wire/pages.test.ts +++ b/tests/wire/pages.test.ts @@ -10,13 +10,7 @@ describe("Pages", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -87,6 +81,8 @@ describe("Pages", () => { const response = await client.pages.list("580e63e98c9a982ac9b8b741", { localeId: "65427cf400e02b306eaa04a0", + limit: 1.1, + offset: 1.1, }); expect(response).toEqual({ pages: [ @@ -156,13 +152,7 @@ describe("Pages", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -234,13 +224,7 @@ describe("Pages", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { title: "Guide to the Galaxy", @@ -340,13 +324,7 @@ describe("Pages", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -379,6 +357,8 @@ describe("Pages", () => { const response = await client.pages.getContent("63c720f9347c2139b248e552", { localeId: "65427cf400e02b306eaa04a0", + limit: 1.1, + offset: 1.1, }); expect(response).toEqual({ pageId: "658205daa3e8206a523b5ad4", @@ -461,13 +441,7 @@ describe("Pages", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { nodes: [ diff --git a/tests/wire/pages/scripts.test.ts b/tests/wire/pages/scripts.test.ts index 0a01749a..0ec29068 100644 --- a/tests/wire/pages/scripts.test.ts +++ b/tests/wire/pages/scripts.test.ts @@ -10,13 +10,7 @@ describe("Scripts", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -53,13 +47,7 @@ describe("Scripts", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { scripts: [ @@ -139,13 +127,7 @@ describe("Scripts", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); server diff --git a/tests/wire/products.test.ts b/tests/wire/products.test.ts index c7446010..a2296531 100644 --- a/tests/wire/products.test.ts +++ b/tests/wire/products.test.ts @@ -10,13 +10,7 @@ describe("Products", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -80,7 +74,10 @@ describe("Products", () => { .jsonBody(rawResponseBody) .build(); - const response = await client.products.list("580e63e98c9a982ac9b8b741"); + const response = await client.products.list("580e63e98c9a982ac9b8b741", { + offset: 1.1, + limit: 1.1, + }); expect(response).toEqual({ items: [ { @@ -163,13 +160,7 @@ describe("Products", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { publishStatus: "staging", @@ -415,13 +406,7 @@ describe("Products", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -562,13 +547,7 @@ describe("Products", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = {}; const rawResponseBody = { @@ -645,13 +624,7 @@ describe("Products", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { skus: [ @@ -769,13 +742,7 @@ describe("Products", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { sku: { diff --git a/tests/wire/scripts.test.ts b/tests/wire/scripts.test.ts index 77ce1d7d..fc13f7c0 100644 --- a/tests/wire/scripts.test.ts +++ b/tests/wire/scripts.test.ts @@ -10,13 +10,7 @@ describe("Scripts", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -104,13 +98,7 @@ describe("Scripts", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { hostedLocation: "hostedLocation", @@ -159,13 +147,7 @@ describe("Scripts", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { sourceCode: "alert('hello world');", version: "0.0.1", displayName: "Alert" }; const rawResponseBody = { diff --git a/tests/wire/sites.test.ts b/tests/wire/sites.test.ts index 3b95a5d8..77cf6956 100644 --- a/tests/wire/sites.test.ts +++ b/tests/wire/sites.test.ts @@ -10,13 +10,7 @@ describe("Sites", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { name: "The Hitchhiker's Guide to the Galaxy" }; const rawResponseBody = { @@ -69,13 +63,7 @@ describe("Sites", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -363,13 +351,7 @@ describe("Sites", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -483,13 +465,7 @@ describe("Sites", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); server.mockEndpoint().delete("/sites/580e63e98c9a982ac9b8b741").respondWith().statusCode(200).build(); @@ -502,13 +478,7 @@ describe("Sites", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = {}; const rawResponseBody = { @@ -623,13 +593,7 @@ describe("Sites", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -671,13 +635,7 @@ describe("Sites", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { customDomains: ["660c6449dd97ebc7346ac629", "660c6449dd97ebc7346ac62f"], diff --git a/tests/wire/sites/activityLogs.test.ts b/tests/wire/sites/activityLogs.test.ts index 6d29ec00..ac7ef3cf 100644 --- a/tests/wire/sites/activityLogs.test.ts +++ b/tests/wire/sites/activityLogs.test.ts @@ -10,13 +10,7 @@ describe("ActivityLogs", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -42,7 +36,10 @@ describe("ActivityLogs", () => { .jsonBody(rawResponseBody) .build(); - const response = await client.sites.activityLogs.list("580e63e98c9a982ac9b8b741"); + const response = await client.sites.activityLogs.list("580e63e98c9a982ac9b8b741", { + limit: 1.1, + offset: 1.1, + }); expect(response).toEqual({ items: [ { diff --git a/tests/wire/sites/comments.test.ts b/tests/wire/sites/comments.test.ts index 611b819d..dc8f3bdb 100644 --- a/tests/wire/sites/comments.test.ts +++ b/tests/wire/sites/comments.test.ts @@ -10,13 +10,7 @@ describe("Comments", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -82,6 +76,10 @@ describe("Comments", () => { const response = await client.sites.comments.listCommentThreads("580e63e98c9a982ac9b8b741", { localeId: "65427cf400e02b306eaa04a0", + offset: 1.1, + limit: 1.1, + sortBy: "createdOn", + sortOrder: "asc", }); expect(response).toEqual({ comments: [ @@ -146,13 +144,7 @@ describe("Comments", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -185,6 +177,10 @@ describe("Comments", () => { "580e63e98c9a982ac9b8b741", { localeId: "65427cf400e02b306eaa04a0", + offset: 1.1, + limit: 1.1, + sortBy: "createdOn", + sortOrder: "asc", }, ); expect(response).toEqual({ @@ -218,13 +214,7 @@ describe("Comments", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -259,6 +249,10 @@ describe("Comments", () => { "580e63e98c9a982ac9b8b741", { localeId: "65427cf400e02b306eaa04a0", + offset: 1.1, + limit: 1.1, + sortBy: "createdOn", + sortOrder: "asc", }, ); expect(response).toEqual({ diff --git a/tests/wire/sites/plans.test.ts b/tests/wire/sites/plans.test.ts index 67dbeb44..79b1be3a 100644 --- a/tests/wire/sites/plans.test.ts +++ b/tests/wire/sites/plans.test.ts @@ -10,13 +10,7 @@ describe("Plans", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { diff --git a/tests/wire/sites/redirects.test.ts b/tests/wire/sites/redirects.test.ts index 44ebfc2b..c4e19916 100644 --- a/tests/wire/sites/redirects.test.ts +++ b/tests/wire/sites/redirects.test.ts @@ -10,13 +10,7 @@ describe("Redirects", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -60,13 +54,7 @@ describe("Redirects", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { id: "42e1a2b7aa1a13f768a0042a", fromUrl: "/mostly-harmless", toUrl: "/earth" }; const rawResponseBody = { id: "42e1a2b7aa1a13f768a0042a", fromUrl: "/mostly-harmless", toUrl: "/earth" }; @@ -95,13 +83,7 @@ describe("Redirects", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -145,13 +127,7 @@ describe("Redirects", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { id: "42e1a2b7aa1a13f768a0042a", fromUrl: "/mostly-harmless", toUrl: "/earth" }; const rawResponseBody = { id: "42e1a2b7aa1a13f768a0042a", fromUrl: "/mostly-harmless", toUrl: "/earth" }; diff --git a/tests/wire/sites/robotsTxt.test.ts b/tests/wire/sites/robotsTxt.test.ts index 63a68f3e..2ad09ab6 100644 --- a/tests/wire/sites/robotsTxt.test.ts +++ b/tests/wire/sites/robotsTxt.test.ts @@ -10,13 +10,7 @@ describe("RobotsTxt", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -54,13 +48,7 @@ describe("RobotsTxt", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { rules: [ @@ -117,13 +105,7 @@ describe("RobotsTxt", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { rules: [{ userAgent: "*", allows: ["/public"], disallows: ["/bubbles"] }] }; const rawResponseBody = { @@ -170,13 +152,7 @@ describe("RobotsTxt", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { rules: [ diff --git a/tests/wire/sites/scripts.test.ts b/tests/wire/sites/scripts.test.ts index 7acd2ec8..9abcff7e 100644 --- a/tests/wire/sites/scripts.test.ts +++ b/tests/wire/sites/scripts.test.ts @@ -10,13 +10,7 @@ describe("Scripts", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -69,13 +63,7 @@ describe("Scripts", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { scripts: [ @@ -155,13 +143,7 @@ describe("Scripts", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); server @@ -179,13 +161,7 @@ describe("Scripts", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -216,7 +192,10 @@ describe("Scripts", () => { .jsonBody(rawResponseBody) .build(); - const response = await client.sites.scripts.listCustomCodeBlocks("580e63e98c9a982ac9b8b741"); + const response = await client.sites.scripts.listCustomCodeBlocks("580e63e98c9a982ac9b8b741", { + offset: 1.1, + limit: 1.1, + }); expect(response).toEqual({ blocks: [ { diff --git a/tests/wire/sites/wellKnown.test.ts b/tests/wire/sites/wellKnown.test.ts index a98e6fc5..2693fdb1 100644 --- a/tests/wire/sites/wellKnown.test.ts +++ b/tests/wire/sites/wellKnown.test.ts @@ -10,15 +10,14 @@ describe("WellKnown", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); - const rawRequestBody = { fileName: "fileName", fileData: "fileData" }; + const rawRequestBody = { + fileName: "apple-app-site-association.txt", + fileData: + '{\n "applinks": {\n "apps": [],\n "details": [\n {\n "appID": "ABCDE12345.com.example.app",\n "paths": [ "/*", "/some/path/*" ]\n }\n ]\n }\n}\n', + contentType: "application/json", + }; server .mockEndpoint() @@ -29,8 +28,10 @@ describe("WellKnown", () => { .build(); const response = await client.sites.wellKnown.put("580e63e98c9a982ac9b8b741", { - fileName: "fileName", - fileData: "fileData", + fileName: "apple-app-site-association.txt", + fileData: + '{\n "applinks": {\n "apps": [],\n "details": [\n {\n "appID": "ABCDE12345.com.example.app",\n "paths": [ "/*", "/some/path/*" ]\n }\n ]\n }\n}\n', + contentType: "application/json", }); expect(response).toEqual(undefined); }); @@ -39,13 +40,7 @@ describe("WellKnown", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = {}; diff --git a/tests/wire/token.test.ts b/tests/wire/token.test.ts index 9ffc3da7..6b339053 100644 --- a/tests/wire/token.test.ts +++ b/tests/wire/token.test.ts @@ -10,13 +10,7 @@ describe("Token", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -46,13 +40,7 @@ describe("Token", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { diff --git a/tests/wire/users.test.ts b/tests/wire/users.test.ts index 9f430ce7..935240c5 100644 --- a/tests/wire/users.test.ts +++ b/tests/wire/users.test.ts @@ -10,13 +10,7 @@ describe("Users", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -85,7 +79,11 @@ describe("Users", () => { .jsonBody(rawResponseBody) .build(); - const response = await client.users.list("580e63e98c9a982ac9b8b741"); + const response = await client.users.list("580e63e98c9a982ac9b8b741", { + offset: 1.1, + limit: 1.1, + sort: "CreatedOn", + }); expect(response).toEqual({ count: 5, limit: 5, @@ -175,13 +173,7 @@ describe("Users", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -242,13 +234,7 @@ describe("Users", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); server @@ -266,13 +252,7 @@ describe("Users", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { id: "6287ec36a841b25637c663df", @@ -357,13 +337,7 @@ describe("Users", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { email: "some.one@home.com", accessGroups: ["accessGroups"] }; const rawResponseBody = { diff --git a/tests/wire/webhooks.test.ts b/tests/wire/webhooks.test.ts index ddc6fb53..4f8066df 100644 --- a/tests/wire/webhooks.test.ts +++ b/tests/wire/webhooks.test.ts @@ -10,13 +10,7 @@ describe("Webhooks", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -114,13 +108,7 @@ describe("Webhooks", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawRequestBody = { id: "582266e0cd48de0f0e3c6d8b", @@ -173,13 +161,7 @@ describe("Webhooks", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -215,13 +197,7 @@ describe("Webhooks", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); server.mockEndpoint().delete("/webhooks/580e64008c9a982ac9b8b754").respondWith().statusCode(200).build(); diff --git a/tests/wire/workspaces/auditLogs.test.ts b/tests/wire/workspaces/auditLogs.test.ts index d1b554a1..92b24417 100644 --- a/tests/wire/workspaces/auditLogs.test.ts +++ b/tests/wire/workspaces/auditLogs.test.ts @@ -10,13 +10,7 @@ describe("AuditLogs", () => { const server = mockServerPool.createServer(); const client = new WebflowClient({ accessToken: "test", - environment: { - base: server.baseUrl, - dataApi: server.baseUrl, - contentDeliveryApi: server.baseUrl, - production: server.baseUrl, - cdn: server.baseUrl, - }, + environment: { base: server.baseUrl, dataApi: server.baseUrl, contentDeliveryApi: server.baseUrl }, }); const rawResponseBody = { @@ -54,8 +48,12 @@ describe("AuditLogs", () => { .build(); const response = await client.workspaces.auditLogs.getWorkspaceAuditLogs("hitchhikers-workspace", { - from: new Date("2024-04-22T16:00:31.000Z"), - to: new Date("2024-04-22T16:00:31.000Z"), + limit: 1.1, + offset: 1.1, + sortOrder: "asc", + eventType: "user_access", + from: new Date("2025-06-22T16:00:31.000Z"), + to: new Date("2025-07-22T16:00:31.000Z"), }); expect(response).toEqual({ items: [ diff --git a/yarn.lock b/yarn.lock index 5c225517..1daf33ad 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,14 +2,6 @@ # yarn lockfile v1 -"@ampproject/remapping@^2.2.0": - version "2.3.0" - resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4" - integrity sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw== - dependencies: - "@jridgewell/gen-mapping" "^0.3.5" - "@jridgewell/trace-mapping" "^0.3.24" - "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.27.1": version "7.27.1" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.27.1.tgz#200f715e66d52a23b221a9435534a91cc13ad5be" @@ -20,38 +12,38 @@ picocolors "^1.1.1" "@babel/compat-data@^7.27.2": - version "7.28.0" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.28.0.tgz#9fc6fd58c2a6a15243cd13983224968392070790" - integrity sha512-60X7qkglvrap8mn1lh2ebxXdZYtUcpd7gsmy9kLaBJ4i/WdY8PqTSdxyA8qraikqKQK5C1KRBKXqznrVapyNaw== + version "7.28.5" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.28.5.tgz#a8a4962e1567121ac0b3b487f52107443b455c7f" + integrity sha512-6uFXyCayocRbqhZOB+6XcuZbkMNimwfVGFji8CTZnCzOHVGvDqzvitu1re2AU5LROliz7eQPhB8CpAMvnx9EjA== "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.23.9": - version "7.28.3" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.28.3.tgz#aceddde69c5d1def69b839d09efa3e3ff59c97cb" - integrity sha512-yDBHV9kQNcr2/sUr9jghVyz9C3Y5G2zUM2H2lo+9mKv4sFgbA8s8Z9t8D1jiTkGoO/NoIfKMyKWr4s6CN23ZwQ== + version "7.28.5" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.28.5.tgz#4c81b35e51e1b734f510c99b07dfbc7bbbb48f7e" + integrity sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw== dependencies: - "@ampproject/remapping" "^2.2.0" "@babel/code-frame" "^7.27.1" - "@babel/generator" "^7.28.3" + "@babel/generator" "^7.28.5" "@babel/helper-compilation-targets" "^7.27.2" "@babel/helper-module-transforms" "^7.28.3" - "@babel/helpers" "^7.28.3" - "@babel/parser" "^7.28.3" + "@babel/helpers" "^7.28.4" + "@babel/parser" "^7.28.5" "@babel/template" "^7.27.2" - "@babel/traverse" "^7.28.3" - "@babel/types" "^7.28.2" + "@babel/traverse" "^7.28.5" + "@babel/types" "^7.28.5" + "@jridgewell/remapping" "^2.3.5" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" json5 "^2.2.3" semver "^6.3.1" -"@babel/generator@^7.28.3", "@babel/generator@^7.7.2": - version "7.28.3" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.28.3.tgz#9626c1741c650cbac39121694a0f2d7451b8ef3e" - integrity sha512-3lSpxGgvnmZznmBkCRnVREPUFJv2wrv9iAoFDvADJc0ypmdOxdUtcLeBgBJ6zE0PMeTKnxeQzyk0xTBq4Ep7zw== +"@babel/generator@^7.28.5", "@babel/generator@^7.7.2": + version "7.28.5" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.28.5.tgz#712722d5e50f44d07bc7ac9fe84438742dd61298" + integrity sha512-3EwLFhZ38J4VyIP6WNtt2kUdW9dokXA9Cr4IVIFHuCpZ3H8/YFOl5JjZHisrn1fATPBmKKqXzDFvh9fUwHz6CQ== dependencies: - "@babel/parser" "^7.28.3" - "@babel/types" "^7.28.2" + "@babel/parser" "^7.28.5" + "@babel/types" "^7.28.5" "@jridgewell/gen-mapping" "^0.3.12" "@jridgewell/trace-mapping" "^0.3.28" jsesc "^3.0.2" @@ -99,30 +91,30 @@ resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz#54da796097ab19ce67ed9f88b47bb2ec49367687" integrity sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA== -"@babel/helper-validator-identifier@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz#a7054dcc145a967dd4dc8fee845a57c1316c9df8" - integrity sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow== +"@babel/helper-validator-identifier@^7.27.1", "@babel/helper-validator-identifier@^7.28.5": + version "7.28.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz#010b6938fab7cb7df74aa2bbc06aa503b8fe5fb4" + integrity sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q== "@babel/helper-validator-option@^7.27.1": version "7.27.1" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz#fa52f5b1e7db1ab049445b421c4471303897702f" integrity sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg== -"@babel/helpers@^7.28.3": - version "7.28.3" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.28.3.tgz#b83156c0a2232c133d1b535dd5d3452119c7e441" - integrity sha512-PTNtvUQihsAsDHMOP5pfobP8C6CM4JWXmP8DrEIt46c3r2bf87Ua1zoqevsMo9g+tWDwgWrFP5EIxuBx5RudAw== +"@babel/helpers@^7.28.4": + version "7.28.4" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.28.4.tgz#fe07274742e95bdf7cf1443593eeb8926ab63827" + integrity sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w== dependencies: "@babel/template" "^7.27.2" - "@babel/types" "^7.28.2" + "@babel/types" "^7.28.4" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.27.2", "@babel/parser@^7.28.3": - version "7.28.3" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.28.3.tgz#d2d25b814621bca5fe9d172bc93792547e7a2a71" - integrity sha512-7+Ey1mAgYqFAx2h0RuoxcQT5+MlG3GTV0TQrgr7/ZliKsm/MNDxVVutlWaziMq7wJNAz8MTqz55XLpWvva6StA== +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.27.2", "@babel/parser@^7.28.5": + version "7.28.5" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.28.5.tgz#0b0225ee90362f030efd644e8034c99468893b08" + integrity sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ== dependencies: - "@babel/types" "^7.28.2" + "@babel/types" "^7.28.5" "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" @@ -252,85 +244,68 @@ "@babel/parser" "^7.27.2" "@babel/types" "^7.27.1" -"@babel/traverse@^7.27.1", "@babel/traverse@^7.28.3": - version "7.28.3" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.28.3.tgz#6911a10795d2cce43ec6a28cffc440cca2593434" - integrity sha512-7w4kZYHneL3A6NP2nxzHvT3HCZ7puDZZjFMqDpBPECub79sTtSO5CGXDkKrTQq8ksAwfD/XI2MRFX23njdDaIQ== +"@babel/traverse@^7.27.1", "@babel/traverse@^7.28.3", "@babel/traverse@^7.28.5": + version "7.28.5" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.28.5.tgz#450cab9135d21a7a2ca9d2d35aa05c20e68c360b" + integrity sha512-TCCj4t55U90khlYkVV/0TfkJkAkUg3jZFA3Neb7unZT8CPok7iiRfaX0F+WnqWqt7OxhOn0uBKXCw4lbL8W0aQ== dependencies: "@babel/code-frame" "^7.27.1" - "@babel/generator" "^7.28.3" + "@babel/generator" "^7.28.5" "@babel/helper-globals" "^7.28.0" - "@babel/parser" "^7.28.3" + "@babel/parser" "^7.28.5" "@babel/template" "^7.27.2" - "@babel/types" "^7.28.2" + "@babel/types" "^7.28.5" debug "^4.3.1" -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.27.1", "@babel/types@^7.28.2", "@babel/types@^7.3.3": - version "7.28.2" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.28.2.tgz#da9db0856a9a88e0a13b019881d7513588cf712b" - integrity sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ== +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.27.1", "@babel/types@^7.28.4", "@babel/types@^7.28.5", "@babel/types@^7.3.3": + version "7.28.5" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.28.5.tgz#10fc405f60897c35f07e85493c932c7b5ca0592b" + integrity sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA== dependencies: "@babel/helper-string-parser" "^7.27.1" - "@babel/helper-validator-identifier" "^7.27.1" + "@babel/helper-validator-identifier" "^7.28.5" "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@bundled-es-modules/cookie@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@bundled-es-modules/cookie/-/cookie-2.0.1.tgz#b41376af6a06b3e32a15241d927b840a9b4de507" - integrity sha512-8o+5fRPLNbjbdGRRmJj3h6Hh1AQJf2dk3qQ/5ZFb+PXkRNiSoMGGUKlsgLfrxneb72axVJyIYji64E2+nNfYyw== - dependencies: - cookie "^0.7.2" - -"@bundled-es-modules/statuses@^1.0.1": +"@inquirer/ansi@^1.0.1": version "1.0.1" - resolved "https://registry.yarnpkg.com/@bundled-es-modules/statuses/-/statuses-1.0.1.tgz#761d10f44e51a94902c4da48675b71a76cc98872" - integrity sha512-yn7BklA5acgcBr+7w064fGV+SGIFySjCKpqjcWgBAIfrAkY+4GQTJJHQMeT3V/sgz23VTEVV8TtOmkvJAhFVfg== - dependencies: - statuses "^2.0.1" - -"@bundled-es-modules/tough-cookie@^0.1.6": - version "0.1.6" - resolved "https://registry.yarnpkg.com/@bundled-es-modules/tough-cookie/-/tough-cookie-0.1.6.tgz#fa9cd3cedfeecd6783e8b0d378b4a99e52bde5d3" - integrity sha512-dvMHbL464C0zI+Yqxbz6kZ5TOEp7GLW+pry/RWndAR8MJQAXZ2rPmIs8tziTZjeIyhSNZgZbCePtfSbdWqStJw== - dependencies: - "@types/tough-cookie" "^4.0.5" - tough-cookie "^4.1.4" + resolved "https://registry.yarnpkg.com/@inquirer/ansi/-/ansi-1.0.1.tgz#994f7dd16a00c547a7b110e04bf4f4eca1857929" + integrity sha512-yqq0aJW/5XPhi5xOAL1xRCpe1eh8UFVgYFpFsjEqmIR8rKLyP+HINvFXwUaxYICflJrVlxnp7lLN6As735kVpw== "@inquirer/confirm@^5.0.0": - version "5.1.14" - resolved "https://registry.yarnpkg.com/@inquirer/confirm/-/confirm-5.1.14.tgz#e6321edf51a3a5f54dc548b80ef6ba89891351ad" - integrity sha512-5yR4IBfe0kXe59r1YCTG8WXkUbl7Z35HK87Sw+WUyGD8wNUx7JvY7laahzeytyE1oLn74bQnL7hstctQxisQ8Q== + version "5.1.19" + resolved "https://registry.yarnpkg.com/@inquirer/confirm/-/confirm-5.1.19.tgz#bf28b420898999eb7479ab55623a3fbaf1453ff4" + integrity sha512-wQNz9cfcxrtEnUyG5PndC8g3gZ7lGDBzmWiXZkX8ot3vfZ+/BLjR8EvyGX4YzQLeVqtAlY/YScZpW7CW8qMoDQ== dependencies: - "@inquirer/core" "^10.1.15" - "@inquirer/type" "^3.0.8" + "@inquirer/core" "^10.3.0" + "@inquirer/type" "^3.0.9" -"@inquirer/core@^10.1.15": - version "10.1.15" - resolved "https://registry.yarnpkg.com/@inquirer/core/-/core-10.1.15.tgz#8feb69fd536786181a2b6bfb84d8674faa9d2e59" - integrity sha512-8xrp836RZvKkpNbVvgWUlxjT4CraKk2q+I3Ksy+seI2zkcE+y6wNs1BVhgcv8VyImFecUhdQrYLdW32pAjwBdA== +"@inquirer/core@^10.3.0": + version "10.3.0" + resolved "https://registry.yarnpkg.com/@inquirer/core/-/core-10.3.0.tgz#342e4fd62cbd33ea62089364274995dbec1f2ffe" + integrity sha512-Uv2aPPPSK5jeCplQmQ9xadnFx2Zhj9b5Dj7bU6ZeCdDNNY11nhYy4btcSdtDguHqCT2h5oNeQTcUNSGGLA7NTA== dependencies: - "@inquirer/figures" "^1.0.13" - "@inquirer/type" "^3.0.8" - ansi-escapes "^4.3.2" + "@inquirer/ansi" "^1.0.1" + "@inquirer/figures" "^1.0.14" + "@inquirer/type" "^3.0.9" cli-width "^4.1.0" mute-stream "^2.0.0" signal-exit "^4.1.0" wrap-ansi "^6.2.0" yoctocolors-cjs "^2.1.2" -"@inquirer/figures@^1.0.13": - version "1.0.13" - resolved "https://registry.yarnpkg.com/@inquirer/figures/-/figures-1.0.13.tgz#ad0afd62baab1c23175115a9b62f511b6a751e45" - integrity sha512-lGPVU3yO9ZNqA7vTYz26jny41lE7yoQansmqdMLBEfqaGsmdg7V3W9mK9Pvb5IL4EVZ9GnSDGMO/cJXud5dMaw== +"@inquirer/figures@^1.0.14": + version "1.0.14" + resolved "https://registry.yarnpkg.com/@inquirer/figures/-/figures-1.0.14.tgz#12a7bfd344a83ae6cc5d6004b389ed11f6db6be4" + integrity sha512-DbFgdt+9/OZYFM+19dbpXOSeAstPy884FPy1KjDu4anWwymZeOYhMY1mdFri172htv6mvc/uvIAAi7b7tvjJBQ== -"@inquirer/type@^3.0.8": - version "3.0.8" - resolved "https://registry.yarnpkg.com/@inquirer/type/-/type-3.0.8.tgz#efc293ba0ed91e90e6267f1aacc1c70d20b8b4e8" - integrity sha512-lg9Whz8onIHRthWaN1Q9EGLa/0LFJjyM8mEUbL1eTi6yMGvBf8gvyDLtxSXztQsxMvhxxNpJYrwa1YHdq+w4Jw== +"@inquirer/type@^3.0.9": + version "3.0.9" + resolved "https://registry.yarnpkg.com/@inquirer/type/-/type-3.0.9.tgz#f7f9696e9276e4e1ae9332767afb9199992e31d9" + integrity sha512-QPaNt/nmE2bLGQa9b7wwyRJoLZ7pN6rcyXvzU0YCmivmJyq1BVo94G98tStRWkoD1RgDX5C+dPlhhHzNdu/W/w== "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" @@ -548,6 +523,14 @@ "@jridgewell/sourcemap-codec" "^1.5.0" "@jridgewell/trace-mapping" "^0.3.24" +"@jridgewell/remapping@^2.3.5": + version "2.3.5" + resolved "https://registry.yarnpkg.com/@jridgewell/remapping/-/remapping-2.3.5.tgz#375c476d1972947851ba1e15ae8f123047445aa1" + integrity sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ== + dependencies: + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.24" + "@jridgewell/resolve-uri@^3.1.0": version "3.1.2" resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" @@ -567,17 +550,17 @@ integrity sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og== "@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25", "@jridgewell/trace-mapping@^0.3.28": - version "0.3.30" - resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.30.tgz#4a76c4daeee5df09f5d3940e087442fb36ce2b99" - integrity sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q== + version "0.3.31" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz#db15d6781c931f3a251a3dac39501c98a6082fd0" + integrity sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw== dependencies: "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" -"@mswjs/interceptors@^0.39.1": - version "0.39.6" - resolved "https://registry.yarnpkg.com/@mswjs/interceptors/-/interceptors-0.39.6.tgz#44094a578f20da4749d1a0eaf3cdb7973604004b" - integrity sha512-bndDP83naYYkfayr/qhBHMhk0YGwS1iv6vaEGcr0SQbO0IZtbOPqjKjds/WcG+bJA+1T5vCx6kprKOzn5Bg+Vw== +"@mswjs/interceptors@^0.40.0": + version "0.40.0" + resolved "https://registry.yarnpkg.com/@mswjs/interceptors/-/interceptors-0.40.0.tgz#1b45f215ba8c2983ed133763ca03af92896083d6" + integrity sha512-EFd6cVbHsgLa6wa4RljGj6Wk75qoHxUSyc5asLyyPSyuhIcdS2Q3Phw6ImS1q+CkALthJRShiYfKANcQMuMqsQ== dependencies: "@open-draft/deferred-promise" "^2.2.0" "@open-draft/logger" "^0.3.0" @@ -599,7 +582,7 @@ is-node-process "^1.2.0" outvariant "^1.4.0" -"@open-draft/until@^2.0.0", "@open-draft/until@^2.1.0": +"@open-draft/until@^2.0.0": version "2.1.0" resolved "https://registry.yarnpkg.com/@open-draft/until/-/until-2.1.0.tgz#0acf32f470af2ceaf47f095cdecd40d68666efda" integrity sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg== @@ -661,11 +644,6 @@ dependencies: "@babel/types" "^7.20.7" -"@types/cookie@^0.6.0": - version "0.6.0" - resolved "https://registry.yarnpkg.com/@types/cookie/-/cookie-0.6.0.tgz#eac397f28bf1d6ae0ae081363eca2f425bedf0d5" - integrity sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA== - "@types/eslint-scope@^3.7.7": version "3.7.7" resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.7.tgz#3108bd5f18b0cdb277c867b3dd449c9ed7079ac5" @@ -744,16 +722,16 @@ form-data "^4.0.4" "@types/node@*": - version "24.2.1" - resolved "https://registry.yarnpkg.com/@types/node/-/node-24.2.1.tgz#83e41543f0a518e006594bb394e2cd961de56727" - integrity sha512-DRh5K+ka5eJic8CjH7td8QpYEV6Zo10gfRkjHCO3weqZHWDtAaSTFtl4+VMqOJ4N5jcuhZ9/l+yy8rVgw7BQeQ== + version "24.10.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-24.10.0.tgz#6b79086b0dfc54e775a34ba8114dcc4e0221f31f" + integrity sha512-qzQZRBqkFsYyaSWXuEHc2WR9c0a0CXwiE5FWUvn7ZM+vdy1uZLfCunD38UzhuB7YN/J11ndbDBcTmOdxJo9Q7A== dependencies: - undici-types "~7.10.0" + undici-types "~7.16.0" "@types/node@^18.19.70": - version "18.19.122" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.122.tgz#e7358f8df7cc3f14e860198e1ca4dc2ed9a7de06" - integrity sha512-yzegtT82dwTNEe/9y+CM8cgb42WrUfMMCg2QqSddzO1J6uPmBD7qKCZ7dOHZP2Yrpm/kb0eqdNMn2MUyEiqBmA== + version "18.19.130" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.130.tgz#da4c6324793a79defb7a62cba3947ec5add00d59" + integrity sha512-GRaXQx6jGfL8sKfaIDD6OupbIHBr9jv7Jnaml9tB7l4v068PAOXqfcujMMo5PhbIs6ggR1XODELqahT2R8v0fg== dependencies: undici-types "~5.26.4" @@ -763,9 +741,9 @@ integrity sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ== "@types/readable-stream@^4.0.18": - version "4.0.21" - resolved "https://registry.yarnpkg.com/@types/readable-stream/-/readable-stream-4.0.21.tgz#716558454a5e0c3c0651520f8154efc3288f59cb" - integrity sha512-19eKVv9tugr03IgfXlA9UVUVRbW6IuqRO5B92Dl4a6pT7K8uaGrNS0GkxiZD0BOk6PLuXl5FhWl//eX/pzYdTQ== + version "4.0.22" + resolved "https://registry.yarnpkg.com/@types/readable-stream/-/readable-stream-4.0.22.tgz#882fda4f17b6580acb257df3f22ca69c05470b29" + integrity sha512-/FFhJpfCLAPwAcN3mFycNUa77ddnr8jTgF5VmSNetaemWB2cIlfCA9t0YTM3JAT0wOcv8D4tjPo7pkDhK3EJIg== dependencies: "@types/node" "*" @@ -779,7 +757,7 @@ resolved "https://registry.yarnpkg.com/@types/statuses/-/statuses-2.0.6.tgz#66748315cc9a96d63403baa8671b2c124f8633aa" integrity sha512-xMAgYwceFhRA2zY+XbEA7mxYbA093wdiW8Vu6gZPGWy9cmOyU9XesH1tNcEWsKFd5Vzrqx5T3D38PWx1FIIXkA== -"@types/tough-cookie@*", "@types/tough-cookie@^4.0.5": +"@types/tough-cookie@*": version "4.0.5" resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.5.tgz#cb6e2a691b70cb177c6e3ae9c1d2e8b2ea8cd304" integrity sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA== @@ -795,9 +773,9 @@ integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ== "@types/yargs@^17.0.8": - version "17.0.33" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.33.tgz#8c32303da83eec050a84b3c7ae7b9f922d13e32d" - integrity sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA== + version "17.0.34" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.34.tgz#1c2f9635b71d5401827373a01ce2e8a7670ea839" + integrity sha512-KExbHVa92aJpw9WDQvzBaGVE2/Pz+pLZQloT2hjL8IqsZnV62rlPOYvNnLmf/L2dyllfVUOVBj64M0z/46eR2A== dependencies: "@types/yargs-parser" "*" @@ -964,7 +942,7 @@ acorn-walk@^8.0.2: dependencies: acorn "^8.11.0" -acorn@^8.1.0, acorn@^8.11.0, acorn@^8.14.0, acorn@^8.15.0, acorn@^8.8.1: +acorn@^8.1.0, acorn@^8.11.0, acorn@^8.15.0, acorn@^8.8.1: version "8.15.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.15.0.tgz#a360898bc415edaac46c8241f6383975b930b816" integrity sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg== @@ -1000,7 +978,7 @@ ajv@^8.0.0, ajv@^8.9.0: json-schema-traverse "^1.0.0" require-from-string "^2.0.2" -ansi-escapes@^4.2.1, ansi-escapes@^4.3.2: +ansi-escapes@^4.2.1: version "4.3.2" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== @@ -1133,12 +1111,17 @@ base64-js@^1.3.1: resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== +baseline-browser-mapping@^2.8.19: + version "2.8.24" + resolved "https://registry.yarnpkg.com/baseline-browser-mapping/-/baseline-browser-mapping-2.8.24.tgz#f70388d8a136b701c819567f6798b797378be7b0" + integrity sha512-uUhTRDPXamakPyghwrUcjaGvvBqGrWvBHReoiULMIpOJVM9IYzQh83Xk2Onx5HlGI2o10NNCzcs9TG/S3TkwrQ== + bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9: version "4.12.2" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.2.tgz#3d8fed6796c24e177737f7cc5172ee04ef39ec99" integrity sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw== -bn.js@^5.2.1: +bn.js@^5.2.1, bn.js@^5.2.2: version "5.2.2" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.2.tgz#82c09f9ebbb17107cd72cb7fd39bd1f9d0aaa566" integrity sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw== @@ -1194,7 +1177,7 @@ browserify-des@^1.0.0: inherits "^2.0.1" safe-buffer "^5.1.2" -browserify-rsa@^4.0.0, browserify-rsa@^4.1.0: +browserify-rsa@^4.0.0, browserify-rsa@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.1.1.tgz#06e530907fe2949dc21fc3c2e2302e10b1437238" integrity sha512-YBjSAiTqM04ZVei6sXighu679a3SqWORA3qZTEqZImnlkDIFtKc6pNutpjyZ8RJTjQtuYfeetkxM11GwoYXMIQ== @@ -1204,30 +1187,30 @@ browserify-rsa@^4.0.0, browserify-rsa@^4.1.0: safe-buffer "^5.2.1" browserify-sign@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.3.tgz#7afe4c01ec7ee59a89a558a4b75bd85ae62d4208" - integrity sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw== + version "4.2.5" + resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.5.tgz#3979269fa8af55ba18aac35deef11b45515cd27d" + integrity sha512-C2AUdAJg6rlM2W5QMp2Q4KGQMVBwR1lIimTsUnutJ8bMpW5B52pGpR2gEnNBNwijumDo5FojQ0L9JrXA8m4YEw== dependencies: - bn.js "^5.2.1" - browserify-rsa "^4.1.0" + bn.js "^5.2.2" + browserify-rsa "^4.1.1" create-hash "^1.2.0" create-hmac "^1.1.7" - elliptic "^6.5.5" - hash-base "~3.0" + elliptic "^6.6.1" inherits "^2.0.4" - parse-asn1 "^5.1.7" + parse-asn1 "^5.1.9" readable-stream "^2.3.8" safe-buffer "^5.2.1" -browserslist@^4.24.0: - version "4.25.2" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.25.2.tgz#90c1507143742d743544ae6e92bca3348adff667" - integrity sha512-0si2SJK3ooGzIawRu61ZdPCO1IncZwS8IzuX73sPZsXW6EQ/w/DAfPyKI8l1ETTCr2MnvqWitmlCUxgdul45jA== +browserslist@^4.24.0, browserslist@^4.26.3: + version "4.27.0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.27.0.tgz#755654744feae978fbb123718b2f139bc0fa6697" + integrity sha512-AXVQwdhot1eqLihwasPElhX2tAZiBjWdJ9i/Zcj2S6QYIjkx62OKSfnobkriB81C3l4w0rVy3Nt4jaTBltYEpw== dependencies: - caniuse-lite "^1.0.30001733" - electron-to-chromium "^1.5.199" - node-releases "^2.0.19" - update-browserslist-db "^1.1.3" + baseline-browser-mapping "^2.8.19" + caniuse-lite "^1.0.30001751" + electron-to-chromium "^1.5.238" + node-releases "^2.0.26" + update-browserslist-db "^1.1.4" bs-logger@^0.2.6: version "0.2.6" @@ -1302,10 +1285,10 @@ camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== -caniuse-lite@^1.0.30001733: - version "1.0.30001735" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001735.tgz#ba658fd3fd24a4106fd68d5ce472a2c251494dbe" - integrity sha512-EV/laoX7Wq2J9TQlyIXRxTJqIw4sxfXS4OYgudGxBYRuTv0q7AM6yMEpU/Vo1I94thg9U6EZ2NfZx9GJq83u7w== +caniuse-lite@^1.0.30001751: + version "1.0.30001753" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001753.tgz#419f8fc9bab6f1a1d10d9574d0b3374f823c5b00" + integrity sha512-Bj5H35MD/ebaOV4iDLqPEtiliTN29qkGtEHCwawWn4cYm+bPJM2NsaP30vtZcnERClMzp52J4+aw2UNbK4o+zw== chalk@^4.0.0, chalk@^4.1.0: version "4.1.2" @@ -1331,12 +1314,13 @@ ci-info@^3.2.0: integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.6.tgz#8fe672437d01cd6c4561af5334e0cc50ff1955f7" - integrity sha512-3Ek9H3X6pj5TgenXYtNWdaBon1tgYCaebd+XPg0keyjEbEfkD4KkmAxkQ/i1vYvxdcT5nscLBfq9VJRmCBcFSw== + version "1.0.7" + resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.7.tgz#bd094bfef42634ccfd9e13b9fc73274997111e39" + integrity sha512-Mz9QMT5fJe7bKI7MH31UilT5cEK5EHHRCccw/YRFsRY47AuNgaV6HY3rscp0/I4Q+tTW/5zoqpSeRRI54TkDWA== dependencies: inherits "^2.0.4" safe-buffer "^5.2.1" + to-buffer "^1.2.2" cjs-module-lexer@^1.0.0: version "1.4.3" @@ -1363,9 +1347,9 @@ co@^4.6.0: integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== collect-v8-coverage@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz#c0b29bcd33bcd0779a1344c2136051e6afd3d9e9" - integrity sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q== + version "1.0.3" + resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.3.tgz#cc1f01eb8d02298cbc9a437c74c70ab4e5210b80" + integrity sha512-1L5aqIkwPfiodaMgQunkF1zRhNqifHBmtbbbxcr6yVxxBnliw4TDOW6NxpO8DJLgJ16OT+Y4ztZqP6p/FtXnAw== color-convert@^2.0.1: version "2.0.1" @@ -1401,10 +1385,10 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -cookie@^0.7.2: - version "0.7.2" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.2.tgz#556369c472a2ba910f2979891b526b3436237ed7" - integrity sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w== +cookie@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-1.0.2.tgz#27360701532116bd3f1f9416929d176afe1e4610" + integrity sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA== core-util-is@~1.0.0: version "1.0.3" @@ -1430,16 +1414,6 @@ create-hash@^1.1.0, create-hash@^1.2.0: ripemd160 "^2.0.1" sha.js "^2.4.0" -create-hash@~1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.3.tgz#606042ac8b9262750f483caddab0f5819172d8fd" - integrity sha512-snRpch/kwQhcdlnZKYanNF1m0RDlrCdSKQaH87w1FCFPVPNCQ/Il9QJKAX2jVBZddRdaHBMC+zXa9Gw9tmkNUA== - dependencies: - cipher-base "^1.0.1" - inherits "^2.0.1" - ripemd160 "^2.0.0" - sha.js "^2.4.0" - create-hmac@^1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" @@ -1526,9 +1500,9 @@ data-urls@^3.0.2: whatwg-url "^11.0.0" debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1: - version "4.4.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.1.tgz#e5a8bc6cbc4c6cd3e64308b0693a3d4fa550189b" - integrity sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ== + version "4.4.3" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a" + integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== dependencies: ms "^2.1.3" @@ -1538,9 +1512,9 @@ decimal.js@^10.4.2: integrity sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg== dedent@^1.0.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.6.0.tgz#79d52d6389b1ffa67d2bcef59ba51847a9d503b2" - integrity sha512-F1Z+5UCFpmQUzJa11agbyPVMbpgT/qA3/SKyJ1jyBgm7dUcUEa8v9JwDkerSQXfakBwFljIxhOJqGkjUwZ9FSA== + version "1.7.0" + resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.7.0.tgz#c1f9445335f0175a96587be245a282ff451446ca" + integrity sha512-HGFtf8yhuhGhqO07SV79tRp+br4MnbdjeVxotpn1QBl30pcLLCQjX5b2295ll0fv8RKDKsmWYrl05usHM9CewQ== deepmerge@^4.2.2: version "4.3.1" @@ -1604,12 +1578,12 @@ dunder-proto@^1.0.1: es-errors "^1.3.0" gopd "^1.2.0" -electron-to-chromium@^1.5.199: - version "1.5.201" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.201.tgz#bdc8f13e828e2f65d2c925ab2e8b02604928632f" - integrity sha512-ZG65vsrLClodGqywuigc+7m0gr4ISoTQttfVh7nfpLv0M7SIwF4WbFNEOywcqTiujs12AUeeXbFyQieDICAIxg== +electron-to-chromium@^1.5.238: + version "1.5.244" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.244.tgz#b9b61e3d24ef4203489951468614f2a360763820" + integrity sha512-OszpBN7xZX4vWMPJwB9illkN/znA8M36GQqQxi6MNy9axWxhOfJyZZJtSLQCpEFLHP2xK33BiWx9aIuIEXVCcw== -elliptic@^6.5.3, elliptic@^6.5.5: +elliptic@^6.5.3, elliptic@^6.6.1: version "6.6.1" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.6.1.tgz#3b8ffb02670bf69e382c7f65bf524c97c5405c06" integrity sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g== @@ -1646,9 +1620,9 @@ entities@^6.0.0: integrity sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g== error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + version "1.3.4" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.4.tgz#b3a8d8bb6f92eecc1629e3e27d3c8607a8a32414" + integrity sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ== dependencies: is-arrayish "^0.2.1" @@ -1800,9 +1774,9 @@ fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.1.0: integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== fast-uri@^3.0.1: - version "3.0.6" - resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.0.6.tgz#88f130b77cfaea2378d56bf970dea21257a68748" - integrity sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw== + version "3.1.0" + resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.1.0.tgz#66eecff6c764c0df9b762e62ca7edcfb53b4edfa" + integrity sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA== fb-watchman@^2.0.0: version "2.0.2" @@ -1936,9 +1910,9 @@ graceful-fs@^4.1.2, graceful-fs@^4.2.11, graceful-fs@^4.2.4, graceful-fs@^4.2.9: integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== graphql@^16.8.1: - version "16.11.0" - resolved "https://registry.yarnpkg.com/graphql/-/graphql-16.11.0.tgz#96d17f66370678027fdf59b2d4c20b4efaa8a633" - integrity sha512-mS1lbMsxgQj6hge1XZ6p7GPhbrtFwUFYi3wRzXAC/FmYnyXMTvvI3td3rjmQ2u8ewXueaSvRPWaEcgVVOT9Jnw== + version "16.12.0" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-16.12.0.tgz#28cc2462435b1ac3fdc6976d030cef83a0c13ac7" + integrity sha512-DKKrynuQRne0PNpEbzuEdHlYOMksHSUI8Zc9Unei5gTsMNA2/vMpoMz/yKba50pejK56qj98qM0SjYxAKi13gQ== handlebars@^4.7.8: version "4.7.8" @@ -1976,23 +1950,17 @@ has-tostringtag@^1.0.2: dependencies: has-symbols "^1.0.3" -hash-base@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz#66ea1d856db4e8a5470cadf6fce23ae5244ef2e1" - integrity sha512-0TROgQ1/SxE6KmxWSvXHvRj90/Xo1JvZShofnYF+f6ZsGtR4eES7WfrQzPalmyagfKZCXpVnitiRebZulWsbiw== - dependencies: - inherits "^2.0.1" - -hash-base@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33" - integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA== +hash-base@^3.0.0, hash-base@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.2.tgz#79d72def7611c3f6e3c3b5730652638001b10a74" + integrity sha512-Bb33KbowVTIj5s7Ked1OsqHUeCpz//tPwR+E2zJgJKo9Z5XolZ9b6bdUgjmYlwnWhoOQKoTd1TYToZGn5mAYOg== dependencies: inherits "^2.0.4" - readable-stream "^3.6.0" - safe-buffer "^5.2.0" + readable-stream "^2.3.8" + safe-buffer "^5.2.1" + to-buffer "^1.2.1" -hash-base@~3.0, hash-base@~3.0.4: +hash-base@~3.0.4: version "3.0.5" resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.5.tgz#52480e285395cf7fba17dc4c9e47acdc7f248a8a" integrity sha512-vXm0l45VbcHEVlTCzs8M+s0VeYsB2lnlAaThoLKGXr3bE/VWDOelNUnycUPEhKEaXARL2TEFjBOyUiM6+55KBg== @@ -2111,7 +2079,7 @@ is-callable@^1.2.7: resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-core-module@^2.16.0: +is-core-module@^2.16.1: version "2.16.1" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.16.1.tgz#2a98801a849f43e2add644fbb6bc6229b19a4ef4" integrity sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w== @@ -2216,9 +2184,9 @@ istanbul-lib-source-maps@^4.0.0: source-map "^0.6.1" istanbul-reports@^3.1.3: - version "3.1.7" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.7.tgz#daed12b9e1dca518e15c056e1e537e741280fa0b" - integrity sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g== + version "3.2.0" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.2.0.tgz#cb4535162b5784aa623cee21a7252cf2c807ac93" + integrity sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA== dependencies: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" @@ -2698,9 +2666,9 @@ lines-and-columns@^1.1.6: integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== loader-runner@^4.2.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" - integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== + version "4.3.1" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.1.tgz#6c76ed29b0ccce9af379208299f07f876de737e3" + integrity sha512-IWqP2SCPhyVFTBtRcgMHdzlf9ul25NwaFx4wCEH/KjAXuuHY4yNjvPXsBokp8jCB936PyWRaPKUNh8NvylLp2Q== locate-path@^5.0.0: version "5.0.0" @@ -2820,27 +2788,27 @@ ms@^2.1.3: integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== msw@^2.8.4: - version "2.10.5" - resolved "https://registry.yarnpkg.com/msw/-/msw-2.10.5.tgz#3e43f12e97581c260bf38d8817732b9fec3bfdb0" - integrity sha512-0EsQCrCI1HbhpBWd89DvmxY6plmvrM96b0sCIztnvcNHQbXn5vqwm1KlXslo6u4wN9LFGLC1WFjjgljcQhe40A== + version "2.11.6" + resolved "https://registry.yarnpkg.com/msw/-/msw-2.11.6.tgz#9ae647c3b050fbc1e1a2300dee15b3605c14c25d" + integrity sha512-MCYMykvmiYScyUm7I6y0VCxpNq1rgd5v7kG8ks5dKtvmxRUUPjribX6mUoUNBbM5/3PhUyoelEWiKXGOz84c+w== dependencies: - "@bundled-es-modules/cookie" "^2.0.1" - "@bundled-es-modules/statuses" "^1.0.1" - "@bundled-es-modules/tough-cookie" "^0.1.6" "@inquirer/confirm" "^5.0.0" - "@mswjs/interceptors" "^0.39.1" + "@mswjs/interceptors" "^0.40.0" "@open-draft/deferred-promise" "^2.2.0" - "@open-draft/until" "^2.1.0" - "@types/cookie" "^0.6.0" "@types/statuses" "^2.0.4" + cookie "^1.0.2" graphql "^16.8.1" headers-polyfill "^4.0.2" is-node-process "^1.2.0" outvariant "^1.4.3" path-to-regexp "^6.3.0" picocolors "^1.1.1" + rettime "^0.7.0" + statuses "^2.0.2" strict-event-emitter "^0.5.1" + tough-cookie "^6.0.0" type-fest "^4.26.1" + until-async "^3.0.2" yargs "^17.7.2" mute-stream@^2.0.0: @@ -2870,10 +2838,10 @@ node-int64@^0.4.0: resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== -node-releases@^2.0.19: - version "2.0.19" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.19.tgz#9e445a52950951ec4d177d843af370b411caf314" - integrity sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw== +node-releases@^2.0.26: + version "2.0.27" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.27.tgz#eedca519205cf20f650f61d56b070db111231e4e" + integrity sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA== normalize-path@^3.0.0: version "3.0.0" @@ -2888,9 +2856,9 @@ npm-run-path@^4.0.1: path-key "^3.0.0" nwsapi@^2.2.2: - version "2.2.21" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.21.tgz#8df7797079350adda208910d8c33fc4c2d7520c3" - integrity sha512-o6nIY3qwiSXl7/LuOU0Dmuctd34Yay0yeuZRLFmDPrrdHpXKFndPj3hM+YEPVHYC5fx2otBx4Ilc/gyYSAUaIA== + version "2.2.22" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.22.tgz#109f9530cda6c156d6a713cdf5939e9f0de98b9d" + integrity sha512-ujSMe1OWVn55euT1ihwCI1ZcAaAU3nxUiDwfDQldc51ZXaB9m2AyOn6/jh1BLe2t/G8xd6uKG1UBF2aZJeg2SQ== object-inspect@^1.13.3: version "1.13.4" @@ -2942,16 +2910,15 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== -parse-asn1@^5.0.0, parse-asn1@^5.1.7: - version "5.1.7" - resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.7.tgz#73cdaaa822125f9647165625eb45f8a051d2df06" - integrity sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg== +parse-asn1@^5.0.0, parse-asn1@^5.1.9: + version "5.1.9" + resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.9.tgz#8dd24c3ea8da77dffbc708d94eaf232fd6156e95" + integrity sha512-fIYNuZ/HastSb80baGOuPRo1O9cf4baWw5WsAp7dBuUzeTD/BoaG8sVTdlPFksBE2lF21dN+A1AnrpIjSWqHHg== dependencies: asn1.js "^4.10.1" browserify-aes "^1.2.0" evp_bytestokey "^1.0.3" - hash-base "~3.0" - pbkdf2 "^3.1.2" + pbkdf2 "^3.1.5" safe-buffer "^5.2.1" parse-json@^5.2.0: @@ -2996,17 +2963,17 @@ path-to-regexp@^6.3.0: resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-6.3.0.tgz#2b6a26a337737a8e1416f9272ed0766b1c0389f4" integrity sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ== -pbkdf2@^3.1.2, pbkdf2@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.3.tgz#8be674d591d65658113424592a95d1517318dd4b" - integrity sha512-wfRLBZ0feWRhCIkoMB6ete7czJcnNnqRpcoWQBLqatqXXmelSRqfdDK4F3u9T2s2cXas/hQJcryI/4lAL+XTlA== +pbkdf2@^3.1.2, pbkdf2@^3.1.3, pbkdf2@^3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.5.tgz#444a59d7a259a95536c56e80c89de31cc01ed366" + integrity sha512-Q3CG/cYvCO1ye4QKkuH7EXxs3VC/rI1/trd+qX2+PolbaKG0H+bgcZzrTt96mMyRtejk+JMCiLUn3y29W8qmFQ== dependencies: - create-hash "~1.1.3" + create-hash "^1.2.0" create-hmac "^1.1.7" - ripemd160 "=2.0.1" + ripemd160 "^2.0.3" safe-buffer "^5.2.1" - sha.js "^2.4.11" - to-buffer "^1.2.0" + sha.js "^2.4.12" + to-buffer "^1.2.1" picocolors@^1.1.1: version "1.1.1" @@ -3146,15 +3113,6 @@ readable-stream@^2.3.8: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.6.0: - version "3.6.2" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" - integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== - dependencies: - inherits "^2.0.3" - string_decoder "^1.1.1" - util-deprecate "^1.0.1" - readable-stream@^4.5.2: version "4.7.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.7.0.tgz#cedbd8a1146c13dfff8dab14068028d58c15ac91" @@ -3199,31 +3157,28 @@ resolve.exports@^2.0.0: integrity sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A== resolve@^1.20.0: - version "1.22.10" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39" - integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w== + version "1.22.11" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.11.tgz#aad857ce1ffb8bfa9b0b1ac29f1156383f68c262" + integrity sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ== dependencies: - is-core-module "^2.16.0" + is-core-module "^2.16.1" path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -ripemd160@=2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7" - integrity sha512-J7f4wutN8mdbV08MJnXibYpCOPHR+yzy+iQ/AsjMv2j8cLavQ8VGagDFUwwTAdF8FmRKVeNpbTTEwNHCW1g94w== - dependencies: - hash-base "^2.0.0" - inherits "^2.0.1" +rettime@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/rettime/-/rettime-0.7.0.tgz#c040f1a65e396eaa4b8346dd96ed937edc79d96f" + integrity sha512-LPRKoHnLKd/r3dVxcwO7vhCW+orkOGj9ViueosEBK6ie89CijnfRlhaDhHq/3Hxu4CkWQtxwlBG0mzTQY6uQjw== -ripemd160@^2.0.0, ripemd160@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" - integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== +ripemd160@^2.0.0, ripemd160@^2.0.1, ripemd160@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.3.tgz#9be54e4ba5e3559c8eee06a25cd7648bbccdf5a8" + integrity sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA== dependencies: - hash-base "^3.0.0" - inherits "^2.0.1" + hash-base "^3.1.2" + inherits "^2.0.4" -safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@^5.2.1, safe-buffer@~5.2.0: +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -3245,10 +3200,10 @@ saxes@^6.0.0: dependencies: xmlchars "^2.2.0" -schema-utils@^4.3.0, schema-utils@^4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.3.2.tgz#0c10878bf4a73fd2b1dfd14b9462b26788c806ae" - integrity sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ== +schema-utils@^4.3.0, schema-utils@^4.3.3: + version "4.3.3" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.3.3.tgz#5b1850912fa31df90716963d45d9121fdfc09f46" + integrity sha512-eflK8wEtyOE6+hsaRVPxvUKYCpRgzLqDTb8krvAsRIwOGlHoSgYLgBXoubGgLd2fT41/OUYdb48v4k4WWHQurA== dependencies: "@types/json-schema" "^7.0.9" ajv "^8.9.0" @@ -3260,10 +3215,10 @@ semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.3.4, semver@^7.5.3, semver@^7.5.4, semver@^7.7.2: - version "7.7.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.2.tgz#67d99fdcd35cec21e6f8b87a7fd515a33f982b58" - integrity sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA== +semver@^7.3.4, semver@^7.5.3, semver@^7.5.4, semver@^7.7.3: + version "7.7.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.3.tgz#4b5f4143d007633a8dc671cd0a6ef9147b8bb946" + integrity sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q== serialize-javascript@^6.0.2: version "6.0.2" @@ -3284,7 +3239,7 @@ set-function-length@^1.2.2: gopd "^1.0.1" has-property-descriptors "^1.0.2" -sha.js@^2.4.0, sha.js@^2.4.11, sha.js@^2.4.8: +sha.js@^2.4.0, sha.js@^2.4.12, sha.js@^2.4.8: version "2.4.12" resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.12.tgz#eb8b568bf383dfd1867a32c3f2b74eb52bdbf23f" integrity sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w== @@ -3403,7 +3358,7 @@ stack-utils@^2.0.3: dependencies: escape-string-regexp "^2.0.0" -statuses@^2.0.1: +statuses@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.2.tgz#8f75eecef765b5e1cfcdc080da59409ed424e382" integrity sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw== @@ -3430,7 +3385,7 @@ string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" -string_decoder@^1.1.1, string_decoder@^1.3.0: +string_decoder@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== @@ -3490,10 +3445,10 @@ symbol-tree@^3.2.4: resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== -tapable@^2.1.1, tapable@^2.2.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.2.tgz#ab4984340d30cb9989a490032f086dbb8b56d872" - integrity sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg== +tapable@^2.2.0, tapable@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.3.0.tgz#7e3ea6d5ca31ba8e078b560f0d83ce9a14aa8be6" + integrity sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg== terser-webpack-plugin@^5.3.11: version "5.3.14" @@ -3507,12 +3462,12 @@ terser-webpack-plugin@^5.3.11: terser "^5.31.1" terser@^5.31.1: - version "5.43.1" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.43.1.tgz#88387f4f9794ff1a29e7ad61fb2932e25b4fdb6d" - integrity sha512-+6erLbBm0+LROX2sPXlUYx/ux5PyE9K/a92Wrt6oA+WDAoFTdpHE5tCYCI5PNzq2y8df4rA+QgHLJuR4jNymsg== + version "5.44.0" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.44.0.tgz#ebefb8e5b8579d93111bfdfc39d2cf63879f4a82" + integrity sha512-nIVck8DK+GM/0Frwd+nIhZ84pR/BX7rmXMfYwyg+Sri5oGVE99/E3KvXqpC2xHFxyqXyGHTKBSioxxplrO4I4w== dependencies: "@jridgewell/source-map" "^0.3.3" - acorn "^8.14.0" + acorn "^8.15.0" commander "^2.20.0" source-map-support "~0.5.20" @@ -3525,15 +3480,27 @@ test-exclude@^6.0.0: glob "^7.1.4" minimatch "^3.0.4" +tldts-core@^7.0.17: + version "7.0.17" + resolved "https://registry.yarnpkg.com/tldts-core/-/tldts-core-7.0.17.tgz#dadfee3750dd272ed219d7367beb7cbb2ff29eb8" + integrity sha512-DieYoGrP78PWKsrXr8MZwtQ7GLCUeLxihtjC1jZsW1DnvSMdKPitJSe8OSYDM2u5H6g3kWJZpePqkp43TfLh0g== + +tldts@^7.0.5: + version "7.0.17" + resolved "https://registry.yarnpkg.com/tldts/-/tldts-7.0.17.tgz#a6cdc067b9e80ea05f3be471c0ea410688cc78b2" + integrity sha512-Y1KQBgDd/NUc+LfOtKS6mNsC9CCaH+m2P1RoIZy7RAPo3C3/t8X45+zgut31cRZtZ3xKPjfn3TkGTrctC2TQIQ== + dependencies: + tldts-core "^7.0.17" + tmpl@1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== -to-buffer@^1.2.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/to-buffer/-/to-buffer-1.2.1.tgz#2ce650cdb262e9112a18e65dc29dcb513c8155e0" - integrity sha512-tB82LpAIWjhLYbqjx3X4zEeHN6M8CiuOEy2JY8SEQVdYRe3CCHOFaqrBW1doLDrfpWhplcW7BL+bO3/6S3pcDQ== +to-buffer@^1.2.0, to-buffer@^1.2.1, to-buffer@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/to-buffer/-/to-buffer-1.2.2.tgz#ffe59ef7522ada0a2d1cb5dfe03bb8abc3cdc133" + integrity sha512-db0E3UJjcFhpDhAF4tLo03oli3pwl3dbnzXOUIlRKrp+ldk/VUxzpWYZENsw2SZiuBjHAk7DfB0VU7NKdpb6sw== dependencies: isarray "^2.0.5" safe-buffer "^5.2.1" @@ -3546,7 +3513,7 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -tough-cookie@^4.1.2, tough-cookie@^4.1.4: +tough-cookie@^4.1.2: version "4.1.4" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.4.tgz#945f1461b45b5a8c76821c33ea49c3ac192c1b36" integrity sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag== @@ -3556,6 +3523,13 @@ tough-cookie@^4.1.2, tough-cookie@^4.1.4: universalify "^0.2.0" url-parse "^1.5.3" +tough-cookie@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-6.0.0.tgz#11e418b7864a2c0d874702bc8ce0f011261940e5" + integrity sha512-kXuRi1mtaKMrsLUxz3sQYvVl37B0Ns6MzfrtV5DvJceE9bPyspOqk9xxv7XbZWcfLWbFmm997vl83qUWVJA64w== + dependencies: + tldts "^7.0.5" + tr46@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/tr46/-/tr46-3.0.0.tgz#555c4e297a950617e8eeddef633c87d4d9d6cbf9" @@ -3569,9 +3543,9 @@ tr46@~0.0.3: integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== ts-jest@^29.3.4: - version "29.4.1" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-29.4.1.tgz#42d33beb74657751d315efb9a871fe99e3b9b519" - integrity sha512-SaeUtjfpg9Uqu8IbeDKtdaS0g8lS6FT6OzM3ezrDfErPJPHNDo/Ey+VFGP1bQIDfagYDLyRpd7O15XpG1Es2Uw== + version "29.4.5" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-29.4.5.tgz#a6b0dc401e521515d5342234be87f1ca96390a6f" + integrity sha512-HO3GyiWn2qvTQA4kTgjDcXiMwYQt68a1Y8+JuLRVpdIzm+UOLSHgl/XqR4c6nzJkq5rOkjc02O2I7P7l/Yof0Q== dependencies: bs-logger "^0.2.6" fast-json-stable-stringify "^2.1.0" @@ -3579,14 +3553,14 @@ ts-jest@^29.3.4: json5 "^2.2.3" lodash.memoize "^4.1.2" make-error "^1.3.6" - semver "^7.7.2" + semver "^7.7.3" type-fest "^4.41.0" yargs-parser "^21.1.1" ts-loader@^9.5.1: - version "9.5.2" - resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-9.5.2.tgz#1f3d7f4bb709b487aaa260e8f19b301635d08020" - integrity sha512-Qo4piXvOTWcMGIgRiuFa6nHNm+54HbYaZCKqc9eeZCLRy3XqafQgwX2F7mofrbJG3g7EEb+lkiR+z2Lic2s3Zw== + version "9.5.4" + resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-9.5.4.tgz#44b571165c10fb5a90744aa5b7e119233c4f4585" + integrity sha512-nCz0rEwunlTZiy6rXFByQU1kVVpCIgUpc/psFiKVrUwrizdnIbRFu8w7bxhUF0X613DYwT4XzrZHpVyMe758hQ== dependencies: chalk "^4.1.0" enhanced-resolve "^5.0.0" @@ -3633,20 +3607,25 @@ undici-types@~5.26.4: resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== -undici-types@~7.10.0: - version "7.10.0" - resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-7.10.0.tgz#4ac2e058ce56b462b056e629cc6a02393d3ff350" - integrity sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag== +undici-types@~7.16.0: + version "7.16.0" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-7.16.0.tgz#ffccdff36aea4884cbfce9a750a0580224f58a46" + integrity sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw== universalify@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== -update-browserslist-db@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz#348377dd245216f9e7060ff50b15a1b740b75420" - integrity sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw== +until-async@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/until-async/-/until-async-3.0.2.tgz#447f1531fdd7bb2b4c7a98869bdb1a4c2a23865f" + integrity sha512-IiSk4HlzAMqTUseHHe3VhIGyuFmN90zMTpD3Z3y8jeQbzLIq500MVM7Jq2vUAnTKAFPJrqwkzr6PoTcPhGcOiw== + +update-browserslist-db@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.4.tgz#7802aa2ae91477f255b86e0e46dbc787a206ad4a" + integrity sha512-q0SPT4xyU84saUX+tomz1WLkxUbuaJnR1xWt17M7fJtEJigJeWUNGUqrauFXsHnqev9y9JTRGwk13tFBuKby4A== dependencies: escalade "^3.2.0" picocolors "^1.1.1" @@ -3664,7 +3643,7 @@ url-parse@^1.5.3: querystringify "^2.1.1" requires-port "^1.0.0" -util-deprecate@^1.0.1, util-deprecate@~1.0.1: +util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== @@ -3692,7 +3671,7 @@ walker@^1.0.8: dependencies: makeerror "1.0.12" -watchpack@^2.4.1: +watchpack@^2.4.4: version "2.4.4" resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.4.tgz#473bda72f0850453da6425081ea46fc0d7602947" integrity sha512-c5EGNOiyxxV5qmTtAB7rbiXxi1ooX1pQKMLX/MIabJjRA0SJBQOjKF+KSVfHkr9U1cADPon0mRiVe/riyaiDUA== @@ -3716,9 +3695,9 @@ webpack-sources@^3.3.3: integrity sha512-yd1RBzSGanHkitROoPFd6qsrxt+oFhg/129YzheDGqeustzX0vTZJZsSsQjVQC4yzBQ56K55XU8gaNCtIzOnTg== webpack@^5.97.1: - version "5.101.2" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.101.2.tgz#08c222b7acfce7da95c593e2f88ea1638a07b344" - integrity sha512-4JLXU0tD6OZNVqlwzm3HGEhAHufSiyv+skb7q0d2367VDMzrU1Q/ZeepvkcHH0rZie6uqEtTQQe0OEOOluH3Mg== + version "5.102.1" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.102.1.tgz#1003a3024741a96ba99c37431938bf61aad3d988" + integrity sha512-7h/weGm9d/ywQ6qzJ+Xy+r9n/3qgp/thalBbpOi5i223dPXKi04IBtqPN9nTd+jBc7QKfvDbaBnFipYp4sJAUQ== dependencies: "@types/eslint-scope" "^3.7.7" "@types/estree" "^1.0.8" @@ -3728,7 +3707,7 @@ webpack@^5.97.1: "@webassemblyjs/wasm-parser" "^1.14.1" acorn "^8.15.0" acorn-import-phases "^1.0.3" - browserslist "^4.24.0" + browserslist "^4.26.3" chrome-trace-event "^1.0.2" enhanced-resolve "^5.17.3" es-module-lexer "^1.2.1" @@ -3740,10 +3719,10 @@ webpack@^5.97.1: loader-runner "^4.2.0" mime-types "^2.1.27" neo-async "^2.6.2" - schema-utils "^4.3.2" - tapable "^2.1.1" + schema-utils "^4.3.3" + tapable "^2.3.0" terser-webpack-plugin "^5.3.11" - watchpack "^2.4.1" + watchpack "^2.4.4" webpack-sources "^3.3.3" whatwg-encoding@^2.0.0: @@ -3879,6 +3858,6 @@ yocto-queue@^0.1.0: integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== yoctocolors-cjs@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/yoctocolors-cjs/-/yoctocolors-cjs-2.1.2.tgz#f4b905a840a37506813a7acaa28febe97767a242" - integrity sha512-cYVsTjKl8b+FrnidjibDWskAv7UKOfcwaVZdp/it9n1s9fU3IkgDbhdIRKCW4JDsAlECJY0ytoVPT3sK6kideA== + version "2.1.3" + resolved "https://registry.yarnpkg.com/yoctocolors-cjs/-/yoctocolors-cjs-2.1.3.tgz#7e4964ea8ec422b7a40ac917d3a344cfd2304baa" + integrity sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==