Skip to main content
POST
/
api
/
v1
/
agents
/
{uuid}
/
procedures
Add a single procedure (with optional steps)
curl --request POST \
  --url https://{subdomain}.mihu.ai/api/v1/agents/{uuid}/procedures \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "Book service appointment",
  "description": "Used when the customer wants to schedule a service appointment for their vehicle.",
  "steps": [
    {
      "order": 1,
      "description": "Ask the customer for their vehicle license plate or VIN.",
      "intent_uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
    }
  ]
}
'
{
  "data": {
    "agent_uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "name": "<string>",
    "description": "<string>",
    "company_name": "<string>",
    "role": "<string>",
    "objective": "<string>",
    "tone": "<string>",
    "behavior_guidelines": "<string>",
    "company_service": "<string>",
    "topic": "<string>",
    "length_detail": "<string>",
    "interest_of_product": "<string>",
    "negative_response": "<string>",
    "custom_prompt": "<string>",
    "language": "<string>",
    "speed": "<string>",
    "timezone": "<string>",
    "appointment_scheduling_enabled": true,
    "appointment_scheduling_randomly": true,
    "custom_llm_url": "<string>",
    "recommendations": "<string>",
    "settings": {
      "voice": {},
      "text": {},
      "memorize": {},
      "evaluation": {}
    },
    "guidelines": [
      {
        "uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "content": "Always confirm vehicle VIN or license plate before creating a service appointment.",
        "order": 0
      }
    ],
    "notes": [
      {
        "uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "content": "Service appointments take 60-90 minutes for standard maintenance, 2-4 hours for warranty work. Same-day pickup is available before 4 PM.",
        "order": 0
      }
    ],
    "procedures": [
      {
        "uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "name": "Book service appointment",
        "description": "Used when the customer wants to schedule a service appointment for their vehicle.",
        "steps": [
          {
            "order": 1,
            "description": "Ask the customer for their vehicle license plate or VIN.",
            "intent_uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
          }
        ]
      }
    ],
    "training": [
      {
        "uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "content": "What does Volvo's standard warranty cover?",
        "intent": "warranty_inquiry",
        "response": "Volvo's standard warranty covers 4 years or 100,000 km, whichever comes first, including parts and labor at any authorized service center. Would you like the details for your specific model?"
      }
    ],
    "intents": [
      {
        "intent_uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "key": "<string>",
        "name": "<string>",
        "description": "<string>",
        "recommendation_actions": "<string>",
        "confidence_threshold": 123,
        "is_system": true,
        "intent_llm_handle_by_response": true,
        "webhook": {
          "url": "<string>",
          "auth_token": "<string>"
        },
        "parameters": [
          {
            "key": "email",
            "default": "<string>",
            "type": "string",
            "required": true
          }
        ],
        "created_at": "2023-11-07T05:31:56Z",
        "updated_at": "2023-11-07T05:31:56Z"
      }
    ],
    "webhooks": [
      {
        "webhook_uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "url": "<string>",
        "events": [],
        "is_active": true,
        "has_secret": true,
        "created_at": "2023-11-07T05:31:56Z",
        "updated_at": "2023-11-07T05:31:56Z"
      }
    ],
    "appointments": {},
    "routing_rules": [
      {
        "uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "detection_mode": "intent",
        "trigger_keyword": "sales",
        "department_name": "Sales Department",
        "phrases": [
          "I want to talk to sales"
        ],
        "ai_prompt": "Detect when the customer wants to speak with the sales team — they may ask about pricing, new products, quotes, or directly mention sales.",
        "voice_response": "Sure, I'll transfer you to our sales team now. One moment please.",
        "voice_on_error": "I'm sorry, I couldn't reach sales right now. Please call back later or leave a message.",
        "voice_on_success": "You've been successfully connected. Have a great day.",
        "destination_type": "extension",
        "destination": "101",
        "destination_agent_uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "transfer_type": "transfer_call",
        "transfer_config": {},
        "priority": 1,
        "is_active": true
      }
    ],
    "guard_rules": [
      {
        "uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "name": "Legal complaint escalation",
        "when_condition": "Customer mentions a legal complaint, lawyer, lawsuit, or threatens to take legal action.",
        "example_phrases": [
          "I'm calling my lawyer about this"
        ],
        "then_action": "forward",
        "selected_channels": [],
        "say_before_forwarding": "I understand this is important — let me connect you with someone who can help.",
        "say_before_end": "I'm sorry I couldn't help further. Please contact our team directly. Goodbye.",
        "destination": "<string>",
        "destination_agent_uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "is_active": true,
        "is_default": false
      }
    ],
    "phone_numbers": [
      {
        "phone_number_uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
        "number": "<string>",
        "country_code": "<string>",
        "type": "<string>",
        "capabilities": {
          "call": true,
          "sms": true,
          "whatsapp": true,
          "whatsapp_call": true
        }
      }
    ],
    "channels": [
      {}
    ],
    "created_at": "2023-11-07T05:31:56Z",
    "updated_at": "2023-11-07T05:31:56Z"
  }
}

Documentation Index

Fetch the complete documentation index at: https://developers.mihu.ai/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Use a Bearer token to access these API endpoints. Example: "Bearer {your-token}"

Path Parameters

uuid
string<uuid>
required

Body

application/json

A multi-step workflow the agent can execute (e.g. 'book a service appointment'). The runtime AI walks the steps in order when it detects the relevant intent. Procedures are how you teach the agent to actually DO things instead of just talking.

name
string

Required. Short imperative name describing what this procedure does.

Example:

"Book service appointment"

description
string | null

When the runtime AI should invoke this procedure. Be specific about the trigger.

Example:

"Used when the customer wants to schedule a service appointment for their vehicle."

steps
object[]

Ordered actions the agent performs. Reference an intent_uuid on a step to trigger a tool call instead of plain conversation.

Response

Procedure added

data
object