# Events (https://developer.godaddy.com/en/docs/references/rest/ans/events)

***

title: Events
description: ''
full: true
\_openapi:
method: GET
toc:

* depth: 2
  title: Retrieve ANS agent events
  url: '#retrieve-ans-agent-events'
  structuredData:
  headings:
  * content: Retrieve ANS agent events
    id: retrieve-ans-agent-events
    contents:
  * content: >-
    Returns a paginated, strictly ordered list of ANS events. When
    providerId is omitted, the API returns events for all providers; when
    providerId is provided, only events associated with that provider are
    returned. Pagination is driven by an opaque cursor token returned in
    each response.
    heading: retrieve-ans-agent-events

***

## GET /v1/agents/events

Retrieve ANS agent events

Returns a paginated, strictly ordered list of ANS events. When providerId is omitted, the API returns events for all providers; when providerId is provided, only events associated with that provider are returned. Pagination is driven by an opaque cursor token returned in each response.

### Query parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `providerId` | string | no | Optional provider identifier. If omitted, global mode is used and the API returns events for all providers from the primary global stream. When provided, results are filtered to only events associated with that provider. |
| `lastLogId` | string | no | Optional log id for the last viewed event from a previous request. If not provided, the API returns the first page of results from the start of the event stream. Events are only stored for 30 days. |
| `limit` | integer | no | Number of events to return (1-200, default 100) |

### Header parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `X-Request-Id` | string | no | Unique identifier for request tracking between services (UUID V1 as Base58) |

### Responses

**200** — Successful operation

Content-Type: `application/json`

Schema:

- object — Paginated response containing ANS events
  - `items` (required): array — Array of event items
      - items:
          - `logId` (required): string — Unique identifier for this event in the stream
          - `eventType` (required): string — Type of ANS event
            - enum: "AGENT_DEPRECATED", "AGENT_REGISTERED", "AGENT_REVOKED", "AGENT_RENEWED"
          - `createdAt` (required): string <date-time> — Timestamp when the event was created
          - `expiresAt`: string <date-time> — When the agent's registration expires (if applicable)
          - `agentId` (required): string — Unique identifier of the agent
          - `ansName` (required): string — Fully qualified ANS name in format ans://{version}.{agentHost}
          - `agentHost` (required): string — The agent's hosting domain
          - `agentDisplayName`: string — Human-readable display name for the agent
          - `agentDescription`: string — Description of the agent
          - `version` (required): string — Semantic version of the agent
          - `providerId`: string — The provider identifier associated with the agent (if any)
          - `endpoints`: array — Array of agent endpoints with protocol-specific configuration
              - items:
                  - `agentUrl` (required): string <uri> — The URL where the agent is hosted and accepts requests
                  - `metaDataUrl`: string <uri> — URL for agent metadata (optional)
                  - `documentationUrl`: string <uri> — URL for agent documentation (optional)
                  - `protocol` (required): string — Communication protocol for this endpoint
                    - enum: "A2A", "MCP", "HTTP-API"
                  - `functions`: array — Array of functions provided by this endpoint. The meaning varies by protocol: for MCP these are tools (e.g., 'domain_suggest', 'file_search'), for A2A these are skills (e.g., 'translate_document', 'analyze_sentiment'), and for HTTP-API these are routes (e.g., 'GET /domains', 'POST /orders'). (optional)
                      - items:
                          - `id` (required): string — Unique identifier for the function
                          - `name` (required): string — Human-readable name for the function
                          - `tags`: array — Tags for categorizing and discovering functions (max 5 tags, each up to 20 characters)
                              - items:
                  - `transports`: array — Supported transport mechanisms for the protocol (optional)
                      - items:
                          - enum: "STREAMABLE-HTTP", "SSE", "JSON-RPC", "GRPC", "REST", "HTTP"
  - `lastLogId`: string — The log ID of the last event in this page. Use this value as the lastLogId parameter in the next request to retrieve the subsequent page of events. Omitted when there are no more results.

**400** — Malformed request syntax (invalid JSON, encoding issues)

Content-Type: `application/json`

Schema:

- object
  - `code` (required): string — Application-specific error code for client-side error handling
  - `details`: object
  - `message` (required): string
  - `status` (required): string
    - enum: "ERROR"

**401** — Authentication failed

Content-Type: `application/json`

Schema:

- object
  - `code` (required): string — Application-specific error code for client-side error handling
  - `details`: object
  - `message` (required): string
  - `status` (required): string
    - enum: "ERROR"

**403** — Authorization failed

Content-Type: `application/json`

Schema:

- object
  - `code` (required): string — Application-specific error code for client-side error handling
  - `details`: object
  - `message` (required): string
  - `status` (required): string
    - enum: "ERROR"

**422** — Invalid request parameters (invalid cursor, out-of-range limit, invalid providerId)

Content-Type: `application/json`

Schema:

- object
  - `code` (required): string — Application-specific error code for client-side error handling
  - `details`: object
  - `message` (required): string
  - `status` (required): string
    - enum: "ERROR"

**429** — Too many requests - throttled

Content-Type: `application/json`

Schema:

- object
  - `code` (required): string — Application-specific error code for client-side error handling
  - `details`: object
  - `message` (required): string
  - `status` (required): string
    - enum: "ERROR"

**500** — Internal server error

Content-Type: `application/json`

Schema:

- object
  - `code` (required): string — Application-specific error code for client-side error handling
  - `details`: object
  - `message` (required): string
  - `status` (required): string
    - enum: "ERROR"
