-
Notifications
You must be signed in to change notification settings - Fork 135
Description
Here's the filled-out bug report:
Describe the bug
The PUT /v2026/sources/{sourceId}/provisioning-policies/{usageType} API endpoint appears to expect the provisioning policy's internal id (UUID) in the path parameter, rather than the usageType string as documented. Passing usageType (e.g. "CREATE") as the path parameter results in a 404 error even when the policy exists.
To Reproduce Steps to reproduce the behavior:
- Create or confirm a provisioning policy exists on a source by calling
GET /v2026/sources/{sourceId}/provisioning-policies - Note the
usageTypevalue (e.g.CREATE) from the response - Call
PUT /v2026/sources/{sourceId}/provisioning-policies/CREATEwith a valid request body - See error:
404 Not Found - Referenced id "CREATE" was not found
Expected behavior
The API should accept the usageType string (e.g. CREATE) as the path parameter as documented, and successfully update the matching provisioning policy for that source.
Actual behavior
The API returns a 404 Not Found error when usageType is passed as the path parameter. The request only succeeds when the internal UUID id of the provisioning policy (e.g. de498daf-609a-4647-a575-dbbbff8cd4f6) is used instead — which is undocumented behavior and requires an additional GET call to retrieve.
Example error response:
{
"detailCode": "404 Not found",
"trackingId": "4e3230886a3e4c8d8f6328a0daed2aca",
"messages": [
{
"locale": "en-US",
"localeOrigin": "DEFAULT",
"text": "Referenced id \"CREATE\" was not found."
}
],
"causes": []
}Screenshots
Operating System (please complete the following information):
- OS: N/A (API-level issue, not OS-specific)
- CLI Environment: e.g. curl / Postman
- Version: v2026
Browser (please complete the following information):
- Browser: N/A (API-level issue, reproducible via any HTTP client)
- Version: N/A
Additional context
- The
GET /v2026/sources/{sourceId}/provisioning-policiesendpoint returns bothid(UUID) andusageTypefields per policy. The documentation impliesusageTypeis the path parameter forPUT, but only theidUUID works in practice. - Workaround: First call
GET /v2026/sources/{sourceId}/provisioning-policies?filters=usageType eq "CREATE"to retrieve the policyid, then use that UUID in thePUTpath. - This inconsistency forces an unnecessary extra API call and contradicts the documented API contract.
Looks good to paste directly into a GitHub issue or support ticket. Want me to adjust the tone or add anything?