List AI Assistants
curl --request GET \
--url https://api.voice-agents.miraiminds.co/v1/admin/assistant/list \
--header 'workspace: <workspace>' \
--header 'x-private-key: <api-key>' \
--header 'x-public-key: <api-key>'import requests
url = "https://api.voice-agents.miraiminds.co/v1/admin/assistant/list"
headers = {
"x-public-key": "<api-key>",
"x-private-key": "<api-key>",
"workspace": "<workspace>"
}
response = requests.get(url, headers=headers)
print(response.text)const url = 'https://api.voice-agents.miraiminds.co/v1/admin/assistant/list';
const options = {
method: 'GET',
headers: {
'x-public-key': '<api-key>',
'x-private-key': '<api-key>',
workspace: '<workspace>'
}
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));{
"message": "Assistants fetched successfully",
"data": [
{
"_id": "69b954f86ee9a7796fa57891",
"name": "My Assistant",
"variant": {
"type": "abandoned_cart",
"config": {
"inputSchema": [
{
"name": "<string>",
"type": "string",
"isRequired": true,
"fields": "<array>"
}
],
"variableSchema": {
"properties": {},
"required": [
"<string>"
]
},
"abandoned_cart": {
"paymentPlan": {
"mode": "online",
"additionalFee": {
"cod": 50
}
}
},
"cod_to_prepaid": {
"paymentLinkValidity": 30,
"codFee": 50,
"supportContacts": {
"phoneNumber": "+919876543210",
"email": "support@example.com"
}
},
"address_verification": {
"minDays": 3,
"maxDays": 5,
"supportContacts": {
"phoneNumber": "+919876543210",
"email": "support@example.com"
}
},
"order_confirmation": {
"supportContacts": {
"phoneNumber": "+919876543210",
"email": "support@example.com"
}
},
"ndr_followup": {
"maxRescheduleDays": 3,
"webhookToken": "shiprocket-secret",
"supportContacts": {
"phoneNumber": "+919876543210",
"email": "support@example.com"
}
}
}
},
"agent": {
"identity": {
"name": "<string>",
"voice": "<string>"
},
"systemPrompt": "<string>",
"firstMessage": "<string>",
"endMessage": "<string>",
"tools": [
{
"integration_id": "6710a1b2c3d4e5f600000010",
"tools": [
"6710a1b2c3d4e5f600000020"
]
}
]
},
"telephony": {
"inbound": "6700a1b2c3d4e5f600000111",
"outbound": "6700a1b2c3d4e5f600000222"
},
"icpContext": {
"targetAgeGroups": [],
"locationTiers": [],
"targetAudience": []
},
"callSettings": {
"slots": [
{
"startTime": "10:00",
"endTime": "13:00"
}
],
"retryProtocol": {
"maxAttemptsNoPickup": 2,
"maxAttemptsLowEngagement": 1,
"reAttemptPeriod": 300,
"maxRescheduleCount": 1
},
"maxCallDuration": 200,
"concurrentCallCount": 5
},
"analysisPlan": {
"successCriteriaPlan": "Return true ONLY if the customer issue was fully resolved and they expressed satisfaction before ending the call. Return false if they were still confused, frustrated, or requested escalation.",
"summaryPlan": "Summarize: (1) the customer issue, (2) the solution provided, (3) customer sentiment (positive/neutral/negative), and (4) any follow-up action needed.",
"callInsightPlan": {}
},
"knowledgeBase": {
"documents": [
{
"url": "<string>",
"title": "<string>"
}
],
"faq": [
{
"question": "What is your return policy?",
"answer": "We offer a 7-day return policy for unused items."
}
]
},
"archivedAt": null,
"createdAt": "2026-03-17T13:19:52.297Z",
"timezone": "UTC"
}
]
}Assistant
List AI Assistants
Returns all assistants in the current workspace. Each item carries the same payload as the get-by-id endpoint (GET /v1/admin/assistant/get/{assistantId}), so no field selection is needed. Takes no query parameters or request body.
GET
/
v1
/
admin
/
assistant
/
list
List AI Assistants
curl --request GET \
--url https://api.voice-agents.miraiminds.co/v1/admin/assistant/list \
--header 'workspace: <workspace>' \
--header 'x-private-key: <api-key>' \
--header 'x-public-key: <api-key>'import requests
url = "https://api.voice-agents.miraiminds.co/v1/admin/assistant/list"
headers = {
"x-public-key": "<api-key>",
"x-private-key": "<api-key>",
"workspace": "<workspace>"
}
response = requests.get(url, headers=headers)
print(response.text)const url = 'https://api.voice-agents.miraiminds.co/v1/admin/assistant/list';
const options = {
method: 'GET',
headers: {
'x-public-key': '<api-key>',
'x-private-key': '<api-key>',
workspace: '<workspace>'
}
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));{
"message": "Assistants fetched successfully",
"data": [
{
"_id": "69b954f86ee9a7796fa57891",
"name": "My Assistant",
"variant": {
"type": "abandoned_cart",
"config": {
"inputSchema": [
{
"name": "<string>",
"type": "string",
"isRequired": true,
"fields": "<array>"
}
],
"variableSchema": {
"properties": {},
"required": [
"<string>"
]
},
"abandoned_cart": {
"paymentPlan": {
"mode": "online",
"additionalFee": {
"cod": 50
}
}
},
"cod_to_prepaid": {
"paymentLinkValidity": 30,
"codFee": 50,
"supportContacts": {
"phoneNumber": "+919876543210",
"email": "support@example.com"
}
},
"address_verification": {
"minDays": 3,
"maxDays": 5,
"supportContacts": {
"phoneNumber": "+919876543210",
"email": "support@example.com"
}
},
"order_confirmation": {
"supportContacts": {
"phoneNumber": "+919876543210",
"email": "support@example.com"
}
},
"ndr_followup": {
"maxRescheduleDays": 3,
"webhookToken": "shiprocket-secret",
"supportContacts": {
"phoneNumber": "+919876543210",
"email": "support@example.com"
}
}
}
},
"agent": {
"identity": {
"name": "<string>",
"voice": "<string>"
},
"systemPrompt": "<string>",
"firstMessage": "<string>",
"endMessage": "<string>",
"tools": [
{
"integration_id": "6710a1b2c3d4e5f600000010",
"tools": [
"6710a1b2c3d4e5f600000020"
]
}
]
},
"telephony": {
"inbound": "6700a1b2c3d4e5f600000111",
"outbound": "6700a1b2c3d4e5f600000222"
},
"icpContext": {
"targetAgeGroups": [],
"locationTiers": [],
"targetAudience": []
},
"callSettings": {
"slots": [
{
"startTime": "10:00",
"endTime": "13:00"
}
],
"retryProtocol": {
"maxAttemptsNoPickup": 2,
"maxAttemptsLowEngagement": 1,
"reAttemptPeriod": 300,
"maxRescheduleCount": 1
},
"maxCallDuration": 200,
"concurrentCallCount": 5
},
"analysisPlan": {
"successCriteriaPlan": "Return true ONLY if the customer issue was fully resolved and they expressed satisfaction before ending the call. Return false if they were still confused, frustrated, or requested escalation.",
"summaryPlan": "Summarize: (1) the customer issue, (2) the solution provided, (3) customer sentiment (positive/neutral/negative), and (4) any follow-up action needed.",
"callInsightPlan": {}
},
"knowledgeBase": {
"documents": [
{
"url": "<string>",
"title": "<string>"
}
],
"faq": [
{
"question": "What is your return policy?",
"answer": "We offer a 7-day return policy for unused items."
}
]
},
"archivedAt": null,
"createdAt": "2026-03-17T13:19:52.297Z",
"timezone": "UTC"
}
]
}⌘I