Topics
POST
Create Topic
POST /v1/topicsCreate a new topic for organizing contact subscriptions.
Use Cases:
- Set up newsletter categories for your content
- Create interest-based subscription options
- Organize email types (transactional, marketing, updates)
- Build preference center options
- Segment communications by content type
Behavior:
- Slug is auto-generated from name if not provided (URL-safe, lowercase)
- Slug must be unique across workspace
- Topics are created in active state by default
- Initial subscriber count is zero
- Name and description can be updated later
- Topic can be made public or private
Required Scope: write:topics
Topic Properties:
- name: Display name (e.g., "Product Updates")
- description: Explains what contacts will receive
- slug: URL-safe identifier (auto-generated if not provided)
- isPublic: Whether topic appears in public preference centers
Best Practices:
- Use descriptive names that contacts will understand
- Write clear descriptions about email frequency and content
- Keep slug short and memorable
- Consider compliance requirements (GDPR, CAN-SPAM)
- Plan topic hierarchy before creating many topics
Bodyrequired
namestringrequiredMin length: 1Max length: 100
descriptionanyvisibility"PUBLIC" | "PRIVATE"defaultOptInbooleanResponse
201Topic created successfully with generated ID, slug (if not provided), and timestamps
objectstringrequiredidstringrequirednamestringrequireddescriptionanyrequiredvisibility"PUBLIC" | "PRIVATE"requireddefaultOptInbooleanrequired