detektu
DigitalOcean API changes
Potentially breakingPreview

Request property all of added: session_policy

openapi:POST /v2/action-gateway/sessions::request.application.json.#.components.schemas.session_policy
Product
DigitalOcean API
Source
OpenAPI URL
Change kind
Request Property All Of Added
Detected
Last updated

Deterministic evidence

Before / after

Extracted from DigitalOcean's published contract. Shows the whole operation — a narrower excerpt was not available for this change. Open the source ↗

−25+2613 changes

1 / 13
"content": {
"content": {
"application/json": {
"application/json": {
"schema": {
"schema": {
"additionalProperties": false,
"properties": {
"properties": {
"actor_id": {
"actorId": {
"pattern": "^[A-Za-z0-9._-]{1,64}$",
"type": "string"
"type": "string"
},
},
"config": {
"config": {
"additionalProperties": true,
"properties": {
"preloadTools": {
"items": {
"type": "string"
},
"type": "array"
}
},
"type": "object"
"type": "object"
},
},
"insights": {
"allOf": [
{
"$ref": "#/components/schemas/session_insights"
}
]
},
"name": {
"name": {
"type": "string"
"type": "string"
},
},
"network": {
"allOf": [
{
"$ref": "#/components/schemas/session_network"
}
]
},
"policy": {
"policy": {
"allOf": [
"allOf": [
{
{
"$ref": "#/components/schemas/session_policy_spec"
"$ref": "#/components/schemas/session_policy"
}
}
]
]
},
},
}
}
},
},
"required": [
"required": [
"name",
"name"
"actor_id"
],
],
"type": "object"
"type": "object"
}
}
"content": {
"content": {
"application/json": {
"application/json": {
"schema": {
"schema": {
"additionalProperties": false,
"properties": {
"properties": {
"mcpUrl": {
"mcpUrl": {
"type": "string",
"type": "string"
"x-client-name": "mcpUrl"
},
},
"session": {
"session": {
"$ref": "#/components/schemas/public_session_policy"
"allOf": [
{
"$ref": "#/components/schemas/session"
}
]
},
},
"tools": {
"tools": {
"items": {
"items": {
"type": "array"
"type": "array"
}
}
},
},
"required": [
"session",
"mcpUrl",
"tools"
],
"type": "object"
"type": "object"
}
}
}
}
"security": [
"security": [
{
{
"bearer_auth": [
"bearer_auth": [
"genai:create"
"action_gateway:create"
]
]
}
}
],
],
"x-codeSamples": [
"x-codeSamples": [
{
{
"lang": "cURL",
"lang": "cURL",
"source": "curl -X POST \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $DIGITALOCEAN_TOKEN\" \\\n -d '{\n \"name\": \"research-session\",\n \"actor_id\": \"end-user-123\",\n \"policy\": {\n \"defaultAction\": \"ask\",\n \"rules\": [{\"tool\": \"exa_web_search\", \"action\": \"allow\"}]\n },\n \"tools\": [\"exa_web_search@v1\"],\n \"config\": {\"preloadTools\": [\"exa_web_search@v1\"]}\n }' \\\n \"https://api.digitalocean.com/v2/action-gateway/sessions\""
"source": "curl -X POST \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $DIGITALOCEAN_TOKEN\" \\\n -d '{\"name\":\"support-bot-alice\",\"actorId\":\"alice\",\"tools\":[\"toolbelt:search-toolbelt@1\",\"jira_create_issue\"],\"policy\":{\"defaultAction\":\"ask\",\"rules\":[{\"tool\":\"toolbelt:search-toolbelt@1\",\"match\":{},\"action\":\"allow\"},{\"tool\":\"jira_create_issue\",\"match\":{},\"action\":\"ask\"}]},\"config\":{\"preloadTools\":[\"exa_web_search\"],\"outputViews\":{\"exa_web_search\":\"titles-and-urls\"}}}' \\\n \"https://api.digitalocean.com/v2/action-gateway/sessions\""
}
}
]
]
}
}

Monitored for you

Does this change affect your integration?

Choose the operations and fields your services use. Detektu matches DigitalOcean findings to that declared usage so your team can review the relevant evidence. No agent or repository access required.