Running an A/B test comparing skills-based evaluation against bullseye expansion for East Coast queues. Data table maps customer tier → skill group → weight. Automating profile updates via POST /api/v2/routing/routingprofiles to cut Admin overhead during peak.
Batch update returns 400 Bad Request. Schema validator passes, but response throws: "invalid_request: Skill group id 'sg_12345' not found in division 'main'." Division ID verified. Skill group exists. Manual agent assignment routes correctly. Queue throughput is stalled pending profile sync.
Occasional timeout in console logs, but 400 returns immediately. Swapped to alternate skill group in same division → identical error. Retried 3x with exponential backoff. No change.
Suspect payload structure mismatch. Current structure:
{
"name": "Premium_Support_Test",
"skill_groups": [
{
"id": "sg_premium_tier",
"weight": 1.0
}
],
"division": {
"id": "main"
}
}
Data table columns: Tier, SkillGroupID, Weight. Python 3.9 script parses CSV → builds JSON payload. Ran clean for West Coast A/B test last week. Prod environment. ID format matches GET /routing/skillgroups response. Division is main. Zero typos.
Data table logic is sound. Architect routing rules are blocked. Agents defaulting to fallback routing, skewing A/B test metrics. Skill groups are standard (no custom/language tags). Error persists across all tested IDs. Points to payload schema mismatch or endpoint bug.
SLA targets at risk if unresolved by EOD. Bullseye expansion evaluation depends on active skill group weights. Data table cron runs on schedule, but routing engine ignores new weights without profile sync. API version: 2024-01-15. SDK: Python 3.9. Division matches Admin UI. Profile name & queue assignment updates succeed. Skill group assignment fails consistently. Profile ID: rp_abc123. Skill group ID: sg_xyz789. Error repeats per batch item. Response contains error object, no stack trace. Headers: standard auth + application/json. Token valid. Other endpoints functional. Issue isolated to skill group assignment on routing profiles.
Could the weight field be triggering validation? Docs don’t specify constraints for bulk skill group updates. Has anyone hit this with preferred agent or priority-based routing payloads? Saw a similar thread in the community forums last month but no resolution. Clarifying question: Does the POST /api/v2/routing/routingprofiles endpoint require a nested evaluation_method field when pushing skill group weights, or is the flat structure correct?