curl -X POST https://your-instance.stackflow-tech.com/prod/api/requests -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{
"catalog_item_id": "cat_item_vpn_access",
"requested_for": "newuser@example.com",
"variables": {
"vpn_region": "us-east-1",
"access_level": "standard",
"justification": "Remote work from home office"
}
}'
RITM Items
Each service request can have one or more RITM (Request Item) records, one per catalog item ordered. RITM items are fulfilled independently and may have different assignment groups and approval chains.
# Get a specific RITM
curl -H "Authorization: Bearer $TOKEN" https://your-instance.stackflow-tech.com/prod/api/ritm/RITM0001001
# Update RITM state (fulfiller)
curl -X PATCH https://your-instance.stackflow-tech.com/prod/api/ritm/RITM0001001 -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{"state": "in_fulfillment", "work_note": "Ordered from vendor, ETA 3 business days"}'
Approval State Machine
RITM States:
pending_approval → approved → in_fulfillment → fulfilled → closed
pending_approval → rejected → cancelled
in_fulfillment → on_hold → in_fulfillment
in_fulfillment → cancelled
Approval workflow (multi-stage):
Stage 1: Direct manager approval (auto-assigned based on org chart)
Stage 2: Department head (if cost > $1000)
Stage 3: Finance approval (if cost > $5000)
Each stage has a configurable SLA (default: 48 hours per stage)