# Read Agent Card

Returns the A2A Agent Card — the discovery document that declares this agent's name, endpoint URL, transport binding, capabilities and skills. Clients read this first to learn where and how to call the agent.

Endpoint: GET /.well-known/agent-card.json
Version: 1.0
Security: apiKey

## Security:

  - `apiKey` (unknown)
    apiKey in header X-API-KEY

## Response 200:

  - `200` (unknown)
    The Agent Card describing CDQ Genius.

## Response 200 fields (application/json):

  - `protocolVersion` (string, required)
    The A2A protocol version this agent implements.
    Example: 1.0

  - `name` (string, required)
    Human-readable name of the agent.
    Example: CDQ Genius

  - `description` (string)
    Human-readable description of what the agent does.
    Example: CDQ's agent for business partner data enrichment, lookup and onboarding.

  - `url` (string, required)
    The base URL of the agent's A2A endpoint.
    Example: https://api.cdq.com/a2a/cdq-genius/

  - `preferredTransport` (string)
    The transport binding used at the endpoint URL, e.g. "JSONRPC".
    Example: JSONRPC

  - `version` (string, required)
    The version of the agent.
    Example: 1.0

  - `documentationUrl` (string)
    URL to human-readable documentation for the agent.
    Example: https://developer.cdq.com

  - `provider` (object)
    Information about the organization providing an agent.

  - `provider.organization` (string, required)
    Name of the providing organization.
    Example: CDQ AG

  - `provider.url` (string, required)
    URL of the providing organization.
    Example: https://www.cdq.com

  - `capabilities` (object, required)
    The optional capabilities an agent supports.

  - `capabilities.streaming` (boolean)
    Whether the agent supports streaming responses.
    Example: false

  - `capabilities.pushNotifications` (boolean)
    Whether the agent supports push notifications for task updates.
    Example: false

  - `capabilities.stateTransitionHistory` (boolean)
    Whether the agent exposes task state transition history.
    Example: false

  - `defaultInputModes` (array, required)
    Media types the agent accepts as input by default.

  - `defaultOutputModes` (array, required)
    Media types the agent produces as output by default.

  - `skills` (array, required)
    The skills the agent offers.

  - `skills.id` (string, required)
    Unique identifier of the skill.
    Example: business-partner-onboarding

  - `skills.name` (string, required)
    Human-readable name of the skill.
    Example: Business Partner Onboarding

  - `skills.description` (string, required)
    Human-readable description of the skill.
    Example: Provides enriched reference data to onboard a business partner.

  - `skills.tags` (array, required)
    Keywords describing the skill's capability categories.

  - `skills.examples` (array)
    Example prompts or scenarios the skill can handle.

  - `skills.inputModes` (array)
    Media types the skill accepts, overriding the agent defaults.

  - `skills.outputModes` (array)
    Media types the skill produces, overriding the agent defaults.

## Response 500:

  - `500` (unknown)
    Internal server error while producing the Agent Card.

