Agent4.io · Schema

AgentPatch

只改传来的字段。 存在的理由是 `PUT` 是整体替换:`AgentIn` 每个字段都有默认值,一个漏掉 `soul` 的 PUT 会把 soul 静默清空。谁都不想要那个语义,所以每个调用方各自实现了一遍 GET→合并→PUT——包括我们 自己的 MCP 工具 `update_agent`,它的 docstring 专门解释过这件事。同一个坑被绕两次,就说明 该修的是坑。 区分「传了 null」和「没传」靠 `model_fields_set`:`greeting=null` 是清空开场白,不传是别动它。 列表字段(tools/skills/knowledge_bases)另备 `*_add` / `*_remove` **增量**语义: `tools=[...]` 是整表替换——调用方(尤其是通过 MCP 操作的智能体)想"加一个工具"时 发整表,就会把没读到的其它项挤掉;线上真出过(加 save_contact 顺手挤掉了 ip_geo/weather,无人察觉)。增删各自幂等:加已有的、删没有的都不报错。 同一字段的替换和增量可同用,先替换、再加、后删。

Artificial IntelligenceAutomationCustomer EngagementSoftware-as-a-ServiceAgent Platform

Properties

Name Type Description
soul object
task object
tools object
tools_add object
tools_remove object
skills object
skills_add object
skills_remove object
knowledge_bases object
knowledge_bases_add object
knowledge_bases_remove object
history_window object
max_output_tokens object
tool_call_max_tokens object
model object
published object
greeting object
auto_greeting object
auto_suggest object
suggest_prompt object
ask_forms object
proactive_cta object
cta_prompt object
no_match_reply object
reasoning object
grounding_required object
injection_guard object
public_sources object
ambiguity_check object
deep_research object
on_demand_context object
guard_escalation object
menu_items object
View JSON Schema on GitHub

JSON Schema

agent4-io-agent-patch-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/agent4-io/json-schema/agent4-io-agent-patch-schema.json",
  "title": "AgentPatch",
  "description": "只改传来的字段。\n\n存在的理由是 `PUT` 是整体替换:`AgentIn` 每个字段都有默认值,一个漏掉 `soul` 的 PUT 会把\nsoul 静默清空。谁都不想要那个语义,所以每个调用方各自实现了一遍 GET→合并→PUT——包括我们\n自己的 MCP 工具 `update_agent`,它的 docstring 专门解释过这件事。同一个坑被绕两次,就说明\n该修的是坑。\n\n区分「传了 null」和「没传」靠 `model_fields_set`:`greeting=null` 是清空开场白,不传是别动它。\n\n列表字段(tools/skills/knowledge_bases)另备 `*_add` / `*_remove` **增量**语义:\n`tools=[...]` 是整表替换——调用方(尤其是通过 MCP 操作的智能体)想\"加一个工具\"时\n发整表,就会把没读到的其它项挤掉;线上真出过(加 save_contact 顺手挤掉了\nip_geo/weather,无人察觉)。增删各自幂等:加已有的、删没有的都不报错。\n同一字段的替换和增量可同用,先替换、再加、后删。",
  "x-generated": "2026-11-01",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/_original/agent4-io-api-openapi.json#/components/schemas/AgentPatch",
  "properties": {
    "soul": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Soul"
    },
    "task": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Task"
    },
    "tools": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Tools"
    },
    "tools_add": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Tools Add"
    },
    "tools_remove": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Tools Remove"
    },
    "skills": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Skills"
    },
    "skills_add": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Skills Add"
    },
    "skills_remove": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Skills Remove"
    },
    "knowledge_bases": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Knowledge Bases"
    },
    "knowledge_bases_add": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Knowledge Bases Add"
    },
    "knowledge_bases_remove": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Knowledge Bases Remove"
    },
    "history_window": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "title": "History Window"
    },
    "max_output_tokens": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "title": "Max Output Tokens"
    },
    "tool_call_max_tokens": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "title": "Tool Call Max Tokens"
    },
    "model": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Model"
    },
    "published": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Published"
    },
    "greeting": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Greeting"
    },
    "auto_greeting": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Auto Greeting"
    },
    "auto_suggest": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Auto Suggest"
    },
    "suggest_prompt": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Suggest Prompt"
    },
    "ask_forms": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Ask Forms"
    },
    "proactive_cta": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Proactive Cta"
    },
    "cta_prompt": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Cta Prompt"
    },
    "no_match_reply": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "No Match Reply"
    },
    "reasoning": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Reasoning"
    },
    "grounding_required": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Grounding Required"
    },
    "injection_guard": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Injection Guard"
    },
    "public_sources": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Public Sources"
    },
    "ambiguity_check": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Ambiguity Check"
    },
    "deep_research": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Deep Research"
    },
    "on_demand_context": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "On Demand Context"
    },
    "guard_escalation": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Guard Escalation"
    },
    "menu_items": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "title": "Menu Items"
    }
  },
  "type": "object"
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/agent4-io-agent-patch"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.