iblai-api-agent-setting
Read and write an agent's core settings: identity (name, description, category,
profile image), discovery/visibility, and capability flags (anonymous, featured,
LTI, attachments, voice, memory, multi-query RAG, forkable) — all of which save
through the single settings/ endpoint — plus forking (copy) and deletion. Use
when configuring an agent's basic identity and capabilities.
Auth & conventions
- Base URL:
https://api.iblai.app
- Header:
Authorization: Api-Token $IBLAI_API_KEY on every request.
- Path vars:
{org} = $IBLAI_ORG, {username} = $IBLAI_USERNAME,
{mentor} = the agent's unique id (e.g. d17dc729-60fd-4363-81a0-f67d9318b03e).
- Settings writes go through one endpoint —
PUT
…/users/{username}/mentors/{mentor}/settings/ with
multipart/form-data — sending only the changed field(s).
- Not connected yet? Run
/iblai-api-login first to populate IBLAI_ORG,
IBLAI_USERNAME, and IBLAI_API_KEY.
Reads
- GET
https://api.iblai.app/dm/api/ai-mentor/orgs/{org}/users/{username}/mentor/categories/ — category options.
- GET
https://api.iblai.app/dm/api/ai-mentor/orgs/{org}/users/{username}/mentors/{mentor}/settings/ — load all current field values.
- GET
https://api.iblai.app/dm/api/ai-mentor/orgs/{org}/mentors/{mentor}/claw-config/ — detect sandbox wiring (404 = not connected).
Writes
- PUT
…/users/{username}/mentors/{mentor}/settings/ — update settings (multipart/form-data, send only changed keys):{
"mentor_name": "string",
"mentor_description": "string",
"categories": "number[]",
"uploaded_profile_image": "File",
"mentor_visibility": "string",
"allow_anonymous": "boolean",
"is_featured": "boolean",
"is_lti_accessible": "boolean",
"show_attachment": "boolean",
"show_voice_call": "boolean",
"show_voice_record": "boolean",
"enable_claw": "boolean",
"enable_memory_component": "boolean",
"enable_multi_query_rag": "boolean",
"forkable": "boolean"
}
- POST
…/users/{username}/mentors/{mentor}/fork/ — copy / duplicate agent:{
"new_mentor_name": "string (required)",
"destination_platform_key": "string (required)",
"clone_documents": "boolean"
}
- DELETE
https://api.iblai.app/dm/api/ai-mentor/orgs/{org}/users/{username}/{mentor}/ — delete agent (user-scoped path; no body). Destructive — confirm with the user first.
Example
Rename an agent and make it featured (only the two changed fields are sent):
curl -X PUT \
"https://api.iblai.app/dm/api/ai-mentor/orgs/$IBLAI_ORG/users/$IBLAI_USERNAME/mentors/$MENTOR/settings/" \
-H "Authorization: Api-Token $IBLAI_API_KEY" \
-F "mentor_name=Joseph (Prod)" \
-F "is_featured=true"
Notes
- A field left out of the PUT is left unchanged — never resend the whole object.
categories expects numeric category ids from the categories endpoint, not names.
- Deletion and forking are scoped to
{username}; settings reads/writes use the
users/{username}/mentors/{mentor}/ path.
1---2name: iblai-api-agent-setting3description: Read and write an ibl.ai agent's core settings via the platform API — name, description, category, profile image, visibility, and feature flags (anonymous, featured, LTI, attachments, voice, memory, multi-query RAG, forkable). Also fork/duplicate and delete an agent. Use when configuring an agent's basic identity and capabilities.4---56# iblai-api-agent-setting78Read and write an agent's core settings: identity (name, description, category,9profile image), discovery/visibility, and capability flags (anonymous, featured,10LTI, attachments, voice, memory, multi-query RAG, forkable) — all of which save11through the single `settings/` endpoint — plus forking (copy) and deletion. Use12when configuring an agent's basic identity and capabilities.1314## Auth & conventions1516- **Base URL:** `https://api.iblai.app`17- **Header:** `Authorization: Api-Token $IBLAI_API_KEY` on every request.18- **Path vars:** `{org}` = `$IBLAI_ORG`, `{username}` = `$IBLAI_USERNAME`,19 `{mentor}` = the agent's unique id (e.g. `d17dc729-60fd-4363-81a0-f67d9318b03e`).20- **Settings writes** go through one endpoint —21 **PUT** `…/users/{username}/mentors/{mentor}/settings/` with22 `multipart/form-data` — sending **only the changed field(s)**.23- Not connected yet? Run **`/iblai-api-login`** first to populate `IBLAI_ORG`,24 `IBLAI_USERNAME`, and `IBLAI_API_KEY`.2526## Reads2728- **GET** `https://api.iblai.app/dm/api/ai-mentor/orgs/{org}/users/{username}/mentor/categories/` — category options.29- **GET** `https://api.iblai.app/dm/api/ai-mentor/orgs/{org}/users/{username}/mentors/{mentor}/settings/` — load all current field values.30- **GET** `https://api.iblai.app/dm/api/ai-mentor/orgs/{org}/mentors/{mentor}/claw-config/` — detect sandbox wiring (404 = not connected).3132## Writes3334- **PUT** `…/users/{username}/mentors/{mentor}/settings/` — update settings (`multipart/form-data`, send only changed keys):35 ```json36 {37 "mentor_name": "string",38 "mentor_description": "string",39 "categories": "number[]",40 "uploaded_profile_image": "File",41 "mentor_visibility": "string",42 "allow_anonymous": "boolean",43 "is_featured": "boolean",44 "is_lti_accessible": "boolean",45 "show_attachment": "boolean",46 "show_voice_call": "boolean",47 "show_voice_record": "boolean",48 "enable_claw": "boolean",49 "enable_memory_component": "boolean",50 "enable_multi_query_rag": "boolean",51 "forkable": "boolean"52 }53 ```54- **POST** `…/users/{username}/mentors/{mentor}/fork/` — copy / duplicate agent:55 ```json56 {57 "new_mentor_name": "string (required)",58 "destination_platform_key": "string (required)",59 "clone_documents": "boolean"60 }61 ```62- **DELETE** `https://api.iblai.app/dm/api/ai-mentor/orgs/{org}/users/{username}/{mentor}/` — delete agent (user-scoped path; no body). Destructive — confirm with the user first.6364## Example6566Rename an agent and make it featured (only the two changed fields are sent):6768```bash69curl -X PUT \70 "https://api.iblai.app/dm/api/ai-mentor/orgs/$IBLAI_ORG/users/$IBLAI_USERNAME/mentors/$MENTOR/settings/" \71 -H "Authorization: Api-Token $IBLAI_API_KEY" \72 -F "mentor_name=Joseph (Prod)" \73 -F "is_featured=true"74```7576## Notes7778- A field left out of the PUT is left unchanged — never resend the whole object.79- `categories` expects numeric category ids from the categories endpoint, not names.80- Deletion and forking are scoped to `{username}`; settings reads/writes use the81 `users/{username}/mentors/{mentor}/` path.