Create agent tool
Create agent tool. See the OpenAPI-defined parameters, request body, and responses below.
/AgentToolCreate agent tool. See the OpenAPI-defined parameters, request body, and responses below.
OpenAPI description: Este endpoint cria uma nova ferramenta de agente com os dados fornecidos.
Authentication
Authentication required. Send your user API key in the X-API-Key header.
Parameters
This operation has no path, query, or header parameters.
Request body
Content type: application/json · Schema: AgentToolDto
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
id | integer · int32 | No | — | — |
agentToolType | AgentToolType | No | — | — |
agentId | integer · int32 | No | — | — |
prompt | string | No | — | nullable |
description | string | No | — | nullable |
name | string | No | — | nullable |
apiUrl | string | No | — | nullable |
agentToolHttpMethod | AgentToolHttpMethod | No | — | — |
contentType | AgentToolContentType | No | — | — |
connectorType | ConnectorType | No | — | — |
connectorId | integer · int32 | No | — | — |
model | string | No | — | nullable; maxLength: 200 |
agentToolHeaders | array<AgentToolHeader> | No | — | nullable |
agentToolQueryParameters | array<AgentToolQueryParameter> | No | — | nullable |
agentToolPathParameters | array<AgentToolPathParameter> | No | — | nullable |
agentToolFormParameters | array<AgentToolFormParameter> | No | — | nullable |
subAgentId | integer · int32 | No | — | — |
handoffQueueId | integer · int32 | No | — | nullable |
handoffUserId | integer · int32 | No | — | nullable |
agent | AgentDto | No | — | — |
Example request
curl --request POST \
--url 'https://api.zild.ai/AgentTool' \
--header 'X-API-Key: YOUR_USER_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"id": 0,
"agentToolType": 0,
"agentId": 0,
"prompt": "string",
"description": "string",
"name": "string",
"apiUrl": "string",
"agentToolHttpMethod": 0,
"contentType": 0,
"connectorType": 0,
"connectorId": 0,
"model": "string",
"agentToolHeaders": [
{
"id": 0,
"tenantId": 0,
"agentToolId": 0,
"key": "string",
"value": "string",
"agentToolVariableType": 0
}
],
"agentToolQueryParameters": [
{
"id": 0,
"tenantId": 0,
"agentToolId": 0,
"key": "string",
"value": "string",
"agentToolVariableType": 0
}
],
"agentToolPathParameters": [
{
"id": 0,
"tenantId": 0,
"agentToolId": 0,
"key": "string",
"value": "string",
"agentToolVariableType": 0
}
],
"agentToolFormParameters": [
{
"id": 0,
"tenantId": 0,
"agentToolId": 0,
"key": "string",
"value": "string",
"parentAgentToolFormParameterId": 0,
"agentToolFormParameterType": 0,
"agentToolVariableType": 0
}
],
"subAgentId": 0,
"handoffQueueId": 0,
"handoffUserId": 0,
"agent": {
"id": 0,
"name": "string",
"description": "string",
"agentType": 0,
"agentFilesDtos": [
{
"id": "string",
"fileName": "string"
}
],
"enabled": true,
"isChat": true,
"instructions": "string",
"model": "string",
"responseFormat": "string",
"vectorStoreId": "string",
"agentAIType": 0,
"temperature": 0,
"topP": 0,
"integrationAgentId": "string",
"language": 0,
"dynamicVariables": [
{
"id": 0,
"name": "string",
"value": "string",
"agentId": 0
}
],
"dataCollection": [
{
"id": 0,
"name": "string",
"value": "string",
"agentId": 0
}
],
"communicationChannel": 0,
"firstMessage": "string",
"checklistId": 0,
"queueId": 0,
"createdAt": "2026-09-22T18:00:00Z",
"voiceId": "string",
"voiceModel": "string",
"voiceSpeed": 0,
"voiceTemperature": 0,
"volume": 0,
"phoneNumberId": "string",
"phoneNumberType": 0,
"customToolsIds": [
"string"
],
"builtInTools": {
"endCall": {
"name": "string",
"params": {
"systemToolType": "string"
}
},
"transferToNumber": {
"name": "string",
"params": {
"transfers": [
null
]
}
}
},
"maxDurationSeconds": 0,
"elevenLabsReasoningEffort": "string",
"elevenLabsMaxTokens": 0,
"elevenLabsAsrProvider": "string",
"elevenLabsTurnEagerness": "string",
"elevenLabsSpellingPatience": "string",
"elevenLabsTurnTimeout": 0,
"elevenLabsSilenceEndCallTimeout": 0,
"groupAgents": [
{
"id": 0,
"groupId": 0,
"agentId": 0,
"permissionType": 0,
"createdAt": "2026-09-22T18:00:00Z",
"tenantId": 0
}
],
"currentUserPermission": 0,
"agentCategoryId": 0,
"logoIconUrl": "string",
"webhookIds": [
0
],
"createdByUserId": 0,
"ownedByUserId": 0,
"defaultQuestions": [
"string"
],
"agentKnowledgeIds": [
0
],
"agentSkillIds": [
0
]
}
}'
Responses
| Status | Description | Response body |
|---|---|---|
200 | Ferramenta criada com sucesso | application/json · AgentToolDto |
Example response (200):
{
"id": 0,
"agentToolType": 0,
"agentId": 0,
"prompt": "string",
"description": "string",
"name": "string",
"apiUrl": "string",
"agentToolHttpMethod": 0,
"contentType": 0,
"connectorType": 0,
"connectorId": 0,
"model": "string",
"agentToolHeaders": [
{
"id": 0,
"tenantId": 0,
"agentToolId": 0,
"key": "string",
"value": "string",
"agentToolVariableType": 0
}
],
"agentToolQueryParameters": [
{
"id": 0,
"tenantId": 0,
"agentToolId": 0,
"key": "string",
"value": "string",
"agentToolVariableType": 0
}
],
"agentToolPathParameters": [
{
"id": 0,
"tenantId": 0,
"agentToolId": 0,
"key": "string",
"value": "string",
"agentToolVariableType": 0
}
],
"agentToolFormParameters": [
{
"id": 0,
"tenantId": 0,
"agentToolId": 0,
"key": "string",
"value": "string",
"parentAgentToolFormParameterId": 0,
"agentToolFormParameterType": 0,
"agentToolVariableType": 0
}
],
"subAgentId": 0,
"handoffQueueId": 0,
"handoffUserId": 0,
"agent": {
"id": 0,
"name": "string",
"description": "string",
"agentType": 0,
"agentFilesDtos": [
{
"id": "string",
"fileName": "string"
}
],
"enabled": true,
"isChat": true,
"instructions": "string",
"model": "string",
"responseFormat": "string",
"vectorStoreId": "string",
"agentAIType": 0,
"temperature": 0,
"topP": 0,
"integrationAgentId": "string",
"language": 0,
"dynamicVariables": [
{
"id": 0,
"name": "string",
"value": "string",
"agentId": 0
}
],
"dataCollection": [
{
"id": 0,
"name": "string",
"value": "string",
"agentId": 0
}
],
"communicationChannel": 0,
"firstMessage": "string",
"checklistId": 0,
"queueId": 0,
"createdAt": "2026-09-22T18:00:00Z",
"voiceId": "string",
"voiceModel": "string",
"voiceSpeed": 0,
"voiceTemperature": 0,
"volume": 0,
"phoneNumberId": "string",
"phoneNumberType": 0,
"customToolsIds": [
"string"
],
"builtInTools": {
"endCall": {
"name": "string",
"params": {
"systemToolType": "string"
}
},
"transferToNumber": {
"name": "string",
"params": {
"transfers": [
null
]
}
}
},
"maxDurationSeconds": 0,
"elevenLabsReasoningEffort": "string",
"elevenLabsMaxTokens": 0,
"elevenLabsAsrProvider": "string",
"elevenLabsTurnEagerness": "string",
"elevenLabsSpellingPatience": "string",
"elevenLabsTurnTimeout": 0,
"elevenLabsSilenceEndCallTimeout": 0,
"groupAgents": [
{
"id": 0,
"groupId": 0,
"agentId": 0,
"permissionType": 0,
"createdAt": "2026-09-22T18:00:00Z",
"tenantId": 0
}
],
"currentUserPermission": 0,
"agentCategoryId": 0,
"logoIconUrl": "string",
"webhookIds": [
0
],
"createdByUserId": 0,
"ownedByUserId": 0,
"defaultQuestions": [
"string"
],
"agentKnowledgeIds": [
0
],
"agentSkillIds": [
0
]
}
}
Data models
AgentAIType
0 = AzureOpenAI; 1 = OpenAI; 2 = RetellAI; 3 = ElevenLabs; 4 = Lovable; 5 = n8n; 6 = Aws; 7 = MicrosoftCopilot; 8 = GoogleGemini; 9 = AnthropicClaude; 10 = Alteryx
integer
AgentDataCollectionDto
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
id | integer · int32 | No | — | — |
name | string | No | — | nullable |
value | string | No | — | nullable |
agentId | integer · int32 | No | — | — |
AgentDto
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
id | integer · int32 | No | — | — |
name | string | No | — | nullable |
description | string | No | — | nullable; maxLength: 500 |
agentType | AgentType | No | — | — |
agentFilesDtos | array<AgentFilesDto> | No | — | nullable |
enabled | boolean | No | — | — |
isChat | boolean | No | — | — |
instructions | string | No | — | nullable |
model | string | No | — | nullable |
responseFormat | string | No | — | nullable |
vectorStoreId | string | No | — | nullable |
agentAIType | AgentAIType | No | — | — |
temperature | number · double | No | — | nullable |
topP | number · double | No | — | nullable |
integrationAgentId | string | No | — | nullable |
language | Language | No | — | — |
dynamicVariables | array<AgentDynamicVariableDto> | No | — | nullable |
dataCollection | array<AgentDataCollectionDto> | No | — | nullable |
communicationChannel | CommunicationChannel | No | — | — |
firstMessage | string | No | — | nullable; maxLength: 1000 |
checklistId | integer · int32 | No | — | — |
queueId | integer · int32 | No | — | — |
createdAt | string · date-time | No | — | — |
voiceId | string | No | — | nullable |
voiceModel | string | No | — | nullable |
voiceSpeed | number · double | No | — | — |
voiceTemperature | number · double | No | — | — |
volume | number · double | No | — | — |
phoneNumberId | string | No | — | nullable |
phoneNumberType | PhoneNumberType | No | — | — |
customToolsIds | array<string> | No | — | nullable |
builtInTools | BuiltInToolsDtos | No | — | — |
maxDurationSeconds | integer · int32 | No | — | — |
elevenLabsReasoningEffort | string | No | — | nullable |
elevenLabsMaxTokens | integer · int32 | No | — | — |
elevenLabsAsrProvider | string | No | — | nullable |
elevenLabsTurnEagerness | string | No | — | nullable |
elevenLabsSpellingPatience | string | No | — | nullable |
elevenLabsTurnTimeout | number · double | No | — | — |
elevenLabsSilenceEndCallTimeout | number · double | No | — | — |
groupAgents | array<GroupAgentDto> | No | — | nullable |
currentUserPermission | AgentPermissionType | No | — | — |
agentCategoryId | integer · int32 | No | — | — |
logoIconUrl | string | No | — | nullable; maxLength: 2000 |
webhookIds | array<integer · int32> | No | — | nullable |
createdByUserId | integer · int32 | No | — | — |
ownedByUserId | integer · int32 | No | — | — |
defaultQuestions | array<string> | No | — | nullable |
agentKnowledgeIds | array<integer · int32> | No | — | nullable |
agentSkillIds | array<integer · int32> | No | — | nullable |
AgentDynamicVariableDto
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
id | integer · int32 | No | — | — |
name | string | No | — | nullable |
value | string | No | — | nullable |
agentId | integer · int32 | No | — | — |
AgentFilesDto
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
id | string | No | — | nullable |
fileName | string | No | — | nullable |
AgentPermissionType
0 = View; 1 = Edit
integer
AgentToolContentType
0 = ApplicationJson; 1 = FormUrlEncoded; 2 = MultipartFormData
integer
AgentToolDto
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
id | integer · int32 | No | — | — |
agentToolType | AgentToolType | No | — | — |
agentId | integer · int32 | No | — | — |
prompt | string | No | — | nullable |
description | string | No | — | nullable |
name | string | No | — | nullable |
apiUrl | string | No | — | nullable |
agentToolHttpMethod | AgentToolHttpMethod | No | — | — |
contentType | AgentToolContentType | No | — | — |
connectorType | ConnectorType | No | — | — |
connectorId | integer · int32 | No | — | — |
model | string | No | — | nullable; maxLength: 200 |
agentToolHeaders | array<AgentToolHeader> | No | — | nullable |
agentToolQueryParameters | array<AgentToolQueryParameter> | No | — | nullable |
agentToolPathParameters | array<AgentToolPathParameter> | No | — | nullable |
agentToolFormParameters | array<AgentToolFormParameter> | No | — | nullable |
subAgentId | integer · int32 | No | — | — |
handoffQueueId | integer · int32 | No | — | nullable |
handoffUserId | integer · int32 | No | — | nullable |
agent | AgentDto | No | — | — |
AgentToolFormParameter
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
id | integer · int32 | No | — | — |
tenantId | integer · int32 | No | — | — |
agentToolId | integer · int32 | No | — | — |
key | string | No | — | nullable |
value | string | No | — | nullable |
parentAgentToolFormParameterId | integer · int32 | No | — | — |
agentToolFormParameterType | AgentToolFormParameterType | No | — | — |
agentToolVariableType | AgentToolVariableType | No | — | — |
AgentToolFormParameterType
0 = String; 1 = Object; 2 = Number; 3 = Boolean; 4 = Array
integer
AgentToolHeader
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
id | integer · int32 | No | — | — |
tenantId | integer · int32 | No | — | — |
agentToolId | integer · int32 | No | — | — |
key | string | No | — | nullable |
value | string | No | — | nullable |
agentToolVariableType | AgentToolVariableType | No | — | — |
AgentToolHttpMethod
0 = GET; 1 = POST; 2 = PUT; 3 = DELETE; 4 = PATCH
integer
AgentToolPathParameter
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
id | integer · int32 | No | — | — |
tenantId | integer · int32 | No | — | — |
agentToolId | integer · int32 | No | — | — |
key | string | No | — | nullable |
value | string | No | — | nullable |
agentToolVariableType | AgentToolVariableType | No | — | — |
AgentToolQueryParameter
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
id | integer · int32 | No | — | — |
tenantId | integer · int32 | No | — | — |
agentToolId | integer · int32 | No | — | — |
key | string | No | — | nullable |
value | string | No | — | nullable |
agentToolVariableType | AgentToolVariableType | No | — | — |
AgentToolType
0 = ExecuteQuery; 1 = CreateQuery; 2 = WebSearch; 3 = GoogleMapsRoute; 4 = TaskScheduler; 5 = TextToImage; 6 = CreateFile; 7 = SubAgent; 8 = CodeInterpreter; 9 = EndConversation; 10 = OmieFinancialSummary; 11 = OmieAccountsPayable; 12 = OmieAccountsReceivable; 13 = OmieDueTitles; 14 = OmieTransactions; 15 = OmieBalance; 16 = OmieCategories; 17 = OmieEntryDetails; 18 = AgentMemory; 19 = HandoffToQueue; 20 = HandoffToUser; 21 = SendMail; 99 = Custom
integer
AgentToolVariableType
0 = Prompt; 1 = Constant
integer
AgentType
0 = ZildAssist; 1 = ZildFlow; 2 = ZildInsightChat; 3 = ZildChat; 4 = ZildDocs; 5 = ZildVoice; 6 = ZildCoach; 7 = ZildInsightChecklist
integer
BuiltInToolsDtos
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
endCall | EndCall | No | — | — |
transferToNumber | TransferToNumber | No | — | — |
CommunicationChannel
0 = Default; 1 = WhatsApp; 2 = Telefonia; 3 = Email; 4 = WebChat; 5 = InstagramDirectMessage; 6 = FacebookMessenger; 7 = MicrosoftTeams; 8 = ZildCoach
integer
ConnectorType
0 = AnalysisService; 1 = PostgreSQL; 2 = MySQl; 3 = SQLServer; 4 = GoogleBigQuery; 5 = AzureOpenAI; 6 = Chart; 7 = OracleDB; 8 = Deepgram; 9 = AzureSpeech; 10 = AzureLanguageNotUsedAnymore; 11 = AzureStorage; 12 = RetellAI; 13 = AzureVision; 14 = OriginalSoftware; 15 = GoogleApi; 16 = OpenAI; 17 = AzureAiDocumentIntelligence; 18 = ElevenLabs; 19 = Twilio; 20 = Anthropic; 21 = GoogleGemini; 22 = Monday; 23 = Omie; 24 = MEM9
integer
EndCall
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
name | string | No | — | nullable |
params | EndCallParams | No | — | — |
EndCallParams
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
systemToolType | string | No | — | nullable |
GroupAgentDto
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
id | integer · int32 | No | — | — |
groupId | integer · int32 | No | — | — |
agentId | integer · int32 | No | — | — |
permissionType | AgentPermissionType | No | — | — |
createdAt | string · date-time | No | — | — |
tenantId | integer · int32 | No | — | — |
Language
0 = PtBr; 1 = EnUS; 2 = EsES; 3 = FrFR; 4 = DeDE; 5 = ItIT; 6 = ZhCN; 7 = ZhTW; 8 = JaJP; 9 = KoKR; 10 = RuRU; 11 = ArSA; 12 = HiIN; 13 = NlNL; 14 = PlPL; 15 = TrTR; 16 = ViVN; 17 = ThTH; 18 = IdID; 19 = SvSE
integer
PhoneNumberType
0 = Twilio; 1 = SipTrunk
integer
TransferDestination
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
phoneNumber | string | No | — | nullable |
sipUri | string | No | — | nullable |
type | string | No | — | nullable |
TransferItem
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
condition | string | No | — | nullable |
transferDestination | TransferDestination | No | — | — |
transferType | string | No | — | nullable |
TransferParams
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
transfers | array<TransferItem> | No | — | nullable |
TransferToNumber
| Property | Type | Required | Description | Constraints |
|---|---|---|---|---|
name | string | No | — | nullable |
params | TransferParams | No | — | — |