Get dividend ex-date calendar
GET/v1/dividends

Get dividend ex-date calendar

Returns expected dividend payment dates, cash amounts, and yields. Default window is 30 days starting from current date in America/New_York (ET); maximum date range is 90 days. The unfiltered calendar excludes symbols outside our coverage universe (the stocks/ETFs we carry options data for) — e.g. foreign/OTC listings and non-optionable funds such as many closed-end funds and ETNs; pass includeAll=true to list every symbol in the source. A symbol you request explicitly is always returned. Default limit is 1000; when your plan's max_rows is below the default (or requested limit exceeds max_rows), limit is clamped and X-Limit-Clamped is set to true. X-Limit-Clamped is also set when the date range exceeds your plan's history window.

Endpoint Usage & Plan Rules

Plan Access
Included in Basic
Active subscription
Rate Limit
One request per call; no daily quota
Result Clamping
Clamped by Plan
Clamped to plan max_rows

Parameters

Optional Parameters

NameTypeLocationDescription
fromstringqueryWindow start date in YYYY-MM-DD format. Clamped to account history_days. from > to returns 400 invalid_range.
tostringqueryWindow end date in YYYY-MM-DD format. Range cannot exceed 90 days (400 invalid_range).
symbolstringqueryFilter by equity ticker symbol. Invalid symbol returns 400 invalid_parameter.
cursorstringqueryOpaque pagination cursor to fetch the next page of results.
includeAllbooleanqueryInclude symbols outside our coverage universe (the stocks/ETFs we carry options data for) — e.g. foreign/OTC listings and non-optionable funds such as many closed-end funds and ETNs; defaults to false. When true, lists every symbol in the source. A symbol you request explicitly is always returned.
limitintegerqueryMaximum events to return (1-1000, default 250). Clamped to plan max_rows.

Request Examples

curl -s -H "Authorization: Bearer $WSO_API_KEY" \
  "https://api.wheelstrategyoptions.com/v1/dividends"

Try it

GET/v1/dividends
Included in Basic

Requests run against the live API with your key and count against its rate limits. The key is sent only to this site. Sign in to get a key

Add your API key to send.
Response

Send a request to see the live response, its status, timing, and rate-limit headers.

Response Attributes (200 OK)

FieldTypeNullableDescription
fromstringNoWindow start date in YYYY-MM-DD format.
tostringNoWindow end date in YYYY-MM-DD format.
truncatedbooleanNoIndicates whether returned results hit the query limit.
nextCursorstringYesOpaque cursor to fetch the next page of results, or null when all results have been returned.
resultsobject[]NoList of dividend calendar events.

Response Example

json
{
  "from": "2026-10-09",
  "to": "2026-11-08",
  "truncated": false,
  "nextCursor": null,
  "results": [
    {
      "symbol": "AAP",
      "name": "Advance Auto Parts, Inc.",
      "exDate": "2026-10-09",
      "payDate": "2026-10-23",
      "amount": 0.25,
      "yieldPercent": 2.358491,
      "frequency": "Quarterly"
    },
    {
      "symbol": "ACGBF",
      "name": "ACGBF",
      "exDate": "2026-10-09",
      "payDate": "2026-11-25",
      "amount": 0.019339,
      "yieldPercent": 4.865637,
      "frequency": "Semi-Annual"
    },
    {
      "symbol": "ACGBY",
      "name": "ACGBY",
      "exDate": "2026-10-09",
      "payDate": "2026-12-15",
      "amount": 0.48346,
      "yieldPercent": 4.593684,
      "frequency": "Semi-Annual"
    }
  ]
}

Error Responses

StatusDescription
400Bad Request. The request body, query parameters, or path values violated validation constraints.
401Unauthorized. Missing, malformed, or invalid API key credential.
403Forbidden. Rejection reasons: `subscription_required` (no subscription record), `subscription_inactive` (subscription not active), `trial_ended` (trial has expired), `wrong_credential_type`, `origin_forbidden` (origin authentication failed).
404Not Found. Requested resource, ticker symbol, or option contract does not exist.
405Method Not Allowed. Returned with an `Allow` header when an unsupported HTTP method is used. Error code: `method_not_allowed`. (HEAD is served on all GET routes and counts against the rate limit like GET.)
429Too Many Requests. Rejection reasons: `rate_limited` (per-minute limit), `too_many_concurrent_requests` (in-flight cap), `too_many_auth_failures`.
500Internal Server Error. Unhandled internal server or database error.
503Service Unavailable. Backing database, cache, or external provider connection unavailable.
Get earnings calendar eventsGet implied volatility context