Get readiness answers
Read the go-live readiness answers saved for one agent type at one rooftop. Use them to pre-fill the readiness questions before you save changes.
The answers are a stored questionnaire only. No other part of the platform reads them, and they do not gate go-live.
Auth: none checked on this route · Rate limit: not documented · Processing: synchronous, one database read
Before you call it
- You need the dealer group (
enterpriseId) and the rooftop (teamId). entitymust be one ofsales_inbound,sales_outbound,service_inbound,service_outbound,receptionist,acquisition_outboundorreputation_outbound. Any other value, for exampleacquisition_inboundorreceptionist_inbound, returns400.- The response is keyed by readiness step, for example
afterHours. Each step holds the questions and answers last saved for it.
Query parameters
- Identify the rooftop: send
enterpriseIdandteamIdas query parameters. - Pick the agent type: send
entity. - Send it: no body.
- Read the map: treat an empty
onboardingGoLiveReadinessas nothing saved yet.
| Parameter | Type | Required | Description |
|---|---|---|---|
enterpriseId | string | Required | Dealer group ID. Must not be empty. |
teamId | string | Required | Rooftop ID. Must not be empty. |
entity | string | Required | Agent type. One of the seven values listed above. |
Sample request
curl -G "https://api.spyne.ai/central-config/v1/vini-config/go-live-readiness" \
--data-urlencode "enterpriseId=<enterpriseId>" \
--data-urlencode "teamId=<teamId>" \
--data-urlencode "entity=sales_inbound"import requests
res = requests.get(
"https://api.spyne.ai/central-config/v1/vini-config/go-live-readiness",
params={"enterpriseId": "<enterpriseId>", "teamId": "<teamId>", "entity": "sales_inbound"},
)
print(res.status_code, res.json())const params = new URLSearchParams({
enterpriseId: '<enterpriseId>',
teamId: '<teamId>',
entity: 'sales_inbound',
});
const res = await fetch(
`https://api.spyne.ai/central-config/v1/vini-config/go-live-readiness?${params}`
);
console.log(res.status, await res.json());Sample response
{
"success": true,
"onboardingGoLiveReadiness": {
"afterHours": [
{ "question": "Calls during after hours", "answer": true, "comment": "" },
{ "question": "Speed to Lead on after hour leads", "answer": false, "comment": "BDC covers this" }
],
"officeHoursOverflow": [
{ "question": "Overflow Calls", "answer": true, "comment": "" }
]
}
}{
"success": true,
"message": "Go-Live readiness not found",
"onboardingGoLiveReadiness": {}
}{
"success": false,
"message": "Validation error",
"errors": [
{
"received": "receptionist_inbound",
"code": "invalid_enum_value",
"options": ["sales_inbound", "sales_outbound", "service_inbound", "service_outbound", "receptionist", "acquisition_outbound", "reputation_outbound"],
"path": ["entity"],
"message": "Invalid enum value. Expected 'sales_inbound' | 'sales_outbound' | 'service_inbound' | 'service_outbound' | 'receptionist' | 'acquisition_outbound' | 'reputation_outbound', received 'receptionist_inbound'"
}
]
}{
"success": false,
"message": "Failed to get Go-Live readiness",
"error": "<error message>"
}Response parameters (200)
| Parameter | Type | Description |
|---|---|---|
success | boolean | true on 200. |
message | string | Only present when nothing has been saved: "Go-Live readiness not found". |
onboardingGoLiveReadiness | object | Map of step name to an array of saved entries. Empty when nothing is saved. A step can be null if a caller cleared it. |
<step>[].question | string | The question label text as saved. |
<step>[].answer | any | Usually a boolean for toggle steps. The viniCallTranscriptsRecordings step stores an array of file URLs. |
<step>[].comment | string | Reason given when a toggle is off. Present only if the writer sent it. |
Errors
| Status | Code | When it happens |
|---|---|---|
400 | Validation error | enterpriseId or teamId is missing or empty, or entity is not one of the seven allowed values. The errors array lists each problem. |
500 | Failed to get Go-Live readiness | Unexpected error while reading the config. |
The call returns 200 with an empty onboardingGoLiveReadiness both when the rooftop has no config for this agent type and when the config exists but has no readiness answers.
What happens next
Pre-fill the readiness questions from the map, then save changes with Save readiness answers. The answers do not affect agent behavior or go-live. To switch the agent live, call Put an agent live.
Updated about 1 hour ago
