Title
Support Agent-to-Agent (A2A) APIs in apiops extract and apiops publish
Summary
Add support in apiops extract and apiops publish for API Management Agent-to-Agent (A2A) APIs as documented here:
https://learn.microsoft.com/en-us/azure/api-management/agent-to-agent-api
Background
When importing an A2A agent API, API Management supports specific runtime mediation and agent card transformations. apiops should round-trip these A2A APIs correctly (extract -> publish) without losing required A2A behavior.
Required A2A behavior to support
Runtime mediation + governance
- Mediate JSON-RPC runtime operations to the A2A backend.
- Enable governance and traffic control via APIM policies.
Observability attributes (when App Insights is enabled)
Ensure A2A-specific attributes are preserved/configurable according to OpenTelemetry GenAI semantic conventions:
genai.agent.id (from configured agent ID)
genai.agent.name (from API name)
Agent card transformations
Ensure publish/extract support APIM’s A2A agent card transformations:
- Replace hostname with API Management instance hostname.
- Set preferred transport protocol to JSON-RPC.
- Remove other interfaces in
additionalInterfaces.
- Rewrite security requirements to include APIM subscription key requirement.
Known limitations to account for
- Only JSON-RPC-based A2A agent APIs are supported.
- Deserialization of outgoing response bodies is not supported.
Acceptance criteria
apiops extract can successfully extract A2A agent API artifacts.
apiops publish can successfully publish extracted A2A artifacts.
- Round-trip (
extract -> publish) preserves required A2A semantics and transforms.
- Non-A2A behavior remains unchanged.
- Documentation (if needed) reflects A2A support and limitations.
Testing requirements
- Update the all-types round-trip integration to include an Agent-to-Agent scenario.
- Add/adjust integration assertions for:
- JSON-RPC mediation compatibility
- Agent card transformation expectations
- Required
genai.agent.* observability metadata handling (where applicable)
Out of scope
- Support for non-JSON-RPC A2A transports.
- Outgoing response body deserialization enhancements beyond current APIM limitation.
Title
Support Agent-to-Agent (A2A) APIs in
apiops extractandapiops publishSummary
Add support in
apiops extractandapiops publishfor API Management Agent-to-Agent (A2A) APIs as documented here:https://learn.microsoft.com/en-us/azure/api-management/agent-to-agent-api
Background
When importing an A2A agent API, API Management supports specific runtime mediation and agent card transformations.
apiopsshould round-trip these A2A APIs correctly (extract -> publish) without losing required A2A behavior.Required A2A behavior to support
Runtime mediation + governance
Observability attributes (when App Insights is enabled)
Ensure A2A-specific attributes are preserved/configurable according to OpenTelemetry GenAI semantic conventions:
genai.agent.id(from configured agent ID)genai.agent.name(from API name)Agent card transformations
Ensure publish/extract support APIM’s A2A agent card transformations:
additionalInterfaces.Known limitations to account for
Acceptance criteria
apiops extractcan successfully extract A2A agent API artifacts.apiops publishcan successfully publish extracted A2A artifacts.extract->publish) preserves required A2A semantics and transforms.Testing requirements
genai.agent.*observability metadata handling (where applicable)Out of scope