# Exist

Exist is a personal analytics app that combines data from various services to help users understand and improve their lives.

- **Category:** analytics
- **Auth:** OAUTH2
- **Composio Managed App Available?** Yes
- **Tools:** 12
- **Triggers:** 0
- **Slug:** `EXIST`
- **Version:** 20260316_00

## Tools

### Acquire Attribute Ownership

**Slug:** `EXIST_ACQUIRE_ATTRIBUTE_OWNERSHIP`

Tool to acquire ownership of attributes for the authenticated user. Allows your service to write data to these attributes. Use when you need to create or take ownership of attributes before writing data. Acquiring a templated attribute the user doesn't have yet will create this attribute and give you ownership.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `attributes` | array | Yes | List of attributes to acquire ownership of (maximum 35) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Attributes With Values

**Slug:** `EXIST_GET_ATTRIBUTES_WITH_VALUES`

Tool to retrieve attributes with their current values for the authenticated user. Use when you need both attribute metadata and their historical values. Results are limited to your read scopes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination (1-based indexing) |
| `limit` | integer | No | Page size for pagination (number of attributes per page) |
| `groups` | string | No | Filter to only attributes in these groups, as comma-separated list of group names (e.g., 'activity,workouts') |
| `date_max` | string | No | Maximum date for values in ISO format YYYY-MM-DD (e.g., '2024-12-31') |
| `date_min` | string | No | Minimum date for values in ISO format YYYY-MM-DD (e.g., '2024-01-01') |
| `attributes` | string | No | Filter to only these attributes, as comma-separated list of attribute names (e.g., 'steps,sleep') |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Attribute Templates

**Slug:** `EXIST_GET_ATTRIBUTE_TEMPLATES`

Tool to retrieve a paged list of supported attribute templates. Use when you need to browse available templates before creating or updating data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page index, starting at 1 |
| `limit` | integer | No | Number of results per page |
| `groups` | array | No | Filter by groups, e.g., ['activity','workouts'] |
| `include_low_priority` | boolean | No | Include templates with priority >= 10 |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Averages

**Slug:** `EXIST_GET_AVERAGES`

Tool to retrieve the most recent average values for each tracked attribute, with one set per week. Returns overall weekly averages plus daily breakdowns (Monday-Sunday). Use include_historical flag to retrieve historical average records.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page index, 1-based. Defaults to 1. |
| `limit` | integer | No | Number of results per page. |
| `groups` | array | No | Filter by attribute groups. Provide a list, e.g. ['activity','workouts']. |
| `date_max` | string | No | Maximum (most recent) date inclusive, in yyyy-mm-dd format. |
| `date_min` | string | No | Minimum (oldest) date inclusive, in yyyy-mm-dd format. |
| `attributes` | array | No | Filter by specific attributes. Provide a list, e.g. ['steps','floors']. |
| `include_historical` | boolean | No | Set true to retrieve historical average records. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Correlations

**Slug:** `EXIST_GET_CORRELATIONS`

Retrieve a paginated list of correlations discovered between tracked attributes in the last week. Correlations reveal statistical relationships between different metrics (e.g., sleep duration vs mood). Filter by relationship strength, confidence level (statistical significance), or specific attributes. Returns correlation coefficients, p-values, and human-readable descriptions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page index (default 1) |
| `limit` | integer | No | Number of items per page (max 100) |
| `strong` | boolean | No | Filter to return only correlations above a certain relationship strength threshold (stronger correlations indicate closer relationships between attributes) |
| `attribute` | string | No | Filter correlations to this attribute name |
| `confident` | boolean | No | Filter to return only correlations with five-star confidence (highest statistical significance, certain to be related) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Insights

**Slug:** `EXIST_GET_INSIGHTS`

Tool to retrieve automatically-generated insights about patterns in tracked data for the authenticated user. Insights are observations about correlations, trends, and anomalies (e.g., "You walked more on days you slept well"). Use when analyzing user behavior patterns or displaying personalized feedback.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page index, 1-based. Defaults to 1. |
| `limit` | integer | No | Number of insights to return per page (max 100) |
| `date_max` | string | No | Most recent date (inclusive) of results to be returned, in format YYYY-MM-DD |
| `date_min` | string | No | Oldest date (inclusive) of results to be returned, in format YYYY-MM-DD |
| `priority` | integer | No | Filter by insight priority, where 1 = today and 4 = last month |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Owned Attributes

**Slug:** `EXIST_GET_OWNED_ATTRIBUTES`

Tool to retrieve attributes owned by your service for the authenticated user. Use when you need to limit data updates to only the attributes your service controls.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page index, 1-based. Defaults to 1. |
| `limit` | integer | No | Number of results per page. |
| `groups` | array | No | Filter by attribute groups. Provide a list, e.g. ['activity','workouts']. |
| `manual` | boolean | No | If true, only manual attributes; if false, excludes them. |
| `attributes` | array | No | Filter by attribute names. Provide a list, e.g. ['sleep_efficiency','steps']. |
| `exclude_custom` | boolean | No | If true, only templated attributes are returned. |
| `include_inactive` | boolean | No | If true, includes inactive attributes (active=false). |
| `include_low_priority` | boolean | No | If true, includes attributes with priority >= 10. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get User Attributes

**Slug:** `EXIST_GET_USER_ATTRIBUTES`

Tool to retrieve a paged list of the user's attributes without values. Use when you need metadata on available attributes for filtering or selection. Omitting `groups` and `attributes` filters returns the full attribute catalog; use those filters to narrow results and avoid oversized responses.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page index, 1-based. Defaults to 1. |
| `limit` | integer | No | Number of results per page. |
| `owned` | boolean | No | If true, only attributes owned by this client are returned. |
| `groups` | array | No | Filter by attribute groups. Provide a list, e.g. ['activity','workouts']. |
| `manual` | boolean | No | If true, only manual attributes; if false, excludes them. |
| `attributes` | array | No | Filter by attribute names. Provide a list, e.g. ['sleep_efficiency','steps']. |
| `exclude_custom` | boolean | No | If true, only templated attributes are returned. |
| `include_inactive` | boolean | No | If true, includes inactive attributes (active=false). |
| `include_low_priority` | boolean | No | If true, includes attributes with priority >= 10. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get User Profile

**Slug:** `EXIST_GET_USER_PROFILE`

Tool to retrieve the authenticated user's profile details and preferences. Use after authentication to inspect account settings and status. OAuth scopes granted during authentication determine which fields are returned; missing fields indicate insufficient scopes. Response includes a timezone field; use it when interpreting any date-based attributes.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Increment Attribute Values

**Slug:** `EXIST_INCREMENT_ATTRIBUTE_VALUES`

Tool to increment attribute values by a delta amount rather than setting totals. Use for counters and cumulative data. Does not work with string, scale, or time of day attributes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `attributes` | array | Yes | List of attributes to increment with name, date, and delta value. Does not work with string, scale, or time of day attributes. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Exist OAuth2 Authorize

**Slug:** `EXIST_OAUTH2_AUTHORIZE`

Constructs an OAuth2 authorization URL for Exist.io. This tool generates the URL that users must visit in their browser to grant permissions to your application. After user consent, Exist redirects back to your redirect_uri with an authorization code that can be exchanged for an access token. This action does not make an API call - it only builds the authorization URL.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `scope` | string | Yes | Space-separated list of permission scopes to request. Available scopes follow the pattern [category]_read or [category]_write. Categories include: activity, productivity, mood, sleep, workouts, events, finance, food, health, location, media, social, weather, custom, and manual. Example: 'activity_read mood_write custom_read' |
| `state` | string | No | Optional opaque value used to maintain state between the authorization request and callback. Recommended for CSRF protection - generate a random token, store it in your session, and verify it matches when the user returns to your redirect_uri |
| `client_id` | string | Yes | The client application's ID, as assigned by Exist |
| `redirect_uri` | string | Yes | HTTPS URI where the user will be redirected after authorization. Must match the redirect URI registered with your Exist OAuth2 client application. The authorization code will be appended as a query parameter to this URI |
| `response_type` | string | No | OAuth2 response type. Must be 'code' for authorization code flow. This parameter defaults to 'code' and typically does not need to be changed |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Release Attribute Ownership

**Slug:** `EXIST_RELEASE_ATTRIBUTE_OWNERSHIP`

Tool to release ownership of attributes for the authenticated user. Use when your service will stop providing data for an attribute or becomes inactive.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `attributes` | array | Yes | List of attributes to release ownership of. Maximum 35 attributes per request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
