Skip to main content

/i/date_presets/create

Endpoint

/i/date_presets/create

Overview

Create a date preset with ownership, sharing metadata, favorite list, and display order.

Authentication

  • API Key (parameter): api_key=YOUR_API_KEY
  • Auth Token (parameter): auth_token=YOUR_AUTH_TOKEN
  • Auth Token (header): countly-token: YOUR_AUTH_TOKEN

Permissions

  • App write permission is required for the provided app_id.

Request Parameters

ParameterTypeRequiredDescription
api_keyStringYes (or use auth_token)Dashboard API authentication key.
auth_tokenStringYes (or use api_key)Dashboard auth token.
app_idStringYesApp ID used by write-access validation.
nameStringYesPreset name.
rangeJSON String (Array or Object)YesDate-range definition. Must be JSON-parseable. If parsed value is an array, it must contain exactly 2 elements.
share_withStringYesSharing mode.
shared_email_editJSON String (Array)NoShared edit email list.
shared_email_viewJSON String (Array)NoShared view email list.
shared_user_groups_editJSON String (Array)NoShared edit group list.
shared_user_groups_viewJSON String (Array)NoShared view group list.
exclude_current_dayJSON String (Boolean)NoCurrent-day exclusion flag (true or false).

Response

Success Response

{
"_id": "6992de8e6fbee4231c404429",
"name": "Last 7 Days vs Today",
"range": ["7days", "today"],
"share_with": "none",
"created_at": 1771232910,
"owner_id": "6991c7de024cb89cdc04efd6",
"fav": [],
"shared_email_edit": [],
"shared_email_view": [],
"shared_user_groups_edit": [],
"shared_user_groups_view": [],
"sort_order": 0
}

Response Fields

FieldTypeDescription
_idStringNew preset ID.
nameStringPreset name.
rangeString, Array, or ObjectStored range definition.
share_withStringSharing mode.
created_atNumberCreation timestamp (seconds).
owner_idStringCreator member ID.
favArrayFavorite member list (initialized empty).
shared_email_editArrayEdit-share email list.
shared_email_viewArrayView-share email list.
shared_user_groups_editArrayEdit-share group list.
shared_user_groups_viewArrayView-share group list.
sort_orderNumberDisplay order index after insertion.

Error Responses

Status Code: 400 Bad Request

{
"result": "Invalid range"
}

Status Code: 400 Bad Request

{
"result": "Invalid shared_email_edit"
}

Status Code: 400 Bad Request

{
"result": "Invalid shared_email_view"
}

Status Code: 400 Bad Request

{
"result": "Invalid shared_user_groups_edit"
}

Status Code: 400 Bad Request

{
"result": "Invalid shared_user_groups_view"
}

Status Code: 400 Bad Request

{
"result": "Invalid exclude_current_day"
}

Status Code: 400 Bad Request

{
"result": "Not enough args"
}

Status Code: 500 Internal Server Error

{
"result": "Error updating sort order of other presets"
}

Status Code: 500 Internal Server Error

{
"result": "Error adding preset"
}

Behavior/Processing

Behavior Modes

ModeTriggerProcessing PathResponse Shape
Selected-user share modeshare_with=selected-usersPreserves provided shared email/group lists.Raw preset object
Non-selected share modeshare_with is not selected-usersClears shared email/group lists before insert.Raw preset object

Impact on Other Data

  • Inserts new preset at top order (sort_order=0) and increments sort_order for existing presets.

Database Collections

CollectionUsed forData touched by this endpoint
countly.membersAuthenticationReads caller member identity for write validation and owner assignment.
countly.date_presetsPreset creation targetInserts new preset and updates sort_order of other presets.

Examples

Example 1: Create private preset

/i/date_presets/create?api_key=YOUR_API_KEY&app_id=6991c75b024cb89cdc04efd2&name=Last 7 Days vs Today&range=["7days","today"]&share_with=none

Example 2: Create selected-users shared preset

/i/date_presets/create?api_key=YOUR_API_KEY&app_id=6991c75b024cb89cdc04efd2&name=Marketing Review&range=["30days","today"]&share_with=selected-users&shared_email_view=["analyst@example.com"]

Limitations

  • range array must contain exactly 2 entries.
  • Additional top-level request fields (except app_id) are copied into stored preset object.
  • Sort-order reindexing after insert is global within countly.date_presets (not app-scoped).

Last Updated

2026-02-17