Create or update a knowledge base collection

This endpoint performs an upsert operation: it creates a new collection or updates an existing one
based on the collection_id you provide.

Collection Identification

If collection_id is provided:

  • The collection with that ID will be updated
  • If the collection doesn't exist, a 404 error will be returned

If collection_id is not provided:

  • A new collection will be created
  • The slug must be unique within the specified locale

Automatic Synchronization (when updating)

When updating an existing collection and changing its parent_collection_id, the system
automatically updates any linked collections in other locales to maintain consistency
across your multi-locale knowledge base. This ensures your hierarchical structure remains
consistent across all languages.

Required Fields

  • title: Collection title (required)
  • icon: Icon identifier (required)
  • slug: URL-friendly identifier, must be unique within the locale (required)
  • locale: Language code (e.g., 'en', 'it') (required)

Optional Fields

  • collection_id: ID for updating an existing collection (optional)
  • description: Collection description (optional)
  • parent_collection_id: Parent collection for nested structure, max 2 levels deep (optional)

Collections can be organized hierarchically by providing a parent_collection_id (maximum 2 levels deep).
The parent collection must exist in the same locale as the collection.

The slug must be unique within the same locale. The sort order is assigned
automatically based on existing collections at the same hierarchical level.

Content Visibility

Use contact_segment_ids and company_segment_ids to restrict access to this collection in two contexts:

  • Aura (AI assistant): only contacts/companies in those segments can interact with the collection's content.
  • Help Center: if the help center is published, only contacts/companies in those segments will see
    this collection and its articles in the public help center.

Visibility rules set on a collection are automatically inherited by all articles inside it that do
not have their own explicit visibility rules.

  • Omit the field (or pass null) to leave existing visibilities unchanged.
  • Pass an empty array [] to remove all visibility restrictions for that segment type.
  • Pass a non-empty array to replace the current visibilities with exactly those segment IDs.

Requires the content_visibility feature on your plan.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params
integer

Collection ID for update (optional). If not provided, a new collection will be created

string
required
string
string
required
string
required
string
required
integer

Optional parent collection ID for nested collections (max 2 levels). Changing this automatically updates linked collections in other locales

contact_segment_ids
array of integers | null

Restrict visibility to contacts belonging to these segment IDs. Pass an empty array to remove all restrictions.

contact_segment_ids
company_segment_ids
array of integers | null

Restrict visibility to companies belonging to these segment IDs. Pass an empty array to remove all restrictions.

company_segment_ids
Responses

401

Authentication required

403

Permission denied or multi-locale feature not available

404

Collection not found (when collection_id is provided) or parent collection not found

409

Slug already exists in this locale

422

Validation error - parent locale mismatch, hierarchy too deep, or linked collections missing in other locales

Language
Credentials
Bearer
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json