Skip to main content

Hooks Endpoints

CoW Hooks analytics and data from Dune Analytics.

GET /hooks

Retrieves CoW Hooks data from Dune Analytics. This endpoint requires the DUNE_API_KEY environment variable to be configured.

Query Parameters

ParameterTypeRequiredDescription
blockchainstringYesThe blockchain to query hooks for
periodstringYesTime period for the hooks data query
maxWaitTimeMsnumberNoMaximum time to wait for Dune query results (ms)
limitnumberNoMaximum number of hooks to return
offsetnumberNoOffset for pagination

Response

FieldTypeDescription
hooksarrayArray of hook data objects from Dune Analytics
countnumberNumber of hooks returned in the response
errorstringError message if the request failed (only on errors)

Code Examples

cURL:
curl -X GET "http://localhost:3001/hooks?blockchain=ethereum&period=30d&limit=10"
JavaScript:
const response = await fetch(
  'http://localhost:3001/hooks?blockchain=ethereum&period=30d&limit=10'
);
const data = await response.json();
console.log(data.hooks);
Python:
import requests

response = requests.get(
    "http://localhost:3001/hooks",
    params={
        "blockchain": "ethereum",
        "period": "30d",
        "limit": 10
    }
)
data = response.json()
print(data["hooks"])

Example Response

{
  "hooks": [
    {
      // Hook data structure from Dune Analytics
    }
  ],
  "count": 10
}

Error Response

{
  "hooks": [],
  "count": 0,
  "error": "Internal server error while fetching hooks"
}

Notes

  • This endpoint requires the DUNE_API_KEY environment variable to be set. If not configured, the endpoint will not be available.
  • Responses are cached for 5 minutes to optimize performance and reduce Dune API usage.
The hooks endpoint uses the HooksService from the services library. For implementation details, see:
Last modified on March 4, 2026