Feature settings

Switch end-user features on and off at six levels, with inheritance and locks.

End-user features such as web_search, file_uploads, memory or code_execution are resolved through six levels:

platform → workspace → project → audience_tenant → user → conversation

A lower level can only narrow what the level above allows, and an admin can lock a feature so no level below can change it. Settings are enforced on the server, not only hidden in the interface.

{
  "level": "project",
  "scope_id": "0b1c2d3e-4f50-4a61-8b72-930000000002",
  "features": {
    "web_search": { "allowed": true, "default": false },
    "code_execution": { "allowed": false, "default": false, "locked": true }
  }
}

Read and write the workspace, project and audience_tenant levels through the Admin API; scope_id is required.

curl "$SPARQ_API_URL/v1/admin/feature-settings/project?scope_id=$PROJECT_ID" \
  -H "Authorization: Bearer $SPARQ_KEY"

At run time, GET /v1/features returns the resolved value of each feature for the caller, with the reason.

Known features today: spaces, file_uploads, vision, artifacts, web_search, research_mode, code_execution, connectors, memory, extended_thinking, model_choice and official_docs. The set is open: ignore features you do not recognise.