Problem
The aca-sandboxes skill uses the legacy ARM endpoints for Swagger and operation discovery:
managedApis/{connector}/apiOperations?api-version=2016-06-01
managedApis/{connector}?api-version=2016-06-01&export=true
These should be replaced with the connection's runtime metadata URL (derived from connectionRuntimeUrl by replacing /apim/ with /metadata/ and appending ?export=true).
Issues with the current state
- Inconsistent with runtime calls — sandbox apps call the runtime URL, but discovery uses a different endpoint
- Stale Swagger parsing — the Python snippets assume an ARM envelope (
data['properties']['apiDefinitions']['value']['paths']) that doesn't match the actual response (raw Swagger at the top level)
- No outside-sandbox auth guidance — the skill needs to document the API Hub token + user-ACL pattern for early exploration
- No idempotent ACL pattern — agents recreate ACLs blindly instead of checking first
- Silent execution — the agent runs shell commands without narrating what it's doing, leaving the user confused about progress
Expected behavior
- Skill consistently uses the metadata URL for all Swagger and operation discovery
- Both inside-sandbox (egress proxy) and outside-sandbox (user-ACL + API Hub token) auth paths are documented
- ACL creation is idempotent (GET first, PUT only if missing)
- Agent announces each step with context (URL, what it's doing, why)
Fix
See #128.
Problem
The
aca-sandboxesskill uses the legacy ARM endpoints for Swagger and operation discovery:managedApis/{connector}/apiOperations?api-version=2016-06-01managedApis/{connector}?api-version=2016-06-01&export=trueThese should be replaced with the connection's runtime metadata URL (derived from
connectionRuntimeUrlby replacing/apim/with/metadata/and appending?export=true).Issues with the current state
data['properties']['apiDefinitions']['value']['paths']) that doesn't match the actual response (raw Swagger at the top level)Expected behavior
Fix
See #128.