Logo
Search
API Docs

Assistant Delete & Update (PATCH) API

Core Assistant Configuration

Assistant Delete & Update (PATCH) API

Overview

Beyond creating and reading assistants, the API provides two endpoints for managing an assistant's lifecycle: Delete, which permanently removes an assistant, and Update (PATCH), which partially updates specific fields on an existing assistant without replacing the whole resource.

This page is distinct from Assistant Config Versioning, Rollback & Publishing, which covers a Git-based, CI/CD-driven process for promoting assistant configuration changes across dev/uat/prod environments. This page is the raw API mechanics of the delete and update endpoints themselves — useful on their own even if you aren't using that Git-based workflow.


Delete Assistant

DELETE https://api.sulus.ai/assistant/{id}

Permanently removes the assistant identified by its ID. Returns the deleted assistant object on success.

ParameterLocationRequiredDescription
idpathYesThe unique identifier of the assistant to delete.
AuthorizationheaderYesBearer token: Bearer <your-api-key>
curl -X DELETE https://api.sulus.ai/assistant/{id} \
  -H "Authorization: Bearer <your-api-key>"

This is irreversible — once deleted, the assistant and its ID can no longer be used on any phone number, squad, or call request.


Update Assistant (PATCH)

PATCH https://api.sulus.ai/assistant/{id}

Updates only the fields you include in the request body, leaving the rest of the assistant's configuration untouched. Returns the updated assistant object on success.

ParameterLocationRequiredDescription
idpathYesThe unique identifier of the assistant to update.
AuthorizationheaderYesBearer token: Bearer <your-api-key>
curl -X PATCH https://api.sulus.ai/assistant/{id} \
  -H "Authorization: Bearer <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{ "name": "Updated Assistant Name" }'

Example: Attaching a Custom LLM via PATCH

To point an existing assistant at a custom LLM endpoint, PATCH its model configuration:

curl -X PATCH https://api.sulus.ai/assistant/{id} \
  -H "Authorization: Bearer <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": {
      "provider": "custom-llm",
      "url": "https://your-llm-endpoint.com/chat/completions",
      "model": "your-model-name"
    }
  }'

Only the model field is replaced; every other part of the assistant's configuration (voice, transcriber, tools, hooks, and so on) is left as-is.


Example: Adding Tool IDs via PATCH

To attach additional tools to an assistant without redefining its entire model block, PATCH model.toolIds:

curl -X PATCH https://api.sulus.ai/assistant/{id} \
  -H "Authorization: Bearer <your-api-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "model": {
      "toolIds": ["tool-id-1", "tool-id-2"]
    }
  }'

Note that a PATCH to model.toolIds replaces the full list of tool IDs on that field — include every tool ID you want the assistant to retain, not just the new ones you're adding.