# Split

Split feature flags: splits, environments, segments, change requests. Exposes **27 actions** covering the API surface an agent needs - read and write.

## What it can do

| Method | What it does |
| --- | --- |
| `split_workspaces_list` | List workspaces - GET /workspaces. |
| `split_workspace_get` | Get one workspace by ID - GET /workspaces/&#123;workspace_id&#125;. |
| `split_environments_list` | List environments in a workspace - GET /workspaces/&#123;workspace_id&#125;/environments. |
| `split_environment_get` | Get one environment - GET /workspaces/&#123;workspace_id&#125;/environments/&#123;environment_id&#125;. |
| `split_environment_create` | Create an environment - POST /workspaces/&#123;workspace_id&#125;/environments. |
| `split_splits_list` | List feature flags (splits) in an environment - GET /workspaces/&#123;workspace_id&#125;/environments/&#123;environment_id&#125;/splits. |
| `split_split_get` | Get one feature flag definition - GET /workspaces/&#123;workspace_id&#125;/environments/&#123;environment_id&#125;/splits/&#123;split_name&#125;. |
| `split_split_create` | Create a new feature flag - POST /workspaces/&#123;workspace_id&#125;/environments/&#123;environment_id&#125;/splits. |
| `split_split_update_definition` | Update feature flag definition - PUT /workspaces/&#123;workspace_id&#125;/environments/&#123;environment_id&#125;/splits/&#123;split_name&#125;. |
| `split_split_kill` | Kill a feature flag - POST /workspaces/&#123;workspace_id&#125;/environments/&#123;environment_id&#125;/splits/&#123;split_name&#125;/kill. |
| `split_split_restore` | Restore a killed feature flag - POST /workspaces/&#123;workspace_id&#125;/environments/&#123;environment_id&#125;/splits/&#123;split_name&#125;/restore. |
| `split_segments_list` | List segments (audience groups) - GET /workspaces/&#123;workspace_id&#125;/environments/&#123;environment_id&#125;/segments. |
| `split_segment_get` | Get one segment - GET /workspaces/&#123;workspace_id&#125;/environments/&#123;environment_id&#125;/segments/&#123;segment_name&#125;. |
| `split_segment_create` | Create a segment - POST /workspaces/&#123;workspace_id&#125;/environments/&#123;environment_id&#125;/segments. |
| `split_segment_update_keys` | Add or remove keys from a segment - PATCH /workspaces/&#123;workspace_id&#125;/environments/&#123;environment_id&#125;/segments/&#123;segment_name&#125;. |
| `split_traffic_types_list` | List traffic types (dimensions for feature flag targeting) - GET /workspaces/&#123;workspace_id&#125;/traffic-types. |
| `split_traffic_type_get` | Get one traffic type - GET /workspaces/&#123;workspace_id&#125;/traffic-types/&#123;traffic_type_name&#125;. |
| `split_tags_list` | List tags in a workspace - GET /workspaces/&#123;workspace_id&#125;/tags. |
| `split_tag_get` | Get one tag - GET /workspaces/&#123;workspace_id&#125;/tags/&#123;tag_name&#125;. |
| `split_change_requests_list` | List change requests (pending/approved modifications) - GET /workspaces/&#123;workspace_id&#125;/environments/&#123;environment_id&#125;/change-requests. |
| `split_change_request_get` | Get one change request - GET /workspaces/&#123;workspace_id&#125;/environments/&#123;environment_id&#125;/change-requests/&#123;change_request_id&#125;. |
| `split_change_request_approve` | Approve a change request - POST /workspaces/&#123;workspace_id&#125;/environments/&#123;environment_id&#125;/change-requests/&#123;change_request_id&#125;/approve. |
| `split_change_request_reject` | Reject a change request - POST /workspaces/&#123;workspace_id&#125;/environments/&#123;environment_id&#125;/change-requests/&#123;change_request_id&#125;/reject. |
| `split_users_list` | List users in workspace - GET /workspaces/&#123;workspace_id&#125;/users. |
| `split_user_get` | Get one user - GET /workspaces/&#123;workspace_id&#125;/users/&#123;user_id&#125;. |
| `split_groups_list` | List groups (team groups/roles) in workspace - GET /workspaces/&#123;workspace_id&#125;/groups. |
| `split_group_get` | Get one group - GET /workspaces/&#123;workspace_id&#125;/groups/&#123;group_id&#125;. |

## How to get credentials

This connector uses an **API key / token**. Create one in the provider
dashboard, then paste it into FlyMyAI:

- **`SPLIT_ADMIN_API_KEY`** - Split - Admin settings - API keys - Admin (read-write). (https://app.split.io/)

## Fields to fill in FlyMyAI

| FlyMyAI field | Where it comes from |
| --- | --- |
| `SPLIT_ADMIN_API_KEY` | Split - Admin settings - API keys - Admin (read-write). |

## Troubleshooting

- **`401 Unauthorized` / `403 Forbidden`** - the token is wrong, expired, or missing a required scope; regenerate it.
- **`429 Too Many Requests`** - provider rate limit; retry after a short backoff.
- **Unexpected `4xx` on writes** - double-check required fields; the agent confirms before write actions.

## Links

- [Split API documentation](https://docs.split.io/reference)
