See Stacksync in action with a solution architect. Book a demo ↗
Genies

Genies

Update a Genie

PATCH
/v1/workspaces/{workspace_id}/genies/{genie_id}

Changes a Genie: name, configuration (only the keys sent), knowledge bases, who may use it, active or not.

Authorization

Authorizationstringheaderrequired

Bearer <key>, where <key> is a workspace API key or a user API key. See Authentication.

Path Parameters

workspace_id*integer

The workspace. List the ones your key can reach with GET /v1/workspaces.

genie_id*string

The Genie.

Formatuuid

Query Parameters

region*Regions

Region of the genie: besg (Europe) or usnv (United States)

Value in"besg""usnv"

Request Body

application/json
  1. body
name?|
Defaultnull
genie_config?|
Defaultnull
knowledge_bases?array<>|

Replaces the list

Defaultnull
public_access_rights?|

Who may use the genie

Defaultnull
status?|

active or inactive

Defaultnull
validate_only?Validate Only

Run every check of the write and answer 204 without writing: a refused write answers the error the write would

Defaultfalse

Response Body

OK

application/json
  1. response

A genie, as a create or an update takes it back

genie_id*Genie Id
name*Name
region*Regions
Value in"besg""usnv"
folder_id?|
Defaultnull
status?|
Defaultnull
public_access_rights?|
Defaultnull
is_shared_with_workspace?|
Defaultnull
has_api_key*Has Api Key

Whether an LLM API key of yours is stored (the key itself is never returned)

genie_config*

What the genie does and how: its instructions, channels, skills, resources and tools

knowledge_bases*array<>
created_time?|
Defaultnull
last_modified_time?|
Defaultnull
Update a Genie
curl -X PATCH 'https://api.stacksync.com/v1/workspaces/0/genies/497f6eca-6276-4993-bfeb-53cbbbba6f08?region=besg' \  -H 'Content-Type: application/json' \  -d '{  "name": "Support Genie"}'
{  "genie_id": "<genie_id>",  "name": "<name>",  "region": "besg",  "folder_id": "<folder_id>",  "status": "<status>",  "public_access_rights": "<public_access_rights>",  "is_shared_with_workspace": false,  "has_api_key": false,  "genie_config": {    "master_prompt": "",    "description": "",    "model": "",    "interfaces": [      {        "id": "<id>",        "type": "<type>",        "details": "<details>",        "connection_id": "",        "connection_resource_id": ""      }    ],    "skills": [      {        "id": "<id>",        "name": "<name>",        "description": "",        "type": "Module",        "enabled": true,        "connection": "<connection>",        "connection_resource_id": "<connection_resource_id>",        "approval_policy": "always_allow"      }    ],    "app_descriptions": {},    "resources": [      {        "name": "<name>",        "type": "connection",        "value": "<value>",        "instructions": ""      }    ],    "teams": [      {        "id": "<id>",        "name": "<name>"      }    ],    "contacts": [      {        "id": "<id>",        "name": "<name>",        "email": "<email>"      }    ],    "tools": {      "web_search": true,      "execute_browser": true,      "api_call": true,      "code_execution": true,      "stacksync_ocr": true,      "modify_scheduled_task": true    }  },  "knowledge_bases": [    {      "knowledge_base_id": "3f6c1d2e-8a4b-4c7d-9e21-5b6f7a8c9d01",      "instructions": ""    }  ],  "created_time": "2027-01-15T09:00:00Z",  "last_modified_time": "2027-01-15T09:00:00Z"}