An example of this are your “How do you find this Feature?” Microsurveys. You may want only want to show one per week to limit fatigue. Your Limit Group would haveDocumentation Index
Fetch the complete documentation index at: https://developers.chameleon.io/llms.txt
Use this file to discover all available pages before exploring further.
rate_limit_size=1 and rate_limit_kind=7d then include all of the Microsurveys.
Rate Limit Groups can purposefully overlap and work together to form a cohesive Rate Limiting strategy, to learn more or to run your strategy by the Team, feel free to Contact us.
At certain moments an experience can be exempt from a Rate Limit Group policy. These cases are all considered to be manually delivered:
- Explicitly toggling them off to rate-unlimit it.
- When manually delivered via Short Link
- via JavaScript API
- via Deliveries API
- When shown in a Launcher
With the Chameleon API for Rate Limit Groups, you can:
- Retrieve a list of Rate Limit Groups.
- List all the related data that are connected to this Limit Group; Tours, Microsurveys and/or Tags
Schema
| Property | Type | Description |
|---|---|---|
id | ID | The Chameleon ID |
created_at | timestamp | When this happened or when this was added to the Database |
updated_at | timestamp | The last time any property was updated |
name | string | The name given by an administrator of Chameleon |
description | string | The display description |
kind | string | The type of Rate Limit Group this represents: One of all, tour, survey, tags, or campaigns |
rate_limit_size | number | The total number of Experiences for the period of time specified by rate_limit_kind |
rate_limit_kind | string | The period of time to apply to this Rate Limit Group: One of 1h, 2h, 4h, 1d, 7d, 30d, 91d, 182d or 365d |
tag_ids | array | The Tags associated with this Rate Limit Group (only present when kind=tags) |
campaign_ids | array | The Tours + Microsurveys associated with this Rate Limit Group (only present when kind=campaigns) |
Kinds of Rate Limit Groups (kind property)
A Rate Limit Group creates a dynamic or static group of Experiences over which to apply the rate_limit_size number of Experiences in rate_limit_kind interval of time.
| Kind | - | Description |
|---|---|---|
all | dynamic | All currently published Tours + Microsurveys |
tour | dynamic | All published Tours |
survey | dynamic | All published Microsurveys |
tags | dynamic | All published Tours + Microsurveys with any of the specified Tags in the tag_ids list |
campaigns | static | All published Tours + Microsurveys explicitly in the campaign_ids list |
Listing Limit Groups
Retrieve a list of all Limit Groups. An account typically has 1-5 Limit Groups so this response should be relatively small.HTTP Request
GET
HTTP Response
Showing a Limit Group
Retrieve a single Limit Group.HTTP Request
GET
| param | - | description |
|---|---|---|
id | required | A Limit Group ID to lookup |
HTTP Response
Listing Related Experiences
A Limit Group is attached to many Chameleon Experiences (Tours/Microsurveys). This endpoint allows you to get a complete picture of all Experiences currently attached to the Limit Group.HTTP Request
GET
| param | - | description |
|---|---|---|
id | required | A Limit Group ID to lookup |
filter | optional | Use all or published_at to include or exclude Experiences that are currently not published. Defaults to published_at |
HTTP Response (Example with kind=campaigns)
Note: this example Limit Group is based on kind=campaigns which means the Chameleon administrator explicitly picked these Experiences from a dropdown menu in the application.
Keys returned: limit_group, tours and surveys
HTTP Response (Example kind=tags)
Note: this example Limit Group is based onkind=tags which means the Chameleon administrator explicitly picked a set of Tags from a dropdown menu in the application.
Keys returned: limit_group, tags, tours and surveys

