# PUT /WorkApps/{workAppId}/Policies/{requestType}

## PUT /api/v1/WorkApps/{workAppId}/Policies/{requestType}

> Updates the policy assigned to a Work App for a specific request type.

```json
{"openapi":"3.0.4","info":{"title":"Cakewalk Open API","version":"v1"},"servers":[{"url":"https://open-api.getcakewalk.io"}],"security":[{"API Key":[]}],"components":{"securitySchemes":{"API Key":{"type":"apiKey","description":"Public API key used to identify the client application. It should be included in all requests.","name":"X-API-KEY","in":"header"}},"schemas":{"RequestType":{"enum":["GrantAccessRequest","RemoveAccessRequest","ArchiveWorkAppRequest","ChangePermissionLevelRequest","AddNewManagedWorkAppRequest"],"type":"string"},"UpdateWorkAppPolicyRequestModelV1":{"required":["policyId"],"type":"object","properties":{"policyId":{"type":"string","description":"Identifier of the policy to apply.","format":"uuid"}},"additionalProperties":false,"description":"Request model used to update the default policy for a work app, applied only if no more specific policy exists for the requested permission level."},"ProblemDetails":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32","nullable":true},"detail":{"type":"string","nullable":true},"instance":{"type":"string","nullable":true}},"additionalProperties":{}}}},"paths":{"/api/v1/WorkApps/{workAppId}/Policies/{requestType}":{"put":{"tags":["WorkApps"],"summary":"Updates the policy assigned to a Work App for a specific request type.","parameters":[{"name":"workAppId","in":"path","description":"The Work App's unique identifier.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"requestType","in":"path","description":"The request type to associate the policy with.","required":true,"schema":{"allOf":[{"$ref":"#/components/schemas/RequestType"}]}},{"name":"X-API-SECRET","in":"header","description":"API Secret is used to verify the integrity of the request and authenticate the client. It should be included in all requests. This value must be kept confidential and should never be exposed in client-side code or public repositories.","required":true,"schema":{"type":"string","description":"API Secret is used to verify the integrity of the request and authenticate the client. It should be included in all requests. This value must be kept confidential and should never be exposed in client-side code or public repositories."}}],"requestBody":{"description":"The request model used to update the default policy for a work app.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/UpdateWorkAppPolicyRequestModelV1"}],"description":"Request model used to update the default policy for a work app, applied only if no more specific policy exists for the requested permission level."}},"text/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/UpdateWorkAppPolicyRequestModelV1"}],"description":"Request model used to update the default policy for a work app, applied only if no more specific policy exists for the requested permission level."}},"application/*+json":{"schema":{"allOf":[{"$ref":"#/components/schemas/UpdateWorkAppPolicyRequestModelV1"}],"description":"Request model used to update the default policy for a work app, applied only if no more specific policy exists for the requested permission level."}}}},"responses":{"204":{"description":"No Content"},"401":{"description":"Unauthorized","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}},"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}},"text/json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"404":{"description":"Not Found","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}},"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}},"text/json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"409":{"description":"Conflict","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}},"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}},"text/json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"500":{"description":"Internal Server Error"}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.getcakewalk.io/open-api-and-mcp/api-reference/applications/put-workapps-workappid-policies-requesttype.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
