openapi: 3.0.1 info: title: HubSpot CMS Posts description: vNext REST API for Public Blog services version: 2026-09 x-hubspot-product-tier-requirements: marketing: PROFESSIONAL sales: FREE service: FREE cms: STARTER commerce: FREE crmHub: FREE dataHub: FREE x-hubspot-api-use-case: Retrieve all blog posts created this year as a part of a content audit. x-hubspot-introduction: Use the blog posts API to create, manage, and publish blog posts on your website. servers: - url: https://api.hubapi.com tags: - name: Basic - name: Batch - name: Multi-language - name: Revisions paths: /cms/blogs/2026-09/authors/cursor: get: tags: - Basic operationId: get-/cms/blogs/2026-09/authors/cursor_/cms/blogs/v3/authors/cursor parameters: - name: after in: query description: The paging cursor token of the last successfully read resource will be returned as the `paging.next.after` JSON property of a paged response containing more results. required: false style: form explode: true schema: type: string - name: archived in: query description: Whether to return only results that have been archived. required: false style: form explode: true schema: type: boolean - name: createdAfter in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: createdAt in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: createdBefore in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: limit in: query description: The maximum number of results to display per page. required: false style: form explode: true schema: type: integer format: int32 - name: property in: query description: '' required: false style: form explode: true schema: type: string - name: sort in: query description: '' required: false style: form explode: true schema: type: array items: type: string - name: updatedAfter in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: updatedAt in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: updatedBefore in: query description: '' required: false style: form explode: true schema: type: string format: date-time responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/CursorPagedResultBlogAuthorLong' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/authors/cursor/query: get: tags: - Basic operationId: get-/cms/blogs/2026-09/authors/cursor/query_/cms/blogs/v3/authors/cursor/query parameters: - name: after in: query description: The paging cursor token of the last successfully read resource will be returned as the `paging.next.after` JSON property of a paged response containing more results. required: false style: form explode: true schema: type: string - name: archived in: query description: Whether to return only results that have been archived. required: false style: form explode: true schema: type: boolean - name: createdAfter in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: createdAt in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: createdBefore in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: limit in: query description: The maximum number of results to display per page. required: false style: form explode: true schema: type: integer format: int32 - name: property in: query description: '' required: false style: form explode: true schema: type: string - name: sort in: query description: '' required: false style: form explode: true schema: type: array items: type: string - name: updatedAfter in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: updatedAt in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: updatedBefore in: query description: '' required: false style: form explode: true schema: type: string format: date-time responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/CursorPagedResultBlogAuthorLong' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts: get: tags: - Basic summary: Get all posts description: Retrieve all blog posts, with paging and filtering options. This method would be useful for an integration that ingests posts and suggests edits. operationId: get-/cms/blogs/2026-09/posts_getPage parameters: - name: after in: query description: The paging cursor token of the last successfully read resource will be returned as the `paging.next.after` JSON property of a paged response containing more results. required: false style: form explode: true schema: type: string - name: archived in: query description: Whether to return only results that have been archived. required: false style: form explode: true schema: type: boolean - name: createdAfter in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: createdAt in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: createdBefore in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: limit in: query description: The maximum number of results to display per page. required: false style: form explode: true schema: type: integer format: int32 - name: property in: query description: '' required: false style: form explode: true schema: type: string - name: sort in: query description: '' required: false style: form explode: true schema: type: array items: type: string - name: updatedAfter in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: updatedAt in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: updatedBefore in: query description: '' required: false style: form explode: true schema: type: string format: date-time responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/CollectionResponseWithTotalBlogPostForwardPaging' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content post: tags: - Basic summary: Create a new post description: Create a new blog post, specifying its content in the request body. operationId: post-/cms/blogs/2026-09/posts_create parameters: [] requestBody: content: '*/*': schema: $ref: '#/components/schemas/BlogPost' required: true responses: '201': description: successful operation headers: Location: description: URL of the newly created resource style: simple explode: false schema: type: string content: '*/*': schema: $ref: '#/components/schemas/BlogPost' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/batch/archive: post: tags: - Batch summary: Delete a batch of blog posts description: "Delete a blog post by ID. \nNote: This is not the same as the in-app `archive` function.\ \ To perform a dashboard `archive` send an normal update with the `archivedInDashboard` field\ \ set to `true`." operationId: post-/cms/blogs/2026-09/posts/batch/archive_archive parameters: [] requestBody: content: '*/*': schema: $ref: '#/components/schemas/BatchInputString' required: true responses: '204': description: No content content: {} default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/batch/create: post: tags: - Batch summary: Create a batch of blog posts description: Create a batch of blog posts, specifying their content in the request body. operationId: post-/cms/blogs/2026-09/posts/batch/create_create parameters: [] requestBody: content: '*/*': schema: $ref: '#/components/schemas/BatchInputBlogPost' required: true responses: '201': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/BatchResponseBlogPost' '207': description: multiple statuses content: '*/*': schema: $ref: '#/components/schemas/BatchResponseBlogPostWithErrors' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/batch/read: post: tags: - Batch summary: Retrieve a batch of Blog Posts description: Retrieve a batch of blog posts by ID. identified in the request body. operationId: post-/cms/blogs/2026-09/posts/batch/read_read parameters: - name: archived in: query description: Whether to return only results that have been archived. required: false style: form explode: true schema: type: boolean requestBody: content: '*/*': schema: $ref: '#/components/schemas/BatchInputString' required: true responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/BatchResponseBlogPost' '207': description: multiple statuses content: '*/*': schema: $ref: '#/components/schemas/BatchResponseBlogPostWithErrors' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/batch/update: post: tags: - Batch summary: Update a batch of Blog Posts description: Update a batch of blog posts. operationId: post-/cms/blogs/2026-09/posts/batch/update_update parameters: - name: archived in: query description: Whether to return only results that have been archived. required: false style: form explode: true schema: type: boolean requestBody: content: '*/*': schema: $ref: '#/components/schemas/BatchInputJsonNode' required: true responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/BatchResponseBlogPost' '207': description: multiple statuses content: '*/*': schema: $ref: '#/components/schemas/BatchResponseBlogPostWithErrors' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/clone: post: tags: - Basic summary: Clone a blog post description: Clone a blog post, making a copy of it in a new blog post. operationId: post-/cms/blogs/2026-09/posts/clone_clone parameters: [] requestBody: content: '*/*': schema: $ref: '#/components/schemas/ContentCloneRequestVNext' required: true responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/BlogPost' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/cursor: get: tags: - Basic operationId: get-/cms/blogs/2026-09/posts/cursor_/cms/blogs/v3/posts/cursor parameters: - name: after in: query description: The paging cursor token of the last successfully read resource will be returned as the `paging.next.after` JSON property of a paged response containing more results. required: false style: form explode: true schema: type: string - name: archived in: query description: Whether to return only results that have been archived. required: false style: form explode: true schema: type: boolean - name: createdAfter in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: createdAt in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: createdBefore in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: limit in: query description: The maximum number of results to display per page. required: false style: form explode: true schema: type: integer format: int32 - name: property in: query description: '' required: false style: form explode: true schema: type: string - name: sort in: query description: '' required: false style: form explode: true schema: type: array items: type: string - name: updatedAfter in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: updatedAt in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: updatedBefore in: query description: '' required: false style: form explode: true schema: type: string format: date-time responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/CursorPagedResultBlogPostLong' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/cursor/query: get: tags: - Basic operationId: get-/cms/blogs/2026-09/posts/cursor/query_/cms/blogs/v3/posts/cursor/query parameters: - name: after in: query description: The paging cursor token of the last successfully read resource will be returned as the `paging.next.after` JSON property of a paged response containing more results. required: false style: form explode: true schema: type: string - name: archived in: query description: Whether to return only results that have been archived. required: false style: form explode: true schema: type: boolean - name: createdAfter in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: createdAt in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: createdBefore in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: limit in: query description: The maximum number of results to display per page. required: false style: form explode: true schema: type: integer format: int32 - name: property in: query description: '' required: false style: form explode: true schema: type: string - name: sort in: query description: '' required: false style: form explode: true schema: type: array items: type: string - name: updatedAfter in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: updatedAt in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: updatedBefore in: query description: '' required: false style: form explode: true schema: type: string format: date-time responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/CursorPagedResultBlogPostLong' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/multi-language/attach-to-lang-group: post: tags: - Multi-language summary: Attach post to a multi-language group description: Attach a blog post to a [multi-language group](https://developers.hubspot.com/docs/guides/cms/content/multi-language-content). operationId: post-/cms/blogs/2026-09/posts/multi-language/attach-to-lang-group_attachToLangGroup parameters: [] requestBody: content: '*/*': schema: $ref: '#/components/schemas/AttachToLangPrimaryRequestVNext' required: true responses: default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/multi-language/create-language-variation: post: tags: - Multi-language summary: Create a language variation description: Create a new language variation from an existing blog post operationId: post-/cms/blogs/2026-09/posts/multi-language/create-language-variation_createLangVariation parameters: [] requestBody: content: '*/*': schema: $ref: '#/components/schemas/BlogPostLanguageCloneRequestVNext' required: true responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/BlogPost' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/multi-language/detach-from-lang-group: post: tags: - Multi-language summary: Detach post from a multi-language group description: Detach a blog post from a [multi-language group](https://developers.hubspot.com/docs/guides/cms/content/multi-language-content). operationId: post-/cms/blogs/2026-09/posts/multi-language/detach-from-lang-group_detachFromLangGroup parameters: [] requestBody: content: '*/*': schema: $ref: '#/components/schemas/DetachFromLangGroupRequestVNext' required: true responses: default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/multi-language/set-new-lang-primary: put: tags: - Multi-language summary: Set a new primary language description: Set the primary language of a [multi-language group](https://developers.hubspot.com/docs/guides/cms/content/multi-language-content) to the language of the provided post (specified as an ID in the request body) operationId: put-/cms/blogs/2026-09/posts/multi-language/set-new-lang-primary_setLangPrimary parameters: [] requestBody: content: '*/*': schema: $ref: '#/components/schemas/SetNewLanguagePrimaryRequestVNext' required: true responses: '204': description: No content content: {} default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/multi-language/update-languages: post: tags: - Multi-language summary: Update languages of multi-language group description: Explicitly set new languages for each post in a [multi-language group](https://developers.hubspot.com/docs/guides/cms/content/multi-language-content). operationId: post-/cms/blogs/2026-09/posts/multi-language/update-languages_updateLangs parameters: [] requestBody: content: '*/*': schema: $ref: '#/components/schemas/UpdateLanguagesRequestVNext' required: true responses: default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/schedule: post: tags: - Basic summary: Schedule a post to be published description: Schedule a blog post to be published at a specified time. operationId: post-/cms/blogs/2026-09/posts/schedule_schedule parameters: [] requestBody: content: '*/*': schema: $ref: '#/components/schemas/ContentScheduleRequestVNext' required: true responses: '204': description: No content content: {} default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/{objectId}: get: tags: - Basic summary: Retrieve a blog post description: Retrieve a blog post by the post ID. operationId: get-/cms/blogs/2026-09/posts/{objectId}_getById parameters: - name: objectId in: path description: '' required: true style: simple explode: false schema: type: string - name: archived in: query description: Whether to return only results that have been archived. required: false style: form explode: true schema: type: boolean - name: property in: query description: '' required: false style: form explode: true schema: type: string responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/BlogPost' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content delete: tags: - Basic summary: Delete a blog post description: Delete a blog post by ID. operationId: delete-/cms/blogs/2026-09/posts/{objectId}_archive parameters: - name: objectId in: path description: '' required: true style: simple explode: false schema: type: string - name: archived in: query description: Whether to return only results that have been archived. required: false style: form explode: true schema: type: boolean responses: '204': description: No content content: {} default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content patch: tags: - Basic summary: Update a post description: Partially updates a single blog post by ID. You only need to specify the values that you want to update. operationId: patch-/cms/blogs/2026-09/posts/{objectId}_update parameters: - name: objectId in: path description: '' required: true style: simple explode: false schema: type: string - name: archived in: query description: Whether to return only results that have been archived. required: false style: form explode: true schema: type: boolean requestBody: content: '*/*': schema: $ref: '#/components/schemas/BlogPost' required: true responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/BlogPost' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/{objectId}/draft: get: tags: - Basic summary: Retrieve the full draft version of the Blog Post description: Retrieve the full draft version of a blog post. operationId: get-/cms/blogs/2026-09/posts/{objectId}/draft_getDraftById parameters: - name: objectId in: path description: '' required: true style: simple explode: false schema: type: string responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/BlogPost' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content patch: tags: - Basic summary: Update the draft of a post description: Partially updates the draft version of a single blog post by ID. You only need to specify the values that you want to update. operationId: patch-/cms/blogs/2026-09/posts/{objectId}/draft_updateDraft parameters: - name: objectId in: path description: '' required: true style: simple explode: false schema: type: string requestBody: content: '*/*': schema: $ref: '#/components/schemas/BlogPost' required: true responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/BlogPost' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/{objectId}/draft/push-live: post: tags: - Basic summary: Publish blog post draft description: Publish the draft version of the blog post, sending its content to the live page. operationId: post-/cms/blogs/2026-09/posts/{objectId}/draft/push-live_pushLive parameters: - name: objectId in: path description: '' required: true style: simple explode: false schema: type: string responses: '204': description: No content content: {} default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/{objectId}/draft/reset: post: tags: - Basic summary: Reset post draft to the live version description: Discard all drafted content, resetting the draft to contain the content in the currently published version. operationId: post-/cms/blogs/2026-09/posts/{objectId}/draft/reset_resetDraft parameters: - name: objectId in: path description: '' required: true style: simple explode: false schema: type: string responses: '204': description: No content content: {} default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/{objectId}/revisions: get: tags: - Revisions summary: Retrieves all previous versions of a post description: Retrieve all the previous versions of a blog post. operationId: get-/cms/blogs/2026-09/posts/{objectId}/revisions_getPreviousVersions parameters: - name: objectId in: path description: '' required: true style: simple explode: false schema: type: string - name: after in: query description: The paging cursor token of the last successfully read resource will be returned as the `paging.next.after` JSON property of a paged response containing more results. required: false style: form explode: true schema: type: string - name: before in: query description: '' required: false style: form explode: true schema: type: string - name: limit in: query description: The maximum number of results to display per page. required: false style: form explode: true schema: type: integer format: int32 responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/CollectionResponseWithTotalBlogPostVersion' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/{objectId}/revisions/{revisionId}: get: tags: - Revisions summary: Retrieve a previous version of a blog post description: Retrieve a previous version of a blog post. operationId: get-/cms/blogs/2026-09/posts/{objectId}/revisions/{revisionId}_getPreviousVersion parameters: - name: objectId in: path description: '' required: true style: simple explode: false schema: type: string - name: revisionId in: path description: '' required: true style: simple explode: false schema: type: string responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/BlogPostVersion' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/{objectId}/revisions/{revisionId}/restore: post: tags: - Revisions summary: Restore a previous version description: Restores a blog post to one of its previous versions. operationId: post-/cms/blogs/2026-09/posts/{objectId}/revisions/{revisionId}/restore_restorePreviousVersion parameters: - name: objectId in: path description: '' required: true style: simple explode: false schema: type: string - name: revisionId in: path description: '' required: true style: simple explode: false schema: type: string responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/BlogPost' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/posts/{objectId}/revisions/{revisionId}/restore-to-draft: post: tags: - Revisions summary: Restore a draft to a previous version description: Takes a specified version of a blog post, sets it as the new draft version of the blog post. operationId: post-/cms/blogs/2026-09/posts/{objectId}/revisions/{revisionId}/restore-to-draft_restorePreviousVersionToDraft parameters: - name: objectId in: path description: '' required: true style: simple explode: false schema: type: string - name: revisionId in: path description: '' required: true style: simple explode: false schema: type: integer format: int64 responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/BlogPost' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/tags/cursor: get: tags: - Basic operationId: get-/cms/blogs/2026-09/tags/cursor_/cms/blogs/v3/tags/cursor parameters: - name: after in: query description: The paging cursor token of the last successfully read resource will be returned as the `paging.next.after` JSON property of a paged response containing more results. required: false style: form explode: true schema: type: string - name: archived in: query description: Whether to return only results that have been archived. required: false style: form explode: true schema: type: boolean - name: createdAfter in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: createdAt in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: createdBefore in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: limit in: query description: The maximum number of results to display per page. required: false style: form explode: true schema: type: integer format: int32 - name: property in: query description: '' required: false style: form explode: true schema: type: string - name: sort in: query description: '' required: false style: form explode: true schema: type: array items: type: string - name: updatedAfter in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: updatedAt in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: updatedBefore in: query description: '' required: false style: form explode: true schema: type: string format: date-time responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/CursorPagedResultTagLong' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content /cms/blogs/2026-09/tags/cursor/query: get: tags: - Basic operationId: get-/cms/blogs/2026-09/tags/cursor/query_/cms/blogs/v3/tags/cursor/query parameters: - name: after in: query description: The paging cursor token of the last successfully read resource will be returned as the `paging.next.after` JSON property of a paged response containing more results. required: false style: form explode: true schema: type: string - name: archived in: query description: Whether to return only results that have been archived. required: false style: form explode: true schema: type: boolean - name: createdAfter in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: createdAt in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: createdBefore in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: limit in: query description: The maximum number of results to display per page. required: false style: form explode: true schema: type: integer format: int32 - name: property in: query description: '' required: false style: form explode: true schema: type: string - name: sort in: query description: '' required: false style: form explode: true schema: type: array items: type: string - name: updatedAfter in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: updatedAt in: query description: '' required: false style: form explode: true schema: type: string format: date-time - name: updatedBefore in: query description: '' required: false style: form explode: true schema: type: string format: date-time responses: '200': description: successful operation content: '*/*': schema: $ref: '#/components/schemas/CursorPagedResultTagLong' default: description: '' $ref: '#/components/responses/Error' security: - oauth2: - content components: schemas: Angle: required: - units - value type: object properties: units: type: string description: The unit of measurement for the angle. enum: - DEGREES - GRADIANS - RADIANS - TURNS value: type: number description: The numerical representation of the angle. AttachToLangPrimaryRequestVNext: required: - id - language - primaryId type: object properties: id: type: string description: ID of the object to add to a multi-language group. language: type: string description: Designated language of the object to add to a multi-language group. enum: - aa - ab - ae - af - af-na - af-za - agq - agq-cm - ak - ak-gh - am - am-et - an - ann - ann-ng - ar - ar-001 - ar-ae - ar-bh - ar-dj - ar-dz - ar-eg - ar-eh - ar-er - ar-il - ar-iq - ar-jo - ar-km - ar-kw - ar-lb - ar-ly - ar-ma - ar-mr - ar-om - ar-ps - ar-qa - ar-sa - ar-sd - ar-so - ar-ss - ar-sy - ar-td - ar-tn - ar-ye - as - as-in - asa - asa-tz - ast - ast-es - av - ay - az - az-az - ba - bal - bal-pk - bas - bas-cm - be - be-by - bem - bem-zm - bez - bez-tz - bg - bg-bg - bgc - bgc-in - bho - bho-in - bi - blo - blo-bj - bm - bm-ml - bn - bn-bd - bn-in - bo - bo-cn - bo-in - br - br-fr - brx - brx-in - bs - bs-ba - ca - ca-ad - ca-es - ca-fr - ca-it - ccp - ccp-bd - ccp-in - ce - ce-ru - ceb - ceb-ph - cgg - cgg-ug - ch - chr - chr-us - ckb - ckb-iq - ckb-ir - co - cr - cs - cs-cz - csw - csw-ca - cu - cu-ru - cv - cv-ru - cy - cy-gb - da - da-dk - da-gl - dav - dav-ke - de - de-at - de-be - de-ch - de-de - de-gr - de-it - de-li - de-lu - dje - dje-ne - doi - doi-in - dsb - dsb-de - dua - dua-cm - dv - dyo - dyo-sn - dz - dz-bt - ebu - ebu-ke - ee - ee-gh - ee-tg - el - el-cy - el-gr - en - en-001 - en-150 - en-ae - en-ag - en-ai - en-as - en-at - en-au - en-bb - en-be - en-bi - en-bm - en-bs - en-bw - en-bz - en-ca - en-cc - en-ch - en-ck - en-cm - en-cn - en-cx - en-cy - en-cz - en-de - en-dg - en-dk - en-dm - en-ee - en-eg - en-er - en-es - en-fi - en-fj - en-fk - en-fm - en-fr - en-gb - en-gd - en-gg - en-gh - en-gi - en-gm - en-gs - en-gu - en-gy - en-hk - en-hu - en-id - en-ie - en-il - en-im - en-in - en-io - en-it - en-je - en-jm - en-ke - en-ki - en-kn - en-ky - en-lc - en-lr - en-ls - en-lu - en-mg - en-mh - en-mo - en-mp - en-ms - en-mt - en-mu - en-mv - en-mw - en-mx - en-my - en-na - en-nf - en-ng - en-nl - en-no - en-nr - en-nu - en-nz - en-pg - en-ph - en-pk - en-pl - en-pn - en-pr - en-pt - en-pw - en-ro - en-rw - en-sb - en-sc - en-sd - en-se - en-sg - en-sh - en-si - en-sk - en-sl - en-ss - en-sx - en-sz - en-tc - en-th - en-tk - en-tn - en-to - en-tt - en-tv - en-tz - en-ug - en-um - en-us - en-vc - en-vg - en-vi - en-vn - en-vu - en-ws - en-za - en-zm - en-zw - eo - eo-001 - es - es-419 - es-ar - es-bo - es-br - es-bz - es-cl - es-co - es-cr - es-cu - es-do - es-ea - es-ec - es-es - es-gq - es-gt - es-hn - es-ic - es-mx - es-ni - es-pa - es-pe - es-ph - es-pr - es-py - es-sv - es-us - es-uy - es-ve - et - et-ee - eu - eu-es - ewo - ewo-cm - fa - fa-af - fa-ir - ff - ff-bf - ff-cm - ff-gh - ff-gm - ff-gn - ff-gw - ff-lr - ff-mr - ff-ne - ff-ng - ff-sl - ff-sn - fi - fi-fi - fil - fil-ph - fj - fo - fo-dk - fo-fo - fr - fr-be - fr-bf - fr-bi - fr-bj - fr-bl - fr-ca - fr-cd - fr-cf - fr-cg - fr-ch - fr-ci - fr-cm - fr-dj - fr-dz - fr-fr - fr-ga - fr-gf - fr-gn - fr-gp - fr-gq - fr-ht - fr-km - fr-lu - fr-ma - fr-mc - fr-mf - fr-mg - fr-ml - fr-mq - fr-mr - fr-mu - fr-nc - fr-ne - fr-pf - fr-pm - fr-re - fr-rw - fr-sc - fr-sn - fr-sy - fr-td - fr-tg - fr-tn - fr-vu - fr-wf - fr-yt - frr - frr-de - fur - fur-it - fy - fy-nl - ga - ga-gb - ga-ie - gaa - gaa-gh - gd - gd-gb - gl - gl-es - gn - gsw - gsw-ch - gsw-fr - gsw-li - gu - gu-in - guz - guz-ke - gv - gv-im - ha - ha-gh - ha-ne - ha-ng - haw - haw-us - he - he-il - he-il - hi - hi-in - hmn - ho - hr - hr-ba - hr-hr - hsb - hsb-de - ht - ht-ht - hu - hu-hu - hy - hy-am - hz - ia - ia-001 - id - id-id - ie - ie-ee - ig - ig-ng - ii - ii-cn - ik - io - is - is-is - it - it-ch - it-it - it-sm - it-va - iu - ja - ja-jp - jgo - jgo-cm - jmc - jmc-tz - jv - jv-id - ka - ka-ge - kab - kab-dz - kam - kam-ke - kar - kde - kde-tz - kea - kea-cv - kg - kgp - kgp-br - kh - khq - khq-ml - ki - ki-ke - kj - kk - kk-kz - kkj - kkj-cm - kl - kl-gl - kln - kln-ke - km - km-kh - kn - kn-in - ko - ko-cn - ko-kp - ko-kr - kok - kok-in - kr - ks - ks-in - ksb - ksb-tz - ksf - ksf-cm - ksh - ksh-de - ku - ku-tr - kv - kw - kw-gb - kxv - kxv-in - ky - ky-kg - la - lag - lag-tz - lb - lb-lu - lg - lg-ug - li - lij - lij-it - lkt - lkt-us - lmo - lmo-it - ln - ln-ao - ln-cd - ln-cf - ln-cg - lo - lo-la - lrc - lrc-iq - lrc-ir - lt - lt-lt - lu - lu-cd - luo - luo-ke - luy - luy-ke - lv - lv-lv - mai - mai-in - mas - mas-ke - mas-tz - mdf - mdf-ru - mer - mer-ke - mfe - mfe-mu - mg - mg-mg - mgh - mgh-mz - mgo - mgo-cm - mh - mi - mi-nz - mk - mk-mk - ml - ml-in - mn - mn-mn - mni - mni-in - mr - mr-in - ms - ms-bn - ms-id - ms-my - ms-sg - mt - mt-mt - mua - mua-cm - my - my-mm - mzn - mzn-ir - na - naq - naq-na - nb - nb-no - nb-sj - nd - nd-zw - nds - nds-de - nds-nl - ne - ne-in - ne-np - ng - nl - nl-aw - nl-be - nl-bq - nl-ch - nl-cw - nl-lu - nl-nl - nl-sr - nl-sx - nmg - nmg-cm - nn - nn-no - nnh - nnh-cm - 'no' - no-no - nqo - nqo-gn - nr - nso - nso-za - nus - nus-ss - nv - ny - nyn - nyn-ug - oc - oc-es - oc-fr - oj - om - om-et - om-ke - or - or-in - os - os-ge - os-ru - pa - pa-in - pa-pk - pcm - pcm-ng - pi - pis - pis-sb - pl - pl-pl - prg - prg-001 - ps - ps-af - ps-pk - pt - pt-ao - pt-br - pt-ch - pt-cv - pt-gq - pt-gw - pt-lu - pt-mo - pt-mz - pt-pt - pt-st - pt-tl - qu - qu-bo - qu-ec - qu-pe - raj - raj-in - rm - rm-ch - rn - rn-bi - ro - ro-md - ro-ro - rof - rof-tz - ru - ru-by - ru-kg - ru-kz - ru-md - ru-ru - ru-ua - rw - rw-rw - rwk - rwk-tz - sa - sa-in - sah - sah-ru - saq - saq-ke - sat - sat-in - sbp - sbp-tz - sc - sc-it - sd - sd-in - sd-pk - se - se-fi - se-no - se-se - seh - seh-mz - ses - ses-ml - sg - sg-cf - shi - shi-ma - si - si-lk - sk - sk-sk - sl - sl-si - sm - smn - smn-fi - sms - sms-fi - sn - sn-zw - so - so-dj - so-et - so-ke - so-so - sq - sq-al - sq-mk - sq-xk - sr - sr-ba - sr-cs - sr-me - sr-rs - sr-xk - ss - st - st-ls - st-za - su - su-id - sv - sv-ax - sv-fi - sv-se - sw - sw-cd - sw-ke - sw-tz - sw-ug - sy - syr - syr-iq - syr-sy - szl - szl-pl - ta - ta-in - ta-lk - ta-my - ta-sg - te - te-in - teo - teo-ke - teo-ug - tg - tg-tj - th - th-th - ti - ti-er - ti-et - tk - tk-tm - tl - tn - tn-bw - tn-za - to - to-to - tok - tok-001 - tr - tr-cy - tr-tr - ts - tt - tt-ru - tw - twq - twq-ne - ty - tzm - tzm-ma - ug - ug-cn - uk - uk-ua - ur - ur-in - ur-pk - uz - uz-af - uz-uz - vai - vai-lr - ve - vec - vec-it - vi - vi-vn - vmw - vmw-mz - vo - vo-001 - vun - vun-tz - wa - wae - wae-ch - wo - wo-sn - xh - xh-za - xnr - xnr-in - xog - xog-ug - yav - yav-cm - yi - yi - yi-001 - yi-ua - yo - yo-bj - yo-ng - yrl - yrl-br - yrl-co - yrl-ve - yue - yue-cn - yue-hk - yue-mo - za - za-cn - zgh - zgh-ma - zh - zh-cn - zh-hans - zh-hant - zh-hk - zh-mo - zh-my - zh-sg - zh-tw - zu - zu-za primaryId: type: string description: ID of primary language object in multi-language group. primaryLanguage: type: string description: Primary language of the multi-language group. enum: - aa - ab - ae - af - af-na - af-za - agq - agq-cm - ak - ak-gh - am - am-et - an - ann - ann-ng - ar - ar-001 - ar-ae - ar-bh - ar-dj - ar-dz - ar-eg - ar-eh - ar-er - ar-il - ar-iq - ar-jo - ar-km - ar-kw - ar-lb - ar-ly - ar-ma - ar-mr - ar-om - ar-ps - ar-qa - ar-sa - ar-sd - ar-so - ar-ss - ar-sy - ar-td - ar-tn - ar-ye - as - as-in - asa - asa-tz - ast - ast-es - av - ay - az - az-az - ba - bal - bal-pk - bas - bas-cm - be - be-by - bem - bem-zm - bez - bez-tz - bg - bg-bg - bgc - bgc-in - bho - bho-in - bi - blo - blo-bj - bm - bm-ml - bn - bn-bd - bn-in - bo - bo-cn - bo-in - br - br-fr - brx - brx-in - bs - bs-ba - ca - ca-ad - ca-es - ca-fr - ca-it - ccp - ccp-bd - ccp-in - ce - ce-ru - ceb - ceb-ph - cgg - cgg-ug - ch - chr - chr-us - ckb - ckb-iq - ckb-ir - co - cr - cs - cs-cz - csw - csw-ca - cu - cu-ru - cv - cv-ru - cy - cy-gb - da - da-dk - da-gl - dav - dav-ke - de - de-at - de-be - de-ch - de-de - de-gr - de-it - de-li - de-lu - dje - dje-ne - doi - doi-in - dsb - dsb-de - dua - dua-cm - dv - dyo - dyo-sn - dz - dz-bt - ebu - ebu-ke - ee - ee-gh - ee-tg - el - el-cy - el-gr - en - en-001 - en-150 - en-ae - en-ag - en-ai - en-as - en-at - en-au - en-bb - en-be - en-bi - en-bm - en-bs - en-bw - en-bz - en-ca - en-cc - en-ch - en-ck - en-cm - en-cn - en-cx - en-cy - en-cz - en-de - en-dg - en-dk - en-dm - en-ee - en-eg - en-er - en-es - en-fi - en-fj - en-fk - en-fm - en-fr - en-gb - en-gd - en-gg - en-gh - en-gi - en-gm - en-gs - en-gu - en-gy - en-hk - en-hu - en-id - en-ie - en-il - en-im - en-in - en-io - en-it - en-je - en-jm - en-ke - en-ki - en-kn - en-ky - en-lc - en-lr - en-ls - en-lu - en-mg - en-mh - en-mo - en-mp - en-ms - en-mt - en-mu - en-mv - en-mw - en-mx - en-my - en-na - en-nf - en-ng - en-nl - en-no - en-nr - en-nu - en-nz - en-pg - en-ph - en-pk - en-pl - en-pn - en-pr - en-pt - en-pw - en-ro - en-rw - en-sb - en-sc - en-sd - en-se - en-sg - en-sh - en-si - en-sk - en-sl - en-ss - en-sx - en-sz - en-tc - en-th - en-tk - en-tn - en-to - en-tt - en-tv - en-tz - en-ug - en-um - en-us - en-vc - en-vg - en-vi - en-vn - en-vu - en-ws - en-za - en-zm - en-zw - eo - eo-001 - es - es-419 - es-ar - es-bo - es-br - es-bz - es-cl - es-co - es-cr - es-cu - es-do - es-ea - es-ec - es-es - es-gq - es-gt - es-hn - es-ic - es-mx - es-ni - es-pa - es-pe - es-ph - es-pr - es-py - es-sv - es-us - es-uy - es-ve - et - et-ee - eu - eu-es - ewo - ewo-cm - fa - fa-af - fa-ir - ff - ff-bf - ff-cm - ff-gh - ff-gm - ff-gn - ff-gw - ff-lr - ff-mr - ff-ne - ff-ng - ff-sl - ff-sn - fi - fi-fi - fil - fil-ph - fj - fo - fo-dk - fo-fo - fr - fr-be - fr-bf - fr-bi - fr-bj - fr-bl - fr-ca - fr-cd - fr-cf - fr-cg - fr-ch - fr-ci - fr-cm - fr-dj - fr-dz - fr-fr - fr-ga - fr-gf - fr-gn - fr-gp - fr-gq - fr-ht - fr-km - fr-lu - fr-ma - fr-mc - fr-mf - fr-mg - fr-ml - fr-mq - fr-mr - fr-mu - fr-nc - fr-ne - fr-pf - fr-pm - fr-re - fr-rw - fr-sc - fr-sn - fr-sy - fr-td - fr-tg - fr-tn - fr-vu - fr-wf - fr-yt - frr - frr-de - fur - fur-it - fy - fy-nl - ga - ga-gb - ga-ie - gaa - gaa-gh - gd - gd-gb - gl - gl-es - gn - gsw - gsw-ch - gsw-fr - gsw-li - gu - gu-in - guz - guz-ke - gv - gv-im - ha - ha-gh - ha-ne - ha-ng - haw - haw-us - he - he-il - hi - hi-in - hmn - ho - hr - hr-ba - hr-hr - hsb - hsb-de - ht - ht-ht - hu - hu-hu - hy - hy-am - hz - ia - ia-001 - id - id-id - ie - ie-ee - ig - ig-ng - ii - ii-cn - ik - io - is - is-is - it - it-ch - it-it - it-sm - it-va - iu - ja - ja-jp - jgo - jgo-cm - jmc - jmc-tz - jv - jv-id - ka - ka-ge - kab - kab-dz - kam - kam-ke - kar - kde - kde-tz - kea - kea-cv - kg - kgp - kgp-br - kh - khq - khq-ml - ki - ki-ke - kj - kk - kk-kz - kkj - kkj-cm - kl - kl-gl - kln - kln-ke - km - km-kh - kn - kn-in - ko - ko-cn - ko-kp - ko-kr - kok - kok-in - kr - ks - ks-in - ksb - ksb-tz - ksf - ksf-cm - ksh - ksh-de - ku - ku-tr - kv - kw - kw-gb - kxv - kxv-in - ky - ky-kg - la - lag - lag-tz - lb - lb-lu - lg - lg-ug - li - lij - lij-it - lkt - lkt-us - lmo - lmo-it - ln - ln-ao - ln-cd - ln-cf - ln-cg - lo - lo-la - lrc - lrc-iq - lrc-ir - lt - lt-lt - lu - lu-cd - luo - luo-ke - luy - luy-ke - lv - lv-lv - mai - mai-in - mas - mas-ke - mas-tz - mdf - mdf-ru - mer - mer-ke - mfe - mfe-mu - mg - mg-mg - mgh - mgh-mz - mgo - mgo-cm - mh - mi - mi-nz - mk - mk-mk - ml - ml-in - mn - mn-mn - mni - mni-in - mr - mr-in - ms - ms-bn - ms-id - ms-my - ms-sg - mt - mt-mt - mua - mua-cm - my - my-mm - mzn - mzn-ir - na - naq - naq-na - nb - nb-no - nb-sj - nd - nd-zw - nds - nds-de - nds-nl - ne - ne-in - ne-np - ng - nl - nl-aw - nl-be - nl-bq - nl-ch - nl-cw - nl-lu - nl-nl - nl-sr - nl-sx - nmg - nmg-cm - nn - nn-no - nnh - nnh-cm - 'no' - no-no - nqo - nqo-gn - nr - nso - nso-za - nus - nus-ss - nv - ny - nyn - nyn-ug - oc - oc-es - oc-fr - oj - om - om-et - om-ke - or - or-in - os - os-ge - os-ru - pa - pa-in - pa-pk - pcm - pcm-ng - pi - pis - pis-sb - pl - pl-pl - prg - prg-001 - ps - ps-af - ps-pk - pt - pt-ao - pt-br - pt-ch - pt-cv - pt-gq - pt-gw - pt-lu - pt-mo - pt-mz - pt-pt - pt-st - pt-tl - qu - qu-bo - qu-ec - qu-pe - raj - raj-in - rm - rm-ch - rn - rn-bi - ro - ro-md - ro-ro - rof - rof-tz - ru - ru-by - ru-kg - ru-kz - ru-md - ru-ru - ru-ua - rw - rw-rw - rwk - rwk-tz - sa - sa-in - sah - sah-ru - saq - saq-ke - sat - sat-in - sbp - sbp-tz - sc - sc-it - sd - sd-in - sd-pk - se - se-fi - se-no - se-se - seh - seh-mz - ses - ses-ml - sg - sg-cf - shi - shi-ma - si - si-lk - sk - sk-sk - sl - sl-si - sm - smn - smn-fi - sms - sms-fi - sn - sn-zw - so - so-dj - so-et - so-ke - so-so - sq - sq-al - sq-mk - sq-xk - sr - sr-ba - sr-cs - sr-me - sr-rs - sr-xk - ss - st - st-ls - st-za - su - su-id - sv - sv-ax - sv-fi - sv-se - sw - sw-cd - sw-ke - sw-tz - sw-ug - sy - syr - syr-iq - syr-sy - szl - szl-pl - ta - ta-in - ta-lk - ta-my - ta-sg - te - te-in - teo - teo-ke - teo-ug - tg - tg-tj - th - th-th - ti - ti-er - ti-et - tk - tk-tm - tl - tn - tn-bw - tn-za - to - to-to - tok - tok-001 - tr - tr-cy - tr-tr - ts - tt - tt-ru - tw - twq - twq-ne - ty - tzm - tzm-ma - ug - ug-cn - uk - uk-ua - ur - ur-in - ur-pk - uz - uz-af - uz-uz - vai - vai-lr - ve - vec - vec-it - vi - vi-vn - vmw - vmw-mz - vo - vo-001 - vun - vun-tz - wa - wae - wae-ch - wo - wo-sn - xh - xh-za - xnr - xnr-in - xog - xog-ug - yav - yav-cm - yi - yi-001 - yi-ua - yo - yo-bj - yo-ng - yrl - yrl-br - yrl-co - yrl-ve - yue - yue-cn - yue-hk - yue-mo - za - za-cn - zgh - zgh-ma - zh - zh-cn - zh-hans - zh-hant - zh-hk - zh-mo - zh-my - zh-sg - zh-tw - zu - zu-za BackgroundImage: required: - backgroundPosition - backgroundSize - imageUrl type: object properties: backgroundPosition: type: string description: Defines the position of the background image. backgroundSize: type: string description: Specifies the size of the background image. imageUrl: type: string description: The URL of the background image. BatchInputBlogPost: required: - inputs type: object properties: inputs: type: array description: Blog posts to input. items: $ref: '#/components/schemas/BlogPost' BatchInputJsonNode: required: - inputs type: object properties: inputs: type: array description: JSON nodes to input. items: type: object properties: {} BatchInputString: required: - inputs type: object properties: inputs: type: array description: Strings to input. items: type: string BatchResponseBlogPost: required: - completedAt - results - startedAt - status type: object properties: completedAt: type: string description: Time of batch operation completion. format: date-time links: type: object additionalProperties: type: string description: Links associated with batch operation. requestedAt: type: string description: Time of batch operation request. format: date-time results: type: array description: Results of batch operation. items: $ref: '#/components/schemas/BlogPost' startedAt: type: string description: Time of batch operation start. format: date-time status: type: string description: Status of batch operation. enum: - CANCELED - COMPLETE - PENDING - PROCESSING BatchResponseBlogPostWithErrors: required: - completedAt - results - startedAt - status type: object properties: completedAt: type: string description: Time of batch operation completion. format: date-time errors: type: array description: Errors in batch operation. items: $ref: '#/components/schemas/StandardError' links: type: object additionalProperties: type: string description: Links associated with batch operation. numErrors: type: integer description: Number of errors. format: int32 requestedAt: type: string description: Time of batch operation request. format: date-time results: type: array description: Results of batch operation. items: $ref: '#/components/schemas/BlogPost' startedAt: type: string description: Time of batch operation start. format: date-time status: type: string description: Status of batch operation. enum: - CANCELED - COMPLETE - PENDING - PROCESSING BlogPost: required: - abStatus - abTestId - archivedAt - archivedInDashboard - attachedStylesheets - authorName - blogAuthorId - campaign - categoryId - contentGroupId - contentTypeCategory - created - createdById - currentState - currentlyPublished - domain - dynamicPageDataSourceId - dynamicPageDataSourceType - dynamicPageHubDbTableId - enableDomainStylesheets - enableGoogleAmpOutputOverride - enableLayoutStylesheets - featuredImage - featuredImageAltText - folderId - footerHtml - headHtml - htmlTitle - id - includeDefaultCustomCss - language - layoutSections - linkRelCanonicalUrl - mabExperimentId - metaDescription - name - pageExpiryDate - pageExpiryEnabled - pageExpiryRedirectId - pageExpiryRedirectUrl - password - postBody - postSummary - publicAccessRules - publicAccessRulesEnabled - publishDate - publishImmediately - publishedAt - rssBody - rssSummary - slug - state - tagIds - themeSettingsValues - translatedFromId - translations - updated - updatedById - url - useFeaturedImage - widgetContainers - widgets type: object properties: abStatus: type: string description: 'The status of the AB test associated with this blog post, if applicable Available options: automated_loser_variant, automated_master, automated_variant, loser_variant, mab_master, mab_variant, master, variant' enum: - automated_loser_variant - automated_master - automated_variant - loser_variant - mab_master - mab_variant - master - variant abTestId: type: string description: The ID of the AB test associated with this page, if applicable archivedAt: type: integer description: The timestamp (ISO8601 format) when this Blog Post was deleted. format: int64 archivedInDashboard: type: boolean description: If True, the post will not show up in your dashboard, although the post could still be live. attachedStylesheets: type: array description: List of stylesheets to attach to this blog post. These stylesheets are attached to just this page. Order of precedence is bottom to top, just like in the HTML. items: type: object additionalProperties: type: object properties: {} authorName: type: string description: The name of the user that updated this Blog Post. blogAuthorId: type: string description: The ID of the Blog Author associated with this Blog Post. campaign: type: string description: The GUID of the marketing campaign this Blog Post is a part of. categoryId: type: integer description: ID of the type of object this is. Should always . format: int32 contentGroupId: type: string description: The ID of the parent Blog this Blog Post is associated with. contentTypeCategory: type: string description: An ENUM descibing the type of this object. Should always be BLOG_POST. enum: - '0' - '1' - '10' - '11' - '12' - '13' - '14' - '15' - '16' - '17' - '18' - '19' - '2' - '20' - '21' - '22' - '3' - '4' - '5' - '6' - '7' - '8' - '9' created: type: string description: The timestamp (ISO8601 format) when this Blog Post was created. format: date-time createdById: type: string description: The ID of the user that created this Blog Post. currentState: type: string description: A generated ENUM descibing the current state of this Blog Post. Should always match state. enum: - AGENT_GENERATED - AUTOMATED - AUTOMATED_AB - AUTOMATED_AB_VARIANT - AUTOMATED_DRAFT - AUTOMATED_DRAFT_AB - AUTOMATED_DRAFT_ABVARIANT - AUTOMATED_FOR_FORM - AUTOMATED_FOR_FORM_BUFFER - AUTOMATED_FOR_FORM_DRAFT - AUTOMATED_FOR_FORM_LEGACY - AUTOMATED_LOSER_ABVARIANT - AUTOMATED_SENDING - BLOG_EMAIL_DRAFT - BLOG_EMAIL_PUBLISHED - DRAFT - DRAFT_AB - DRAFT_AB_VARIANT - ERROR - LOSER_AB_VARIANT - PAGE_STUB - PRE_PROCESSING - PROCESSING - PUBLISHED - PUBLISHED_AB - PUBLISHED_AB_VARIANT - PUBLISHED_OR_SCHEDULED - RSS_TO_EMAIL_DRAFT - RSS_TO_EMAIL_PUBLISHED - SCHEDULED - SCHEDULED_AB - SCHEDULED_OR_PUBLISHED currentlyPublished: type: boolean description: Whether the post is published (true or false) domain: type: string description: The domain this Blog Post will resolve to. If null, the Blog Post will default to the domain of the ParentBlog. dynamicPageDataSourceId: type: string description: The identifier for the data source used by the dynamic page. dynamicPageDataSourceType: type: integer description: The type of data source used by the dynamic page. format: int32 dynamicPageHubDbTableId: type: string description: The ID of the HubDB table this Blog Post references, if applicable enableDomainStylesheets: type: boolean description: Boolean to determine whether or not the styles from the template should be applied. enableGoogleAmpOutputOverride: type: boolean description: Boolean to allow overriding the AMP settings for the blog. enableLayoutStylesheets: type: boolean description: Boolean to determine whether or not the styles from the template should be applied. featuredImage: type: string description: The featuredImage of this Blog Post. featuredImageAltText: type: string description: Alt Text of the featuredImage. folderId: type: string description: Unique identifier of associated folder footerHtml: type: string description: Custom HTML for embed codes, javascript that should be placed before the
tag of the page. headHtml: type: string description: Custom HTML for embed codes, javascript, etc. that goes in the
tag of the page. htmlTitle: type: string description: The html title of this Blog Post. id: type: string description: The unique ID of the Blog Post. includeDefaultCustomCss: type: boolean description: Boolean to determine whether or not the Primary CSS Files should be applied. language: type: string description: The explicitly defined ISO 639 language code of the Blog Post. If null, the Blog Post will default to the language of the ParentBlog. enum: - aa - ab - ae - af - af-na - af-za - agq - agq-cm - ak - ak-gh - am - am-et - an - ann - ann-ng - ar - ar-001 - ar-ae - ar-bh - ar-dj - ar-dz - ar-eg - ar-eh - ar-er - ar-il - ar-iq - ar-jo - ar-km - ar-kw - ar-lb - ar-ly - ar-ma - ar-mr - ar-om - ar-ps - ar-qa - ar-sa - ar-sd - ar-so - ar-ss - ar-sy - ar-td - ar-tn - ar-ye - as - as-in - asa - asa-tz - ast - ast-es - av - ay - az - az-az - ba - bal - bal-pk - bas - bas-cm - be - be-by - bem - bem-zm - bez - bez-tz - bg - bg-bg - bgc - bgc-in - bho - bho-in - bi - blo - blo-bj - bm - bm-ml - bn - bn-bd - bn-in - bo - bo-cn - bo-in - br - br-fr - brx - brx-in - bs - bs-ba - ca - ca-ad - ca-es - ca-fr - ca-it - ccp - ccp-bd - ccp-in - ce - ce-ru - ceb - ceb-ph - cgg - cgg-ug - ch - chr - chr-us - ckb - ckb-iq - ckb-ir - co - cr - cs - cs-cz - csw - csw-ca - cu - cu-ru - cv - cv-ru - cy - cy-gb - da - da-dk - da-gl - dav - dav-ke - de - de-at - de-be - de-ch - de-de - de-gr - de-it - de-li - de-lu - dje - dje-ne - doi - doi-in - dsb - dsb-de - dua - dua-cm - dv - dyo - dyo-sn - dz - dz-bt - ebu - ebu-ke - ee - ee-gh - ee-tg - el - el-cy - el-gr - en - en-001 - en-150 - en-ae - en-ag - en-ai - en-as - en-at - en-au - en-bb - en-be - en-bi - en-bm - en-bs - en-bw - en-bz - en-ca - en-cc - en-ch - en-ck - en-cm - en-cn - en-cx - en-cy - en-cz - en-de - en-dg - en-dk - en-dm - en-ee - en-eg - en-er - en-es - en-fi - en-fj - en-fk - en-fm - en-fr - en-gb - en-gd - en-gg - en-gh - en-gi - en-gm - en-gs - en-gu - en-gy - en-hk - en-hu - en-id - en-ie - en-il - en-im - en-in - en-io - en-it - en-je - en-jm - en-ke - en-ki - en-kn - en-ky - en-lc - en-lr - en-ls - en-lu - en-mg - en-mh - en-mo - en-mp - en-ms - en-mt - en-mu - en-mv - en-mw - en-mx - en-my - en-na - en-nf - en-ng - en-nl - en-no - en-nr - en-nu - en-nz - en-pg - en-ph - en-pk - en-pl - en-pn - en-pr - en-pt - en-pw - en-ro - en-rw - en-sb - en-sc - en-sd - en-se - en-sg - en-sh - en-si - en-sk - en-sl - en-ss - en-sx - en-sz - en-tc - en-th - en-tk - en-tn - en-to - en-tt - en-tv - en-tz - en-ug - en-um - en-us - en-vc - en-vg - en-vi - en-vn - en-vu - en-ws - en-za - en-zm - en-zw - eo - eo-001 - es - es-419 - es-ar - es-bo - es-br - es-bz - es-cl - es-co - es-cr - es-cu - es-do - es-ea - es-ec - es-es - es-gq - es-gt - es-hn - es-ic - es-mx - es-ni - es-pa - es-pe - es-ph - es-pr - es-py - es-sv - es-us - es-uy - es-ve - et - et-ee - eu - eu-es - ewo - ewo-cm - fa - fa-af - fa-ir - ff - ff-bf - ff-cm - ff-gh - ff-gm - ff-gn - ff-gw - ff-lr - ff-mr - ff-ne - ff-ng - ff-sl - ff-sn - fi - fi-fi - fil - fil-ph - fj - fo - fo-dk - fo-fo - fr - fr-be - fr-bf - fr-bi - fr-bj - fr-bl - fr-ca - fr-cd - fr-cf - fr-cg - fr-ch - fr-ci - fr-cm - fr-dj - fr-dz - fr-fr - fr-ga - fr-gf - fr-gn - fr-gp - fr-gq - fr-ht - fr-km - fr-lu - fr-ma - fr-mc - fr-mf - fr-mg - fr-ml - fr-mq - fr-mr - fr-mu - fr-nc - fr-ne - fr-pf - fr-pm - fr-re - fr-rw - fr-sc - fr-sn - fr-sy - fr-td - fr-tg - fr-tn - fr-vu - fr-wf - fr-yt - frr - frr-de - fur - fur-it - fy - fy-nl - ga - ga-gb - ga-ie - gaa - gaa-gh - gd - gd-gb - gl - gl-es - gn - gsw - gsw-ch - gsw-fr - gsw-li - gu - gu-in - guz - guz-ke - gv - gv-im - ha - ha-gh - ha-ne - ha-ng - haw - haw-us - he - he-il - hi - hi-in - hmn - ho - hr - hr-ba - hr-hr - hsb - hsb-de - ht - ht-ht - hu - hu-hu - hy - hy-am - hz - ia - ia-001 - id - id-id - ie - ie-ee - ig - ig-ng - ii - ii-cn - ik - io - is - is-is - it - it-ch - it-it - it-sm - it-va - iu - ja - ja-jp - jgo - jgo-cm - jmc - jmc-tz - jv - jv-id - ka - ka-ge - kab - kab-dz - kam - kam-ke - kar - kde - kde-tz - kea - kea-cv - kg - kgp - kgp-br - kh - khq - khq-ml - ki - ki-ke - kj - kk - kk-kz - kkj - kkj-cm - kl - kl-gl - kln - kln-ke - km - km-kh - kn - kn-in - ko - ko-cn - ko-kp - ko-kr - kok - kok-in - kr - ks - ks-in - ksb - ksb-tz - ksf - ksf-cm - ksh - ksh-de - ku - ku-tr - kv - kw - kw-gb - kxv - kxv-in - ky - ky-kg - la - lag - lag-tz - lb - lb-lu - lg - lg-ug - li - lij - lij-it - lkt - lkt-us - lmo - lmo-it - ln - ln-ao - ln-cd - ln-cf - ln-cg - lo - lo-la - lrc - lrc-iq - lrc-ir - lt - lt-lt - lu - lu-cd - luo - luo-ke - luy - luy-ke - lv - lv-lv - mai - mai-in - mas - mas-ke - mas-tz - mdf - mdf-ru - mer - mer-ke - mfe - mfe-mu - mg - mg-mg - mgh - mgh-mz - mgo - mgo-cm - mh - mi - mi-nz - mk - mk-mk - ml - ml-in - mn - mn-mn - mni - mni-in - mr - mr-in - ms - ms-bn - ms-id - ms-my - ms-sg - mt - mt-mt - mua - mua-cm - my - my-mm - mzn - mzn-ir - na - naq - naq-na - nb - nb-no - nb-sj - nd - nd-zw - nds - nds-de - nds-nl - ne - ne-in - ne-np - ng - nl - nl-aw - nl-be - nl-bq - nl-ch - nl-cw - nl-lu - nl-nl - nl-sr - nl-sx - nmg - nmg-cm - nn - nn-no - nnh - nnh-cm - 'no' - no-no - nqo - nqo-gn - nr - nso - nso-za - nus - nus-ss - nv - ny - nyn - nyn-ug - oc - oc-es - oc-fr - oj - om - om-et - om-ke - or - or-in - os - os-ge - os-ru - pa - pa-in - pa-pk - pcm - pcm-ng - pi - pis - pis-sb - pl - pl-pl - prg - prg-001 - ps - ps-af - ps-pk - pt - pt-ao - pt-br - pt-ch - pt-cv - pt-gq - pt-gw - pt-lu - pt-mo - pt-mz - pt-pt - pt-st - pt-tl - qu - qu-bo - qu-ec - qu-pe - raj - raj-in - rm - rm-ch - rn - rn-bi - ro - ro-md - ro-ro - rof - rof-tz - ru - ru-by - ru-kg - ru-kz - ru-md - ru-ru - ru-ua - rw - rw-rw - rwk - rwk-tz - sa - sa-in - sah - sah-ru - saq - saq-ke - sat - sat-in - sbp - sbp-tz - sc - sc-it - sd - sd-in - sd-pk - se - se-fi - se-no - se-se - seh - seh-mz - ses - ses-ml - sg - sg-cf - shi - shi-ma - si - si-lk - sk - sk-sk - sl - sl-si - sm - smn - smn-fi - sms - sms-fi - sn - sn-zw - so - so-dj - so-et - so-ke - so-so - sq - sq-al - sq-mk - sq-xk - sr - sr-ba - sr-cs - sr-me - sr-rs - sr-xk - ss - st - st-ls - st-za - su - su-id - sv - sv-ax - sv-fi - sv-se - sw - sw-cd - sw-ke - sw-tz - sw-ug - sy - syr - syr-iq - syr-sy - szl - szl-pl - ta - ta-in - ta-lk - ta-my - ta-sg - te - te-in - teo - teo-ke - teo-ug - tg - tg-tj - th - th-th - ti - ti-er - ti-et - tk - tk-tm - tl - tn - tn-bw - tn-za - to - to-to - tok - tok-001 - tr - tr-cy - tr-tr - ts - tt - tt-ru - tw - twq - twq-ne - ty - tzm - tzm-ma - ug - ug-cn - uk - uk-ua - ur - ur-in - ur-pk - uz - uz-af - uz-uz - vai - vai-lr - ve - vec - vec-it - vi - vi-vn - vmw - vmw-mz - vo - vo-001 - vun - vun-tz - wa - wae - wae-ch - wo - wo-sn - xh - xh-za - xnr - xnr-in - xog - xog-ug - yav - yav-cm - yi - yi-001 - yi-ua - yo - yo-bj - yo-ng - yrl - yrl-br - yrl-co - yrl-ve - yue - yue-cn - yue-hk - yue-mo - za - za-cn - zgh - zgh-ma - zh - zh-cn - zh-hans - zh-hant - zh-hk - zh-mo - zh-my - zh-sg - zh-tw - zu - zu-za layoutSections: type: object additionalProperties: $ref: '#/components/schemas/LayoutSection' description: A structure detailing the layout sections of the blog post. linkRelCanonicalUrl: type: string description: Optional override to set the URL to be used in the rel=canonical link tag on the page. mabExperimentId: type: string description: Unique identifier of the MAB Experiment metaDescription: type: string description: A description that goes in tag on the page. name: type: string description: The internal name of the Blog Post. pageExpiryDate: type: integer description: The date at which this blog post should expire and begin redirecting to another url or page. format: int64 pageExpiryEnabled: type: boolean description: Boolean describing if the page expiration feature is enabled for this blog post. pageExpiryRedirectId: type: integer description: The ID of another page this blog post's url should redirect to once this blog post expires. Should only set this or pageExpiryRedirectUrl. format: int64 pageExpiryRedirectUrl: type: string description: The URL this blog post's url should redirect to once it expires. Should only set this or pageExpiryRedirectId. password: type: string description: Set this to create a password protected page. Entering the password will be required to view the page. postBody: type: string description: The HTML of the main post body. postSummary: type: string description: The summary of the blog post that will appear on the main listing page. publicAccessRules: type: array description: Rules for require member registration to access private content. items: $ref: '#/components/schemas/PublicAccessRule' publicAccessRulesEnabled: type: boolean description: Boolean to determine whether or not to respect publicAccessRules. publishDate: type: string description: The date (ISO8601 format) the blog post is to be published at. format: date-time publishImmediately: type: boolean description: Set this to true if you want to be published immediately when the schedule publish endpoint is called, and to ignore the publish_date setting. publishedAt: type: string format: date-time rssBody: type: string description: The contents of the RSS body for this Blog Post. rssSummary: type: string description: The contents of the RSS summary for this Blog Post. slug: type: string description: The path of the this blog post. This field is appended to the domain to construct the url of this post. state: maxLength: 25 type: string description: An ENUM descibing the current state of this Blog Post. tagIds: type: array description: List of IDs for the tags associated with this Blog Post. items: type: integer format: int64 themeSettingsValues: type: object additionalProperties: type: object properties: {} description: A collection of settings specific to the theme applied to the blog post. translatedFromId: type: string description: ID of the primary blog post this object was translated from. translations: type: object additionalProperties: $ref: '#/components/schemas/ContentLanguageVariation' description: A map of translations for the blog post, each associated with a specific language variation. updated: type: string description: The timestamp (ISO8601 format) when this Blog Post was updated. format: date-time updatedById: type: string description: The ID of the user that updated this Blog Post. url: type: string description: A generated field representing the URL of this blog post. useFeaturedImage: type: boolean description: Boolean to determine if this post should use a featuredImage. widgetContainers: type: object additionalProperties: type: object properties: {} description: A data structure containing the data for all the modules inside the containers for this post. This will only be populated if the page has widget containers. widgets: type: object additionalProperties: type: object properties: {} description: A data structure containing the data for all the modules for this page. BlogPostLanguageCloneRequestVNext: required: - id type: object properties: id: type: string description: ID of blog post to clone. language: type: string description: Target language of new variant. usePublished: type: boolean BlogPostVersion: required: - id - object - updatedAt - user type: object properties: id: type: string object: $ref: '#/components/schemas/BlogPost' updatedAt: type: string format: date-time user: $ref: '#/components/schemas/VersionUser' BreakpointStyles: required: - hidden - margin - padding type: object properties: hidden: type: boolean description: Boolean indicating if the breakpoint is visible. margin: $ref: '#/components/schemas/Margin' padding: $ref: '#/components/schemas/Padding' CollectionResponseWithTotalBlogPostForwardPaging: required: - results - total type: object properties: paging: $ref: '#/components/schemas/ForwardPaging' results: type: array description: Collection of blog posts. items: $ref: '#/components/schemas/BlogPost' total: type: integer description: Total number of blog posts. format: int32 CollectionResponseWithTotalBlogPostVersion: required: - results - total type: object properties: paging: $ref: '#/components/schemas/Paging' results: type: array items: $ref: '#/components/schemas/VersionBlogPost' total: type: integer format: int32 ColorStop: required: - color type: object properties: color: $ref: '#/components/schemas/RGBAColor' ContentCloneRequestVNext: required: - id type: object properties: cloneName: type: string description: Name of the cloned object. id: type: string description: ID of the object to be cloned. ContentLanguageVariation: required: - archivedInDashboard - authorName - campaign - campaignName - created - id - name - password - publicAccessRules - publicAccessRulesEnabled - publishDate - slug - state - updated type: object properties: archivedInDashboard: type: boolean description: If True, the variant will not show up in your dashboard, although the post could still be live. authorName: type: string description: The name of the user who last published the blog post. For posts that haven't been published yet, this property will reflect the user who initially created the draft. campaign: type: string description: The GUID of the marketing campaign this page is a part of. campaignName: type: string description: Name of the associated marketing campaign. created: type: string description: The timestamp (ISO8601 format) when this Blog Post was created. format: date-time id: type: integer description: ID of object to set as primary in multi-language group. format: int64 name: type: string description: The internal name of the content language variation. password: type: string description: Set this to create a password protected page. Entering the password will be required to view the page. publicAccessRules: type: array items: $ref: '#/components/schemas/PublicAccessRule' publicAccessRulesEnabled: type: boolean description: Boolean to determine whether or not to respect publicAccessRules. publishDate: type: string description: The date (ISO8601 format) the page is to be published at. format: date-time slug: type: string description: The path of the this page. This field is appended to the domain to construct the url of this page. state: type: string description: 'An ENUM describing the current state of this page. Maximum string length: 25' tagIds: type: array items: type: integer format: int64 updated: type: string description: The timestamp (ISO8601 format) when this Blog Post was updated. format: date-time ContentScheduleRequestVNext: required: - id - publishDate type: object properties: id: type: string description: The ID of the object to be scheduled. publishDate: type: string description: The date the object should transition from scheduled to published. format: date-time CursorPagedResultBlogAuthorLong: type: object properties: {} CursorPagedResultBlogPostLong: type: object properties: {} CursorPagedResultTagLong: type: object properties: {} DetachFromLangGroupRequestVNext: required: - id type: object properties: id: type: string description: ID of the object to remove from a multi-language group. Error: required: - category - correlationId - message type: object properties: category: type: string description: The error category context: type: object additionalProperties: type: array items: type: string description: Context about the error condition example: '{invalidPropertyName=[propertyValue], missingScopes=[scope1, scope2]}' correlationId: type: string description: A unique identifier for the request. Include this value with any error reports or support tickets format: uuid example: aeb5f871-7f07-4993-9211-075dc63e7cbf errors: type: array description: further information about the error items: $ref: '#/components/schemas/ErrorDetail' links: type: object additionalProperties: type: string description: A map of link names to associated URIs containing documentation about the error or recommended remediation steps message: type: string description: A human readable message describing the error along with remediation steps where appropriate example: An error occurred subCategory: type: string description: A specific category that contains more specific detail about the error description: Represents an error response returned by the API when an operation fails. This component is used in various endpoints to provide detailed information about the error encountered. example: message: Invalid input (details will vary based on the error) correlationId: aeb5f871-7f07-4993-9211-075dc63e7cbf category: VALIDATION_ERROR links: knowledge-base: https://www.hubspot.com/products/service/knowledge-base ErrorDetail: required: - message type: object properties: code: type: string description: The status code associated with the error detail context: type: object additionalProperties: type: array items: type: string description: Context about the error condition example: '{missingScopes=[scope1, scope2]}' in: type: string description: The name of the field or parameter in which the error was found. message: type: string description: A human readable message describing the error along with remediation steps where appropriate subCategory: type: string description: A specific category that contains more specific detail about the error description: Represents detailed information about an error that occurred in the API. This component is used to provide additional context and specifics about errors, typically as part of an error response. ForwardPaging: type: object properties: next: $ref: '#/components/schemas/NextPage' description: Paging information for forward-only pagination. Contains the next page reference when more results are available; omitted or empty on the last page. Gradient: required: - angle - colors - sideOrCorner type: object properties: angle: $ref: '#/components/schemas/Angle' colors: type: array items: $ref: '#/components/schemas/ColorStop' sideOrCorner: $ref: '#/components/schemas/SideOrCorner' LayoutSection: required: - cells - cssClass - cssId - cssStyle - label - name - params - rowMetaData - rows - styles - type - w - x type: object properties: cells: type: array items: $ref: '#/components/schemas/LayoutSection' cssClass: type: string description: The CSS class applied to the layout section. cssId: type: string description: The CSS ID applied to the layout section. cssStyle: type: string description: Custom CSS styles applied to the layout section. label: type: string description: The label for the layout section. name: type: string description: The name assigned to the layout section. params: type: object additionalProperties: type: object properties: {} rowMetaData: type: array items: $ref: '#/components/schemas/RowMetaData' rows: type: array items: type: object additionalProperties: $ref: '#/components/schemas/LayoutSection' styles: $ref: '#/components/schemas/Styles' type: type: string description: The type of the layout section. w: type: integer description: The width of the layout section. format: int32 x: type: integer description: The x-coordinate position of the layout section. format: int32 Margin: required: - bottom - top type: object properties: bottom: $ref: '#/components/schemas/Size' top: $ref: '#/components/schemas/Size' NextPage: required: - after type: object properties: after: type: string description: A paging cursor token for retrieving subsequent pages. link: type: string description: A URL that can be used to retrieve the next page results. description: Specifies the paging information needed to retrieve the next set of results in a paginated API response Padding: required: - bottom - left - right - top type: object properties: bottom: $ref: '#/components/schemas/Size' left: $ref: '#/components/schemas/Size' right: $ref: '#/components/schemas/Size' top: $ref: '#/components/schemas/Size' Paging: type: object properties: next: $ref: '#/components/schemas/NextPage' prev: $ref: '#/components/schemas/PreviousPage' PreviousPage: required: - before type: object properties: before: type: string description: A paging cursor token for retrieving previous pages. link: type: string description: A URL that can be used to retrieve the previous pages' results. description: specifies the paging information needed to retrieve the previous set of results in a paginated API response PublicAccessRule: type: object properties: {} RGBAColor: required: - a - b - g - r type: object properties: a: type: number description: Alpha. b: type: integer description: Blue. format: int32 g: type: integer description: Green. format: int32 r: type: integer description: Red. format: int32 RowMetaData: required: - cssClass - styles type: object properties: cssClass: type: string description: The CSS class applied to the row. styles: $ref: '#/components/schemas/Styles' SetNewLanguagePrimaryRequestVNext: required: - id type: object properties: id: type: string description: ID of object to set as primary in multi-language group. SideOrCorner: required: - horizontalSide - verticalSide type: object properties: horizontalSide: type: string description: Specifies the horizontal side of an element. enum: - CENTER - LEFT - RIGHT verticalSide: type: string description: Specifies the vertical side of an element. enum: - BOTTOM - MIDDLE - TOP Size: required: - units - value type: object properties: units: type: string enum: - CH - CM - EM - EX - IN - LH - MM - PC - PERCENTAGE - PT - PX - Q - REM - VH - VMAX - VMIN - VW value: type: number StandardError: required: - category - context - errors - links - message - status type: object properties: category: type: string description: Error category. context: type: object additionalProperties: type: array items: type: string description: Error context. errors: type: array description: List of error details. items: $ref: '#/components/schemas/ErrorDetail' id: type: string description: Error ID. links: type: object additionalProperties: type: string description: Error links. message: type: string description: Error message. status: type: string description: Error status. subCategory: type: object properties: {} description: Error subcategory. description: Ye olde error Styles: required: - backgroundColor - backgroundGradient - backgroundImage - flexboxPositioning - forceFullWidthSection - maxWidthSectionCentering - verticalAlignment type: object properties: backgroundColor: $ref: '#/components/schemas/RGBAColor' backgroundGradient: $ref: '#/components/schemas/Gradient' backgroundImage: $ref: '#/components/schemas/BackgroundImage' breakpointStyles: type: object additionalProperties: $ref: '#/components/schemas/BreakpointStyles' description: Breakpoint CSS styles for margin, padding, etc... flexboxPositioning: type: string description: Indicates whether flexbox positioning is enabled for the section. enum: - BOTTOM_CENTER - BOTTOM_LEFT - BOTTOM_RIGHT - MIDDLE_CENTER - MIDDLE_LEFT - MIDDLE_RIGHT - TOP_CENTER - TOP_LEFT - TOP_RIGHT forceFullWidthSection: type: boolean description: Determines if the section should be forced to full width. maxWidthSectionCentering: type: integer description: Defines the maximum width for centering the section. format: int32 verticalAlignment: type: string description: Specifies the vertical alignment of elements within the section. enum: - BOTTOM - MIDDLE - TOP UpdateLanguagesRequestVNext: required: - languages - primaryId type: object properties: languages: type: object additionalProperties: type: string enum: - aa - ab - ae - af - af-na - af-za - agq - agq-cm - ak - ak-gh - am - am-et - an - ann - ann-ng - ar - ar-001 - ar-ae - ar-bh - ar-dj - ar-dz - ar-eg - ar-eh - ar-er - ar-il - ar-iq - ar-jo - ar-km - ar-kw - ar-lb - ar-ly - ar-ma - ar-mr - ar-om - ar-ps - ar-qa - ar-sa - ar-sd - ar-so - ar-ss - ar-sy - ar-td - ar-tn - ar-ye - as - asa - asa-tz - ast - ast-es - as-in - av - ay - az - az-az - ba - bal - bal-pk - bas - bas-cm - be - bem - bem-zm - bez - bez-tz - be-by - bg - bgc - bgc-in - bg-bg - bi - bho - bho-in - blo - blo-bj - bm - bm-ml - bn - bn-bd - bn-in - bo - bo-cn - bo-in - br - brx - brx-in - br-fr - bs - bs-ba - ca - ca-ad - ca-es - ca-fr - ca-it - ccp - ccp-bd - ccp-in - ce - ceb - ceb-ph - ce-ru - ch - cgg - cgg-ug - chr - chr-us - ckb - ckb-iq - ckb-ir - co - cr - cs - cs-cz - csw - csw-ca - cu - cu-ru - cv - cv-ru - cy - cy-gb - da - dav - dav-ke - da-dk - da-gl - de - de-at - de-be - de-ch - de-de - de-gr - de-it - de-li - de-lu - dje - dje-ne - doi - doi-in - dsb - dsb-de - dua - dua-cm - dyo - dyo-sn - dv - dz - dz-bt - ebu - ebu-ke - ee - ee-gh - ee-tg - el - el-cy - el-gr - en - en-001 - en-150 - en-ae - en-ag - en-ai - en-as - en-at - en-au - en-bb - en-be - en-bi - en-bm - en-bs - en-bw - en-bz - en-ca - en-cc - en-ch - en-ck - en-cm - en-cn - en-cx - en-cy - en-cz - en-de - en-dg - en-dk - en-dm - en-ee - en-eg - en-er - en-es - en-fi - en-fj - en-fk - en-fm - en-fr - en-gb - en-gd - en-gg - en-gh - en-gi - en-gm - en-gs - en-gu - en-gy - en-hk - en-hu - en-id - en-ie - en-il - en-im - en-in - en-io - en-it - en-je - en-jm - en-ke - en-ki - en-kn - en-ky - en-lc - en-lr - en-ls - en-lu - en-mg - en-mh - en-mo - en-mp - en-ms - en-mt - en-mu - en-mv - en-mw - en-mx - en-my - en-na - en-nf - en-ng - en-nl - en-no - en-nr - en-nu - en-nz - en-pg - en-ph - en-pk - en-pl - en-pn - en-pr - en-pt - en-pw - en-ro - en-rw - en-sb - en-sc - en-sd - en-se - en-sg - en-sh - en-si - en-sk - en-sl - en-ss - en-sx - en-sz - en-tc - en-th - en-tk - en-tn - en-to - en-tt - en-tv - en-tz - en-ug - en-um - en-us - en-vc - en-vg - en-vi - en-vn - en-vu - en-ws - en-za - en-zm - en-zw - eo - eo-001 - es - es-419 - es-ar - es-bo - es-br - es-bz - es-cl - es-co - es-cr - es-cu - es-do - es-ea - es-ec - es-es - es-gq - es-gt - es-hn - es-ic - es-mx - es-ni - es-pa - es-pe - es-ph - es-pr - es-py - es-sv - es-us - es-uy - es-ve - et - et-ee - eu - eu-es - ewo - ewo-cm - fa - fa-af - fa-ir - ff - ff-bf - ff-cm - ff-gh - ff-gm - ff-gn - ff-gw - ff-lr - ff-mr - ff-ne - ff-ng - ff-sl - ff-sn - fi - fil - fil-ph - fi-fi - fj - fo - fo-dk - fo-fo - fr - frr - frr-de - fr-be - fr-bf - fr-bi - fr-bj - fr-bl - fr-ca - fr-cd - fr-cf - fr-cg - fr-ch - fr-ci - fr-cm - fr-dj - fr-dz - fr-fr - fr-ga - fr-gf - fr-gn - fr-gp - fr-gq - fr-ht - fr-km - fr-lu - fr-ma - fr-mc - fr-mf - fr-mg - fr-ml - fr-mq - fr-mr - fr-mu - fr-nc - fr-ne - fr-pf - fr-pm - fr-re - fr-rw - fr-sc - fr-sn - fr-sy - fr-td - fr-tg - fr-tn - fr-vu - fr-wf - fr-yt - fur - fur-it - fy - fy-nl - ga - ga-gb - ga-ie - gaa - gaa-gh - gd - gd-gb - gl - gl-es - gn - gsw - gsw-ch - gsw-fr - gsw-li - gu - guz - guz-ke - gu-in - gv - gv-im - ha - haw - haw-us - ha-gh - ha-ne - ha-ng - he - he-il - hi - hi-in - hmn - ho - hr - hr-ba - hr-hr - ht - ht-ht - hsb - hsb-de - hu - hu-hu - hy - hy-am - hz - ia - ia-001 - id - ie - ie-ee - ig - ig-ng - ii - ii-cn - ik - io - id-id - is - is-is - it - it-ch - it-it - it-sm - it-va - iu - ja - ja-jp - jgo - jgo-cm - yi - yi-001 - jmc - jmc-tz - jv - jv-id - ka - kab - kab-dz - kam - kam-ke - kar - ka-ge - kde - kde-tz - kea - kea-cv - kgp - kgp-br - kg - kh - khq - khq-ml - ki - ki-ke - kj - kk - kkj - kkj-cm - kk-kz - kl - kln - kln-ke - kl-gl - km - km-kh - kn - kn-in - ko - ko-cn - kok - kok-in - ko-kp - ko-kr - kr - ks - ksb - ksb-tz - ksf - ksf-cm - ksh - ksh-de - ks-in - ku - ku-tr - kv - kw - kw-gb - kxv - kxv-in - ky - ky-kg - lag - lag-tz - la - lb - lb-lu - lg - lg-ug - lkt - lkt-us - li - lij - lij-it - lmo - lmo-it - ln - ln-ao - ln-cd - ln-cf - ln-cg - lo - lo-la - lrc - lrc-iq - lrc-ir - lt - lt-lt - lu - luo - luo-ke - luy - luy-ke - lu-cd - lv - lv-lv - mai - mai-in - mas - mas-ke - mas-tz - mdf - mdf-ru - mer - mer-ke - mfe - mfe-mu - mg - mgh - mgh-mz - mgo - mgo-cm - mg-mg - mh - mi - mi-nz - mk - mk-mk - ml - ml-in - mn - mni - mni-in - mn-mn - mr - mr-in - ms - ms-bn - ms-id - ms-my - ms-sg - mt - mt-mt - mua - mua-cm - my - my-mm - mzn - mzn-ir - naq - naq-na - na - nb - nb-no - nb-sj - nd - nds - nds-de - nds-nl - nd-zw - ne - ne-in - ne-np - ng - nl - nl-aw - nl-be - nl-bq - nl-ch - nl-cw - nl-lu - nl-nl - nl-sr - nl-sx - nmg - nmg-cm - nn - nnh - nnh-cm - nn-no - nqo - nqo-gn - nr - nso - nso-za - nv - ny - 'no' - no-no - nus - nus-ss - nyn - nyn-ug - oc - oc-es - oc-fr - oj - om - om-et - om-ke - or - or-in - os - os-ge - os-ru - pa - pa-in - pa-pk - pcm - pcm-ng - pis - pis-sb - pi - pl - pl-pl - prg - prg-001 - ps - ps-af - ps-pk - pt - pt-ao - pt-br - pt-ch - pt-cv - pt-gq - pt-gw - pt-lu - pt-mo - pt-mz - pt-pt - pt-st - pt-tl - qu - qu-bo - qu-ec - qu-pe - raj - raj-in - rm - rm-ch - rn - rn-bi - ro - rof - rof-tz - ro-md - ro-ro - ru - ru-by - ru-kg - ru-kz - ru-md - ru-ru - ru-ua - rw - rwk - rwk-tz - rw-rw - sa - sah - sah-ru - saq - saq-ke - sat - sat-in - sa-in - sbp - sbp-tz - sc - sc-it - sd - sd-in - sd-pk - se - seh - seh-mz - ses - ses-ml - se-fi - se-no - se-se - sg - sg-cf - shi - shi-ma - si - si-lk - sk - sk-sk - sl - sl-si - sm - smn - smn-fi - sms - sms-fi - sn - sn-zw - so - so-dj - so-et - so-ke - so-so - sq - sq-al - sq-mk - sq-xk - sr - sr-ba - sr-cs - sr-me - sr-rs - sr-xk - ss - st - st-ls - st-za - su - su-id - sv - sv-ax - sv-fi - sv-se - sw - sw-cd - sw-ke - sw-tz - sw-ug - sy - syr - syr-iq - syr-sy - szl - szl-pl - ta - ta-in - ta-lk - ta-my - ta-sg - te - teo - teo-ke - teo-ug - te-in - tg - tg-tj - th - th-th - ti - ti-er - ti-et - tk - tk-tm - tl - tn - tn-bw - tn-za - to - tok - tok-001 - to-to - ts - tr - tr-cy - tr-tr - tt - tt-ru - tw - ty - twq - twq-ne - tzm - tzm-ma - ug - ug-cn - uk - uk-ua - ur - ur-in - ur-pk - uz - uz-af - uz-uz - vai - vai-lr - ve - vec - vec-it - vi - vi-vn - vmw - vmw-mz - vo - vo-001 - vun - vun-tz - wa - wae - wae-ch - wo - wo-sn - xh - xh-za - xnr - xnr-in - xog - xog-ug - yav - yav-cm - yi-ua - yo - yo-bj - yo-ng - yrl - yrl-br - yrl-co - yrl-ve - yue - yue-cn - yue-hk - yue-mo - zgh - zgh-ma - za - za-cn - zh - zh-cn - zh-hans - zh-hant - zh-hk - zh-mo - zh-my - zh-sg - zh-tw - zu - zu-za description: Map of object IDs to associated languages of object in the multi-language group. primaryId: type: string description: ID of the primary object in the multi-language group. VersionBlogPost: required: - id - object - updatedAt - user type: object properties: id: type: string description: The id of the version. object: $ref: '#/components/schemas/BlogPost' updatedAt: type: string description: The timestamp (ISO8601 format) when this version of the Blog Post was updated. format: date-time user: $ref: '#/components/schemas/VersionUser' VersionUser: required: - email - fullName - id type: object properties: email: type: string description: The email address of the user. fullName: type: string description: The first and last name of the User. id: type: string description: The unique ID of the User. responses: Error: description: An error occurred. content: '*/*': schema: $ref: '#/components/schemas/Error' securitySchemes: developer_hapikey: type: apiKey name: hapikey in: query oauth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://app.hubspot.com/oauth/authorize tokenUrl: https://api.hubapi.com/oauth/v1/token scopes: content: '' private_apps: type: apiKey name: private-app in: header private_apps_legacy: type: apiKey name: private-app-legacy in: header x-hubspot-available-client-libraries: - Node - Python - Ruby - PHP x-hubspot-product-tier-requirements: marketing: PROFESSIONAL sales: FREE service: FREE cms: STARTER commerce: FREE crmHub: FREE dataHub: FREE