Stocks API Documentation

The Polygon.io Stocks API provides REST endpoints that let you query the latest market data from all US stock exchanges. You can also find data on company financials, stock market holidays, corporate actions, and more.

Our REST APIs are based on entitlements that control which endpoints you can use and which kinds of data you can access. All users start with free access to reference data and end of day market data. If you decide to upgrade your account to access more recent market data or more historical data, your entitlements are automatically updated in the background and you can continue to use the same API keys to access the new data. You can login to see examples that include your API key and are personalized to your entitlements.

Looking for something else? Try our Stocks WebSocket Documentation, or the Options, Forex, or Crypto Docs.

Authentication

Pass your API key in the query string like follows:

https://api.polygon.io/v2/aggs/ticker/AAPL/range/1/day/2023-01-09/2023-01-09?apiKey=*

Alternatively, you can add an Authorization header to the request with your API Key as the token in the following form:

Authorization: Bearer <token>

Usage

Many of Polygon.io's REST endpoints allow you to extend query parameters with inequalities like date.lt=2023-01-01 (less than) and date.gte=2023-01-01 (greater than or equal to) to search ranges of values. You can also use the field name without any extension to query for exact equality. Fields that support extensions will have an "Additional filter parameters" dropdown beneath them in the docs that detail the supported extensions for that parameter.

Aggregates (Bars)

get
/v2/aggs/ticker/{stocksTicker}/range/{multiplier}/{timespan}/{from}/{to}

Get aggregate bars for a stock over a given date range in custom time window sizes.

For example, if timespan = ‘minute’ and multiplier = ‘5’ then 5-minute bars will be returned.

Parameters

The ticker symbol of the stock/equity.

The size of the timespan multiplier.

  • The size of the time window.

    The start of the aggregate time window. Either a date with the format YYYY-MM-DD or a millisecond timestamp.

    The end of the aggregate time window. Either a date with the format YYYY-MM-DD or a millisecond timestamp.

  • Whether or not the results are adjusted for splits. By default, results are adjusted. Set this to false to get results that are NOT adjusted for splits.

  • Sort the results by timestamp. asc will return results in ascending order (oldest at the top), desc will return results in descending order (newest at the top).

    Limits the number of base aggregates queried to create the aggregate results. Max 50000 and Default 5000. Read more about how limit is used to calculate aggregate results in our article on Aggregate Data API Improvements.

    https://api.polygon.io/v2/aggs/ticker/{stocksTicker}/range/{multiplier}/{timespan}/{from}/{to}?apiKey=*
    Response Attributes
    ticker*string

    The exchange symbol that this item is traded under.


    adjusted*boolean

    Whether or not this response was adjusted for splits.


    queryCount*integer

    The number of aggregates (minute or day) used to generate the response.


    request_id*string

    A request id assigned by the server.


    resultsCount*integer

    The total number of results for this request.


    status*string

    The status of this request's response.


    resultsarray
    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    ninteger

    The number of transactions in the aggregate window.


    o*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    t*integer

    The Unix Msec timestamp for the start of the aggregate window.


    v*number

    The trading volume of the symbol in the given time period.


    vwnumber

    The volume weighted average price.


    Was this helpful?
    Help us improve
    Response Object
    {
      "adjusted": true,
      "queryCount": 2,
      "request_id": "6a7e466379af0a71039d60cc78e72282",
      "results": [
        {
          "c": 75.0875,
          "h": 75.15,
          "l": 73.7975,
          "n": 1,
          "o": 74.06,
          "t": 1577941200000,
          "v": 135647456,
          "vw": 74.6099
        },
        {
          "c": 74.3575,
          "h": 75.145,
          "l": 74.125,
          "n": 1,
          "o": 74.2875,
          "t": 1578027600000,
          "v": 146535512,
          "vw": 74.7026
        }
      ],
      "resultsCount": 2,
      "status": "OK",
      "ticker": "AAPL"
    }

    Grouped Daily (Bars)

    get
    /v2/aggs/grouped/locale/us/market/stocks/{date}

    Get the daily open, high, low, and close (OHLC) for the entire stocks/equities markets.

    Parameters

    The beginning date for the aggregate window.

  • Whether or not the results are adjusted for splits. By default, results are adjusted. Set this to false to get results that are NOT adjusted for splits.

  • Include OTC securities in the response. Default is false (don't include OTC securities).

    https://api.polygon.io/v2/aggs/grouped/locale/us/market/stocks/{date}?apiKey=*
    Response Attributes
    adjusted*boolean

    Whether or not this response was adjusted for splits.


    queryCount*integer

    The number of aggregates (minute or day) used to generate the response.


    request_id*string

    A request id assigned by the server.


    resultsCount*integer

    The total number of results for this request.


    status*string

    The status of this request's response.


    resultsarray
    T*string

    The exchange symbol that this item is traded under.


    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    ninteger

    The number of transactions in the aggregate window.


    o*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    t*integer

    The Unix Msec timestamp for the start of the aggregate window.


    v*number

    The trading volume of the symbol in the given time period.


    vwnumber

    The volume weighted average price.


    Was this helpful?
    Help us improve
    Response Object
    {
      "adjusted": true,
      "queryCount": 3,
      "results": [
        {
          "T": "KIMpL",
          "c": 25.9102,
          "h": 26.25,
          "l": 25.91,
          "n": 74,
          "o": 26.07,
          "t": 1602705600000,
          "v": 4369,
          "vw": 26.0407
        },
        {
          "T": "TANH",
          "c": 23.4,
          "h": 24.763,
          "l": 22.65,
          "n": 1096,
          "o": 24.5,
          "t": 1602705600000,
          "v": 25933.6,
          "vw": 23.493
        },
        {
          "T": "VSAT",
          "c": 34.24,
          "h": 35.47,
          "l": 34.21,
          "n": 4966,
          "o": 34.9,
          "t": 1602705600000,
          "v": 312583,
          "vw": 34.4736
        }
      ],
      "resultsCount": 3,
      "status": "OK"
    }

    Daily Open/Close

    get
    /v1/open-close/{stocksTicker}/{date}

    Get the open, close and afterhours prices of a stock symbol on a certain date.

    Parameters

    The ticker symbol of the stock/equity.

    The date of the requested open/close in the format YYYY-MM-DD.

  • Whether or not the results are adjusted for splits. By default, results are adjusted. Set this to false to get results that are NOT adjusted for splits.

    https://api.polygon.io/v1/open-close/{stocksTicker}/{date}?apiKey=*
    Response Attributes
    afterHoursnumber

    The close price of the ticker symbol in after hours trading.


    close*number

    The close price for the symbol in the given time period.


    from*string

    The requested date.


    high*number

    The highest price for the symbol in the given time period.


    low*number

    The lowest price for the symbol in the given time period.


    open*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    preMarketinteger

    The open price of the ticker symbol in pre-market trading.


    status*string

    The status of this request's response.


    symbol*string

    The exchange symbol that this item is traded under.


    volume*number

    The trading volume of the symbol in the given time period.


    Was this helpful?
    Help us improve
    Response Object
    {
      "afterHours": 322.1,
      "close": 325.12,
      "from": "2023-01-09",
      "high": 326.2,
      "low": 322.3,
      "open": 324.66,
      "preMarket": 324.5,
      "status": "OK",
      "symbol": "AAPL",
      "volume": 26122646
    }

    Previous Close

    get
    /v2/aggs/ticker/{stocksTicker}/prev

    Get the previous day's open, high, low, and close (OHLC) for the specified stock ticker.

    Parameters

    The ticker symbol of the stock/equity.

  • Whether or not the results are adjusted for splits. By default, results are adjusted. Set this to false to get results that are NOT adjusted for splits.

    https://api.polygon.io/v2/aggs/ticker/{stocksTicker}/prev?apiKey=*
    Response Attributes
    ticker*string

    The exchange symbol that this item is traded under.


    adjusted*boolean

    Whether or not this response was adjusted for splits.


    queryCount*integer

    The number of aggregates (minute or day) used to generate the response.


    request_id*string

    A request id assigned by the server.


    resultsCount*integer

    The total number of results for this request.


    status*string

    The status of this request's response.


    resultsarray
    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    ninteger

    The number of transactions in the aggregate window.


    o*number

    The open price for the symbol in the given time period.


    t*integer

    The Unix Msec timestamp for the start of the aggregate window.


    v*number

    The trading volume of the symbol in the given time period.


    vwnumber

    The volume weighted average price.


    Was this helpful?
    Help us improve
    Response Object
    {
      "adjusted": true,
      "queryCount": 1,
      "request_id": "6a7e466379af0a71039d60cc78e72282",
      "results": [
        {
          "T": "AAPL",
          "c": 115.97,
          "h": 117.59,
          "l": 114.13,
          "o": 115.55,
          "t": 1605042000000,
          "v": 131704427,
          "vw": 116.3058
        }
      ],
      "resultsCount": 1,
      "status": "OK",
      "ticker": "AAPL"
    }

    Trades

    get
    /v3/trades/{stockTicker}

    Get trades for a ticker symbol in a given time range.

    This API is replacing Trades on June 1, 2022View Deprecated Docs
    Parameters

    The ticker symbol to get trades for.

    Query by trade timestamp. Either a date with the format YYYY-MM-DD or a nanosecond timestamp.

    timestamp.ltless than
    timestamp.lteless than or equal to
    timestamp.gtgreater than
    timestamp.gtegreater than or equal to
    Learn More
  • Order results based on the sort field.

    Limit the number of results returned, default is 10 and max is 50000.

  • Sort field used for ordering.

    https://api.polygon.io/v3/trades/{stockTicker}?apiKey=*
    Response Attributes
    next_urlstring

    If present, this value can be used to fetch the next page of data.


    resultsarray
    conditionsarray [integer]

    A list of condition codes.


    correctioninteger

    The trade correction indicator.


    exchangeinteger

    The exchange ID. See Exchanges for Polygon.io's mapping of exchange IDs.


    idstring

    The Trade ID which uniquely identifies a trade. These are unique per combination of ticker, exchange, and TRF. For example: A trade for AAPL executed on NYSE and a trade for AAPL executed on NASDAQ could potentially have the same Trade ID.


    participant_timestampinteger

    The nanosecond accuracy Participant/Exchange Unix Timestamp. This is the timestamp of when the trade was actually generated at the exchange.


    pricenumber

    The price of the trade. This is the actual dollar value per whole share of this trade. A trade of 100 shares with a price of $2.00 would be worth a total dollar value of $200.00.


    sequence_numberinteger

    The sequence number represents the sequence in which trade events happened. These are increasing and unique per ticker symbol, but will not always be sequential (e.g., 1, 2, 6, 9, 10, 11). Values reset after each trading session/day.


    sip_timestampinteger

    The nanosecond accuracy SIP Unix Timestamp. This is the timestamp of when the SIP received this trade from the exchange which produced it.


    sizenumber

    The size of a trade (also known as volume).


    tapeinteger

    There are 3 tapes which define which exchange the ticker is listed on. These are integers in our objects which represent the letter of the alphabet. Eg: 1 = A, 2 = B, 3 = C.

    • Tape A is NYSE listed securities
    • Tape B is NYSE ARCA / NYSE American
    • Tape C is NASDAQ

    trf_idinteger

    The ID for the Trade Reporting Facility where the trade took place.


    trf_timestampinteger

    The nanosecond accuracy TRF (Trade Reporting Facility) Unix Timestamp. This is the timestamp of when the trade reporting facility received this trade.


    statusstring

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "next_url": "https://api.polygon.io/v3/trades/AAPL?cursor=YWN0aXZlPXRydWUmZGF0ZT0yMDIxLTA0LTI1JmxpbWl0PTEmb3JkZXI9YXNjJnBhZ2VfbWFya2VyPUElN0M5YWRjMjY0ZTgyM2E1ZjBiOGUyNDc5YmZiOGE1YmYwNDVkYzU0YjgwMDcyMWE2YmI1ZjBjMjQwMjU4MjFmNGZiJnNvcnQ9dGlja2Vy",
      "request_id": "a47d1beb8c11b6ae897ab76cdbbf35a3",
      "results": [
        {
          "conditions": [
            12,
            41
          ],
          "exchange": 11,
          "id": "1",
          "participant_timestamp": 1517562000015577000,
          "price": 171.55,
          "sequence_number": 1063,
          "sip_timestamp": 1517562000016036600,
          "size": 100,
          "tape": 3
        },
        {
          "conditions": [
            12,
            41
          ],
          "exchange": 11,
          "id": "2",
          "participant_timestamp": 1517562000015577600,
          "price": 171.55,
          "sequence_number": 1064,
          "sip_timestamp": 1517562000016038100,
          "size": 100,
          "tape": 3
        }
      ],
      "status": "OK"
    }

    Last Trade

    get
    /v2/last/trade/{stocksTicker}

    Get the most recent trade for a given stock.

    Parameters

    The ticker symbol of the stock/equity.

    https://api.polygon.io/v2/last/trade/{stocksTicker}?apiKey=*
    Response Attributes
    request_idstring

    A request id assigned by the server.


    resultsobject
    Tstring

    The exchange symbol that this item is traded under.


    carray [integer]

    A list of condition codes.


    einteger

    The trade correction indicator.


    finteger

    The nanosecond accuracy TRF(Trade Reporting Facility) Unix Timestamp. This is the timestamp of when the trade reporting facility received this message.


    istring

    The Trade ID which uniquely identifies a trade. These are unique per combination of ticker, exchange, and TRF. For example: A trade for AAPL executed on NYSE and a trade for AAPL executed on NASDAQ could potentially have the same Trade ID.


    pnumber

    The price of the trade. This is the actual dollar value per whole share of this trade. A trade of 100 shares with a price of $2.00 would be worth a total dollar value of $200.00.


    qinteger

    The sequence number represents the sequence in which message events happened. These are increasing and unique per ticker symbol, but will not always be sequential (e.g., 1, 2, 6, 9, 10, 11).


    rinteger

    The ID for the Trade Reporting Facility where the trade took place.


    snumber

    The size of a trade (also known as volume).


    tinteger

    The nanosecond accuracy SIP Unix Timestamp. This is the timestamp of when the SIP received this message from the exchange which produced it.


    xinteger

    The exchange ID. See Exchanges for Polygon.io's mapping of exchange IDs.


    yinteger

    The nanosecond accuracy Participant/Exchange Unix Timestamp. This is the timestamp of when the quote was actually generated at the exchange.


    zinteger

    There are 3 tapes which define which exchange the ticker is listed on. These are integers in our objects which represent the letter of the alphabet. Eg: 1 = A, 2 = B, 3 = C.

    • Tape A is NYSE listed securities
    • Tape B is NYSE ARCA / NYSE American
    • Tape C is NASDAQ

    statusstring

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "request_id": "f05562305bd26ced64b98ed68b3c5d96",
      "results": {
        "T": "AAPL",
        "c": [
          37
        ],
        "f": 1617901342969796400,
        "i": "118749",
        "p": 129.8473,
        "q": 3135876,
        "r": 202,
        "s": 25,
        "t": 1617901342969834000,
        "x": 4,
        "y": 1617901342968000000,
        "z": 3
      },
      "status": "OK"
    }

    Quotes (NBBO)

    get
    /v3/quotes/{stockTicker}

    Get NBBO quotes for a ticker symbol in a given time range.

    This API is replacing Quotes (NBBO) on June 1, 2022View Deprecated Docs
    Parameters

    The ticker symbol to get quotes for.

    Query by timestamp. Either a date with the format YYYY-MM-DD or a nanosecond timestamp.

    timestamp.ltless than
    timestamp.lteless than or equal to
    timestamp.gtgreater than
    timestamp.gtegreater than or equal to
    Learn More
  • Order results based on the sort field.

    Limit the number of results returned, default is 10 and max is 50000.

  • Sort field used for ordering.

    https://api.polygon.io/v3/quotes/{stockTicker}?apiKey=*
    Response Attributes
    next_urlstring

    If present, this value can be used to fetch the next page of data.


    resultsarray
    ask_exchangeinteger

    The ask exchange ID


    ask_pricenumber

    The ask price.


    ask_sizenumber

    The ask size. This represents the number of round lot orders at the given ask price. The normal round lot size is 100 shares. An ask size of 2 means there are 200 shares available to purchase at the given ask price.


    bid_exchangeinteger

    The bid exchange ID


    bid_pricenumber

    The bid price.


    bid_sizenumber

    The bid size. This represents the number of round lot orders at the given bid price. The normal round lot size is 100 shares. A bid size of 2 means there are 200 shares for purchase at the given bid price.


    conditionsarray [integer]

    A list of condition codes.


    indicatorsarray [integer]

    A list of indicator codes.


    participant_timestampinteger

    The nanosecond accuracy Participant/Exchange Unix Timestamp. This is the timestamp of when the quote was actually generated at the exchange.


    sequence_numberinteger

    The sequence number represents the sequence in which quote events happened. These are increasing and unique per ticker symbol, but will not always be sequential (e.g., 1, 2, 6, 9, 10, 11). Values reset after each trading session/day.


    sip_timestampinteger

    The nanosecond accuracy SIP Unix Timestamp. This is the timestamp of when the SIP received this quote from the exchange which produced it.


    tapeinteger

    There are 3 tapes which define which exchange the ticker is listed on. These are integers in our objects which represent the letter of the alphabet. Eg: 1 = A, 2 = B, 3 = C.

    • Tape A is NYSE listed securities
    • Tape B is NYSE ARCA / NYSE American
    • Tape C is NASDAQ

    trf_timestampinteger

    The nanosecond accuracy TRF (Trade Reporting Facility) Unix Timestamp. This is the timestamp of when the trade reporting facility received this quote.


    statusstring

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "next_url": "https://api.polygon.io/v3/quotes/AAPL?cursor=YWN0aXZlPXRydWUmZGF0ZT0yMDIxLTA0LTI1JmxpbWl0PTEmb3JkZXI9YXNjJnBhZ2VfbWFya2VyPUElN0M5YWRjMjY0ZTgyM2E1ZjBiOGUyNDc5YmZiOGE1YmYwNDVkYzU0YjgwMDcyMWE2YmI1ZjBjMjQwMjU4MjFmNGZiJnNvcnQ9dGlja2Vy",
      "request_id": "a47d1beb8c11b6ae897ab76cdbbf35a3",
      "results": [
        {
          "ask_exchange": 0,
          "ask_price": 0,
          "ask_size": 0,
          "bid_exchange": 11,
          "bid_price": 102.7,
          "bid_size": 60,
          "conditions": [
            1
          ],
          "participant_timestamp": 1517562000065321200,
          "sequence_number": 2060,
          "sip_timestamp": 1517562000065700400,
          "tape": 3
        },
        {
          "ask_exchange": 0,
          "ask_price": 0,
          "ask_size": 0,
          "bid_exchange": 11,
          "bid_price": 170,
          "bid_size": 2,
          "conditions": [
            1
          ],
          "participant_timestamp": 1517562000065408300,
          "sequence_number": 2061,
          "sip_timestamp": 1517562000065791500,
          "tape": 3
        }
      ],
      "status": "OK"
    }

    Last Quote

    get
    /v2/last/nbbo/{stocksTicker}

    Get the most recent NBBO (Quote) tick for a given stock.

    Parameters

    The ticker symbol of the stock/equity.

    https://api.polygon.io/v2/last/nbbo/{stocksTicker}?apiKey=*
    Response Attributes
    request_idstring

    A request id assigned by the server.


    resultsobject
    Pnumber

    The ask price.


    Sinteger

    The ask size. This represents the number of round lot orders at the given ask price. The normal round lot size is 100 shares. An ask size of 2 means there are 200 shares available to purchase at the given ask price.


    Tstring

    The exchange symbol that this item is traded under.


    Xinteger

    The exchange ID. See Exchanges for Polygon.io's mapping of exchange IDs.


    carray [integer]

    A list of condition codes.


    finteger

    The nanosecond accuracy TRF(Trade Reporting Facility) Unix Timestamp. This is the timestamp of when the trade reporting facility received this message.


    iarray [integer]

    A list of indicator codes.


    pnumber

    The bid price.


    qinteger

    The sequence number represents the sequence in which message events happened. These are increasing and unique per ticker symbol, but will not always be sequential (e.g., 1, 2, 6, 9, 10, 11).


    sinteger

    The bid size. This represents the number of round lot orders at the given bid price. The normal round lot size is 100 shares. A bid size of 2 means there are 200 shares for purchase at the given bid price.


    tinteger

    The nanosecond accuracy SIP Unix Timestamp. This is the timestamp of when the SIP received this message from the exchange which produced it.


    xinteger

    The exchange ID. See Exchanges for Polygon.io's mapping of exchange IDs.


    yinteger

    The nanosecond accuracy Participant/Exchange Unix Timestamp. This is the timestamp of when the quote was actually generated at the exchange.


    zinteger

    There are 3 tapes which define which exchange the ticker is listed on. These are integers in our objects which represent the letter of the alphabet. Eg: 1 = A, 2 = B, 3 = C.

    • Tape A is NYSE listed securities
    • Tape B is NYSE ARCA / NYSE American
    • Tape C is NASDAQ

    statusstring

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "request_id": "b84e24636301f19f88e0dfbf9a45ed5c",
      "results": {
        "P": 127.98,
        "S": 7,
        "T": "AAPL",
        "X": 19,
        "p": 127.96,
        "q": 83480742,
        "s": 1,
        "t": 1617827221349730300,
        "x": 11,
        "y": 1617827221349366000,
        "z": 3
      },
      "status": "OK"
    }

    All Tickers

    get
    /v2/snapshot/locale/us/markets/stocks/tickers

    Get the most up-to-date market data for all traded stock symbols.

    Note: Snapshot data is cleared at 3:30am EST and gets populated as data is received from the exchanges. This can happen as early as 4am EST.

    Parameters

    A comma separated list of tickers to get snapshots for.

  • Include OTC securities in the response. Default is false (don't include OTC securities).

    https://api.polygon.io/v2/snapshot/locale/us/markets/stocks/tickers?apiKey=*
    Response Attributes
    countinteger

    The total number of results for this request.


    status*string

    The status of this request's response.


    tickersarray
    dayobject

    The most recent daily bar for this ticker.

    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    o*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    v*number

    The trading volume of the symbol in the given time period.


    vw*number

    The volume weighted average price.


    lastQuoteobject

    The most recent quote for this ticker. This is only returned if your current plan includes quotes.

    P*number

    The ask price.


    S*integer

    The ask size in lots.


    p*number

    The bid price.


    s*integer

    The bid size in lots.


    t*integer

    The nanosecond accuracy SIP Unix Timestamp. This is the timestamp of when the SIP received this message from the exchange which produced it.


    lastTradeobject

    The most recent trade for this ticker. This is only returned if your current plan includes trades.

    c*array [string]

    The trade conditions.


    i*string

    The Trade ID which uniquely identifies a trade. These are unique per combination of ticker, exchange, and TRF. For example: A trade for AAPL executed on NYSE and a trade for AAPL executed on NASDAQ could potentially have the same Trade ID.


    p*number

    The price of the trade. This is the actual dollar value per whole share of this trade. A trade of 100 shares with a price of $2.00 would be worth a total dollar value of $200.00.


    s*integer

    The size (volume) of the trade.


    t*integer

    The nanosecond accuracy SIP Unix Timestamp. This is the timestamp of when the SIP received this message from the exchange which produced it.


    x*integer

    The exchange ID. See Exchanges for Polygon.io's mapping of exchange IDs.


    minobject

    The most recent minute bar for this ticker.

    av*integer

    The accumulated volume.


    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    o*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    v*number

    The trading volume of the symbol in the given time period.


    vw*number

    The volume weighted average price.


    prevDayobject

    The previous day's bar for this ticker.

    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    o*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    v*number

    The trading volume of the symbol in the given time period.


    vw*number

    The volume weighted average price.


    tickerstring

    The exchange symbol that this item is traded under.


    todaysChangenumber

    The value of the change the from previous day.


    todaysChangePercnumber

    The percentage change since the previous day.


    updatedinteger

    The last updated timestamp.


    Was this helpful?
    Help us improve
    Response Object
    {
      "count": 1,
      "status": "OK",
      "tickers": [
        {
          "day": {
            "c": 20.506,
            "h": 20.64,
            "l": 20.506,
            "o": 20.64,
            "v": 37216,
            "vw": 20.616
          },
          "lastQuote": {
            "P": 20.6,
            "S": 22,
            "p": 20.5,
            "s": 13,
            "t": 1605192959994246100
          },
          "lastTrade": {
            "c": [
              14,
              41
            ],
            "i": "71675577320245",
            "p": 20.506,
            "s": 2416,
            "t": 1605192894630916600,
            "x": 4
          },
          "min": {
            "av": 37216,
            "c": 20.506,
            "h": 20.506,
            "l": 20.506,
            "o": 20.506,
            "v": 5000,
            "vw": 20.5105
          },
          "prevDay": {
            "c": 20.63,
            "h": 21,
            "l": 20.5,
            "o": 20.79,
            "v": 292738,
            "vw": 20.6939
          },
          "ticker": "BCAT",
          "todaysChange": -0.124,
          "todaysChangePerc": -0.601,
          "updated": 1605192894630916600
        }
      ]
    }

    Gainers/Losers

    get
    /v2/snapshot/locale/us/markets/stocks/{direction}

    Get the most up-to-date market data for the current top 20 gainers or losers of the day in the stocks/equities markets.

    Top gainers are those tickers whose price has increased by the highest percentage since the previous day's close. Top losers are those tickers whose price has decreased by the highest percentage since the previous day's close.

    Note: Snapshot data is cleared at 3:30am EST and gets populated as data is received from the exchanges.

    Parameters
  • The direction of the snapshot results to return.

  • Include OTC securities in the response. Default is false (don't include OTC securities).

    https://api.polygon.io/v2/snapshot/locale/us/markets/stocks/{direction}?apiKey=*
    Response Attributes
    status*string

    The status of this request's response.


    tickersarray
    dayobject

    The most recent daily bar for this ticker.

    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    o*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    v*number

    The trading volume of the symbol in the given time period.


    vw*number

    The volume weighted average price.


    lastQuoteobject

    The most recent quote for this ticker. This is only returned if your current plan includes quotes.

    P*number

    The ask price.


    S*integer

    The ask size in lots.


    p*number

    The bid price.


    s*integer

    The bid size in lots.


    t*integer

    The nanosecond accuracy SIP Unix Timestamp. This is the timestamp of when the SIP received this message from the exchange which produced it.


    lastTradeobject

    The most recent trade for this ticker. This is only returned if your current plan includes trades.

    c*array [string]

    The trade conditions.


    i*string

    The Trade ID which uniquely identifies a trade. These are unique per combination of ticker, exchange, and TRF. For example: A trade for AAPL executed on NYSE and a trade for AAPL executed on NASDAQ could potentially have the same Trade ID.


    p*number

    The price of the trade. This is the actual dollar value per whole share of this trade. A trade of 100 shares with a price of $2.00 would be worth a total dollar value of $200.00.


    s*integer

    The size (volume) of the trade.


    t*integer

    The nanosecond accuracy SIP Unix Timestamp. This is the timestamp of when the SIP received this message from the exchange which produced it.


    x*integer

    The exchange ID. See Exchanges for Polygon.io's mapping of exchange IDs.


    minobject

    The most recent minute bar for this ticker.

    av*integer

    The accumulated volume.


    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    o*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    v*number

    The trading volume of the symbol in the given time period.


    vw*number

    The volume weighted average price.


    prevDayobject

    The previous day's bar for this ticker.

    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    o*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    v*number

    The trading volume of the symbol in the given time period.


    vw*number

    The volume weighted average price.


    tickerstring

    The exchange symbol that this item is traded under.


    todaysChangenumber

    The value of the change the from previous day.


    todaysChangePercnumber

    The percentage change since the previous day.


    updatedinteger

    The last updated timestamp.


    Was this helpful?
    Help us improve
    Response Object
    {
      "status": "OK",
      "tickers": [
        {
          "day": {
            "c": 14.2284,
            "h": 15.09,
            "l": 14.2,
            "o": 14.33,
            "v": 133963,
            "vw": 14.5311
          },
          "lastQuote": {
            "P": 14.44,
            "S": 11,
            "p": 14.2,
            "s": 25,
            "t": 1605195929997325600
          },
          "lastTrade": {
            "c": [
              63
            ],
            "i": "79372124707124",
            "p": 14.2284,
            "s": 536,
            "t": 1605195848258266000,
            "x": 4
          },
          "min": {
            "av": 133963,
            "c": 14.2284,
            "h": 14.325,
            "l": 14.2,
            "o": 14.28,
            "v": 6108,
            "vw": 14.2426
          },
          "prevDay": {
            "c": 0.73,
            "h": 0.799,
            "l": 0.73,
            "o": 0.75,
            "v": 1568097,
            "vw": 0.7721
          },
          "ticker": "PDS",
          "todaysChange": 13.498,
          "todaysChangePerc": 1849.096,
          "updated": 1605195848258266000
        }
      ]
    }

    Ticker

    get
    /v2/snapshot/locale/us/markets/stocks/tickers/{stocksTicker}

    Get the most up-to-date market data for a single traded stock ticker.

    Note: Snapshot data is cleared at 3:30am EST and gets populated as data is received from the exchanges. This can happen as early as 4am EST.

    Parameters

    The ticker symbol of the stock/equity.

    https://api.polygon.io/v2/snapshot/locale/us/markets/stocks/tickers/{stocksTicker}?apiKey=*
    Response Attributes
    status*string

    The status of this request's response.


    request_id*string

    A request id assigned by the server.


    tickerobject
    dayobject

    The most recent daily bar for this ticker.

    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    o*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    v*number

    The trading volume of the symbol in the given time period.


    vw*number

    The volume weighted average price.


    lastQuoteobject

    The most recent quote for this ticker. This is only returned if your current plan includes quotes.

    P*number

    The ask price.


    S*integer

    The ask size in lots.


    p*number

    The bid price.


    s*integer

    The bid size in lots.


    t*integer

    The nanosecond accuracy SIP Unix Timestamp. This is the timestamp of when the SIP received this message from the exchange which produced it.


    lastTradeobject

    The most recent trade for this ticker. This is only returned if your current plan includes trades.

    c*array [string]

    The trade conditions.


    i*string

    The Trade ID which uniquely identifies a trade. These are unique per combination of ticker, exchange, and TRF. For example: A trade for AAPL executed on NYSE and a trade for AAPL executed on NASDAQ could potentially have the same Trade ID.


    p*number

    The price of the trade. This is the actual dollar value per whole share of this trade. A trade of 100 shares with a price of $2.00 would be worth a total dollar value of $200.00.


    s*integer

    The size (volume) of the trade.


    t*integer

    The nanosecond accuracy SIP Unix Timestamp. This is the timestamp of when the SIP received this message from the exchange which produced it.


    x*integer

    The exchange ID. See Exchanges for Polygon.io's mapping of exchange IDs.


    minobject

    The most recent minute bar for this ticker.

    av*integer

    The accumulated volume.


    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    o*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    v*number

    The trading volume of the symbol in the given time period.


    vw*number

    The volume weighted average price.


    prevDayobject

    The previous day's bar for this ticker.

    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    o*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    v*number

    The trading volume of the symbol in the given time period.


    vw*number

    The volume weighted average price.


    tickerstring

    The exchange symbol that this item is traded under.


    todaysChangenumber

    The value of the change the from previous day.


    todaysChangePercnumber

    The percentage change since the previous day.


    updatedinteger

    The last updated timestamp.


    Was this helpful?
    Help us improve
    Response Object
    {
      "request_id": "657e430f1ae768891f018e08e03598d8",
      "status": "OK",
      "ticker": {
        "day": {
          "c": 120.4229,
          "h": 120.53,
          "l": 118.81,
          "o": 119.62,
          "v": 28727868,
          "vw": 119.725
        },
        "lastQuote": {
          "P": 120.47,
          "S": 4,
          "p": 120.46,
          "s": 8,
          "t": 1605195918507251700
        },
        "lastTrade": {
          "c": [
            14,
            41
          ],
          "i": "4046",
          "p": 120.47,
          "s": 236,
          "t": 1605195918306274000,
          "x": 10
        },
        "min": {
          "av": 28724441,
          "c": 120.4201,
          "h": 120.468,
          "l": 120.37,
          "o": 120.435,
          "v": 270796,
          "vw": 120.4129
        },
        "prevDay": {
          "c": 119.49,
          "h": 119.63,
          "l": 116.44,
          "o": 117.19,
          "v": 110597265,
          "vw": 118.4998
        },
        "ticker": "AAPL",
        "todaysChange": 0.98,
        "todaysChangePerc": 0.82,
        "updated": 1605195918306274000
      }
    }

    Simple Moving Average (SMA)

    get
    /v1/indicators/sma/{stockTicker}

    Get the simple moving average (SMA) for a ticker symbol over a given time range.

    Parameters

    The ticker symbol for which to get simple moving average (SMA) data.

    Query by timestamp. Either a date with the format YYYY-MM-DD or a millisecond timestamp.

    timestamp.ltless than
    timestamp.lteless than or equal to
    timestamp.gtgreater than
    timestamp.gtegreater than or equal to
    Learn More
  • The size of the aggregate time window.

  • Whether or not the aggregates used to calculate the simple moving average are adjusted for splits. By default, aggregates are adjusted. Set this to false to get results that are NOT adjusted for splits.

    The window size used to calculate the simple moving average (SMA). i.e. a window size of 10 with daily aggregates would result in a 10 day moving average.

  • The price in the aggregate which will be used to calculate the simple moving average. i.e. 'close' will result in using close prices to calculate the simple moving average (SMA).

  • Whether or not to include the aggregates used to calculate this indicator in the response.

  • The order in which to return the results, ordered by timestamp.

    Limit the number of results returned, default is 10 and max is 5000

    https://api.polygon.io/v1/indicators/sma/{stockTicker}?apiKey=*
    Response Attributes
    next_urlstring

    If present, this value can be used to fetch the next page of data.


    request_idstring

    A request id assigned by the server.


    resultsobject
    underlyingobject
    aggregatesarray
    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    n*integer

    The number of transactions in the aggregate window.


    o*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    t*number

    The Unix Msec timestamp for the start of the aggregate window.


    v*number

    The trading volume of the symbol in the given time period.


    vw*number

    The volume weighted average price.


    urlstring

    The URL which can be used to request the underlying aggregates used in this request.


    valuesarray
    timestampinteger

    The Unix Msec timestamp from the last aggregate used in this calculation.


    valuenumber

    The indicator value for this period.


    statusstring

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "next_url": "https://api.polygon.io/v1/indicators/sma/AAPL?cursor=YWN0aXZlPXRydWUmZGF0ZT0yMDIxLTA0LTI1JmxpbWl0PTEmb3JkZXI9YXNjJnBhZ2VfbWFya2VyPUElN0M5YWRjMjY0ZTgyM2E1ZjBiOGUyNDc5YmZiOGE1YmYwNDVkYzU0YjgwMDcyMWE2YmI1ZjBjMjQwMjU4MjFmNGZiJnNvcnQ9dGlja2Vy",
      "request_id": "a47d1beb8c11b6ae897ab76cdbbf35a3",
      "results": {
        "underlying": {
          "aggregates": [
            {
              "c": 75.0875,
              "h": 75.15,
              "l": 73.7975,
              "n": 1,
              "o": 74.06,
              "t": 1577941200000,
              "v": 135647456,
              "vw": 74.6099
            },
            {
              "c": 74.3575,
              "h": 75.145,
              "l": 74.125,
              "n": 1,
              "o": 74.2875,
              "t": 1578027600000,
              "v": 146535512,
              "vw": 74.7026
            }
          ],
          "url": "https://api.polygon.io/v2/aggs/ticker/AAPL/range/1/day/2003-01-01/2022-07-25"
        },
        "values": [
          {
            "timestamp": 1517562000016,
            "value": 140.139
          }
        ]
      },
      "status": "OK"
    }

    Exponential Moving Average (EMA)

    get
    /v1/indicators/ema/{stockTicker}

    Get the exponential moving average (EMA) for a ticker symbol over a given time range.

    Parameters

    The ticker symbol for which to get exponential moving average (EMA) data.

    Query by timestamp. Either a date with the format YYYY-MM-DD or a millisecond timestamp.

    timestamp.ltless than
    timestamp.lteless than or equal to
    timestamp.gtgreater than
    timestamp.gtegreater than or equal to
    Learn More
  • The size of the aggregate time window.

  • Whether or not the aggregates used to calculate the exponential moving average are adjusted for splits. By default, aggregates are adjusted. Set this to false to get results that are NOT adjusted for splits.

    The window size used to calculate the exponential moving average (EMA). i.e. a window size of 10 with daily aggregates would result in a 10 day moving average.

  • The price in the aggregate which will be used to calculate the exponential moving average. i.e. 'close' will result in using close prices to calculate the exponential moving average (EMA).

  • Whether or not to include the aggregates used to calculate this indicator in the response.

  • The order in which to return the results, ordered by timestamp.

    Limit the number of results returned, default is 10 and max is 5000

    https://api.polygon.io/v1/indicators/ema/{stockTicker}?apiKey=*
    Response Attributes
    next_urlstring

    If present, this value can be used to fetch the next page of data.


    request_idstring

    A request id assigned by the server.


    resultsobject
    underlyingobject
    aggregatesarray
    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    n*integer

    The number of transactions in the aggregate window.


    o*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    t*number

    The Unix Msec timestamp for the start of the aggregate window.


    v*number

    The trading volume of the symbol in the given time period.


    vw*number

    The volume weighted average price.


    urlstring

    The URL which can be used to request the underlying aggregates used in this request.


    valuesarray
    timestampinteger

    The Unix Msec timestamp from the last aggregate used in this calculation.


    valuenumber

    The indicator value for this period.


    statusstring

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "next_url": "https://api.polygon.io/v1/indicators/ema/AAPL?cursor=YWN0aXZlPXRydWUmZGF0ZT0yMDIxLTA0LTI1JmxpbWl0PTEmb3JkZXI9YXNjJnBhZ2VfbWFya2VyPUElN0M5YWRjMjY0ZTgyM2E1ZjBiOGUyNDc5YmZiOGE1YmYwNDVkYzU0YjgwMDcyMWE2YmI1ZjBjMjQwMjU4MjFmNGZiJnNvcnQ9dGlja2Vy",
      "request_id": "a47d1beb8c11b6ae897ab76cdbbf35a3",
      "results": {
        "underlying": {
          "url": "https://api.polygon.io/v2/aggs/ticker/AAPL/range/1/day/2003-01-01/2022-07-25"
        },
        "values": [
          {
            "timestamp": 1517562000016,
            "value": 140.139
          }
        ]
      },
      "status": "OK"
    }

    Moving Average Convergence/Divergence (MACD)

    get
    /v1/indicators/macd/{stockTicker}

    Get moving average convergence/divergence (MACD) data for a ticker symbol over a given time range.

    Parameters

    The ticker symbol for which to get MACD data.

    Query by timestamp. Either a date with the format YYYY-MM-DD or a millisecond timestamp.

    timestamp.ltless than
    timestamp.lteless than or equal to
    timestamp.gtgreater than
    timestamp.gtegreater than or equal to
    Learn More
  • The size of the aggregate time window.

  • Whether or not the aggregates used to calculate the MACD are adjusted for splits. By default, aggregates are adjusted. Set this to false to get results that are NOT adjusted for splits.

    The short window size used to calculate MACD data.

    The long window size used to calculate MACD data.

    The window size used to calculate the MACD signal line.

  • The price in the aggregate which will be used to calculate the MACD. i.e. 'close' will result in using close prices to calculate the MACD.

  • Whether or not to include the aggregates used to calculate this indicator in the response.

  • The order in which to return the results, ordered by timestamp.

    Limit the number of results returned, default is 10 and max is 5000

    https://api.polygon.io/v1/indicators/macd/{stockTicker}?apiKey=*
    Response Attributes
    next_urlstring

    If present, this value can be used to fetch the next page of data.


    request_idstring

    A request id assigned by the server.


    resultsobject
    underlyingobject
    aggregatesarray
    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    n*integer

    The number of transactions in the aggregate window.


    o*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    t*number

    The Unix Msec timestamp for the start of the aggregate window.


    v*number

    The trading volume of the symbol in the given time period.


    vw*number

    The volume weighted average price.


    urlstring

    The URL which can be used to request the underlying aggregates used in this request.


    valuesarray
    histogramnumber

    The indicator value for this period.


    signalnumber

    The indicator value for this period.


    timestampinteger

    The Unix Msec timestamp from the last aggregate used in this calculation.


    valuenumber

    The indicator value for this period.


    statusstring

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "next_url": "https://api.polygon.io/v1/indicators/macd/AAPL?cursor=YWN0aXZlPXRydWUmZGF0ZT0yMDIxLTA0LTI1JmxpbWl0PTEmb3JkZXI9YXNjJnBhZ2VfbWFya2VyPUElN0M5YWRjMjY0ZTgyM2E1ZjBiOGUyNDc5YmZiOGE1YmYwNDVkYzU0YjgwMDcyMWE2YmI1ZjBjMjQwMjU4MjFmNGZiJnNvcnQ9dGlja2Vy",
      "request_id": "a47d1beb8c11b6ae897ab76cdbbf35a3",
      "results": {
        "underlying": {
          "url": "https://api.polygon.io/v2/aggs/ticker/AAPL/range/1/day/2003-01-01/2022-07-25"
        },
        "values": [
          {
            "histogram": 38.3801666667,
            "signal": 106.9811666667,
            "timestamp": 1517562000016,
            "value": 145.3613333333
          },
          {
            "histogram": 41.098859136,
            "signal": 102.7386283473,
            "timestamp": 1517562001016,
            "value": 143.8374874833
          }
        ]
      },
      "status": "OK"
    }

    Relative Strength Index (RSI)

    get
    /v1/indicators/rsi/{stockTicker}

    Get the relative strength index (RSI) for a ticker symbol over a given time range.

    Parameters

    The ticker symbol for which to get relative strength index (RSI) data.

    Query by timestamp. Either a date with the format YYYY-MM-DD or a millisecond timestamp.

    timestamp.ltless than
    timestamp.lteless than or equal to
    timestamp.gtgreater than
    timestamp.gtegreater than or equal to
    Learn More
  • The size of the aggregate time window.

  • Whether or not the aggregates used to calculate the relative strength index are adjusted for splits. By default, aggregates are adjusted. Set this to false to get results that are NOT adjusted for splits.

    The window size used to calculate the relative strength index (RSI).

  • The price in the aggregate which will be used to calculate the relative strength index. i.e. 'close' will result in using close prices to calculate the relative strength index (RSI).

  • Whether or not to include the aggregates used to calculate this indicator in the response.

  • The order in which to return the results, ordered by timestamp.

    Limit the number of results returned, default is 10 and max is 5000

    https://api.polygon.io/v1/indicators/rsi/{stockTicker}?apiKey=*
    Response Attributes
    next_urlstring

    If present, this value can be used to fetch the next page of data.


    request_idstring

    A request id assigned by the server.


    resultsobject
    underlyingobject
    aggregatesarray
    c*number

    The close price for the symbol in the given time period.


    h*number

    The highest price for the symbol in the given time period.


    l*number

    The lowest price for the symbol in the given time period.


    n*integer

    The number of transactions in the aggregate window.


    o*number

    The open price for the symbol in the given time period.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    t*number

    The Unix Msec timestamp for the start of the aggregate window.


    v*number

    The trading volume of the symbol in the given time period.


    vw*number

    The volume weighted average price.


    urlstring

    The URL which can be used to request the underlying aggregates used in this request.


    valuesarray
    timestampinteger

    The Unix Msec timestamp from the last aggregate used in this calculation.


    valuenumber

    The indicator value for this period.


    statusstring

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "next_url": "https://api.polygon.io/v1/indicators/rsi/AAPL?cursor=YWN0aXZlPXRydWUmZGF0ZT0yMDIxLTA0LTI1JmxpbWl0PTEmb3JkZXI9YXNjJnBhZ2VfbWFya2VyPUElN0M5YWRjMjY0ZTgyM2E1ZjBiOGUyNDc5YmZiOGE1YmYwNDVkYzU0YjgwMDcyMWE2YmI1ZjBjMjQwMjU4MjFmNGZiJnNvcnQ9dGlja2Vy",
      "request_id": "a47d1beb8c11b6ae897ab76cdbbf35a3",
      "results": {
        "underlying": {
          "url": "https://api.polygon.io/v2/aggs/ticker/AAPL/range/1/day/2003-01-01/2022-07-25"
        },
        "values": [
          {
            "timestamp": 1517562000016,
            "value": 140.139
          }
        ]
      },
      "status": "OK"
    }

    Tickers

    get
    /v3/reference/tickers

    Query all ticker symbols which are supported by Polygon.io. This API currently includes Stocks/Equities, Crypto, and Forex.

    Parameters

    Specify a ticker symbol. Defaults to empty string which queries all tickers.

    ticker.ltless than
    ticker.lteless than or equal to
    ticker.gtgreater than
    ticker.gtegreater than or equal to
    Learn More
  • Specify the type of the tickers. Find the types that we support via our Ticker Types API. Defaults to empty string which queries all types.

  • Filter by market type. By default all markets are included.

    Specify the primary exchange of the asset in the ISO code format. Find more information about the ISO codes at the ISO org website. Defaults to empty string which queries all exchanges.

    Specify the CUSIP code of the asset you want to search for. Find more information about CUSIP codes at their website. Defaults to empty string which queries all CUSIPs.

    Note: Although you can query by CUSIP, due to legal reasons we do not return the CUSIP in the response.

    Specify the CIK of the asset you want to search for. Find more information about CIK codes at their website. Defaults to empty string which queries all CIKs.

    Specify a point in time to retrieve tickers available on that date. Defaults to the most recent available date.

    Search for terms within the ticker and/or company name.

  • Specify if the tickers returned should be actively traded on the queried date. Default is true.

  • Order results based on the sort field.

    Limit the number of results returned, default is 100 and max is 1000.

  • Sort field used for ordering.

    https://api.polygon.io/v3/reference/tickers?apiKey=*
    Response Attributes
    countinteger

    The total number of results for this request.


    next_urlstring

    If present, this value can be used to fetch the next page of data.


    request_idstring

    A request id assigned by the server.


    resultsarray

    An array of tickers that match your query.

    Note: Although you can query by CUSIP, due to legal reasons we do not return the CUSIP in the response.

    activeboolean

    Whether or not the asset is actively traded. False means the asset has been delisted.


    cikstring

    The CIK number for this ticker. Find more information here.


    composite_figistring

    The composite OpenFIGI number for this ticker. Find more information here


    currency_namestring

    The name of the currency that this asset is traded with.


    delisted_utcstring

    The last date that the asset was traded.


    last_updated_utcstring

    The information is accurate up to this time.


    locale*enum [us, global]

    The locale of the asset.


    market*enum [stocks, crypto, fx, otc]

    The market type of the asset.


    name*string

    The name of the asset. For stocks/equities this will be the companies registered name. For crypto/fx this will be the name of the currency or coin pair.


    primary_exchangestring

    The ISO code of the primary listing exchange for this asset.


    share_class_figistring

    The share Class OpenFIGI number for this ticker. Find more information here


    ticker*string

    The exchange symbol that this item is traded under.


    typestring

    The type of the asset. Find the types that we support via our Ticker Types API.


    statusstring

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "count": 1,
      "next_url": "https://api.polygon.io/v3/reference/tickers?cursor=YWN0aXZlPXRydWUmZGF0ZT0yMDIxLTA0LTI1JmxpbWl0PTEmb3JkZXI9YXNjJnBhZ2VfbWFya2VyPUElN0M5YWRjMjY0ZTgyM2E1ZjBiOGUyNDc5YmZiOGE1YmYwNDVkYzU0YjgwMDcyMWE2YmI1ZjBjMjQwMjU4MjFmNGZiJnNvcnQ9dGlja2Vy",
      "request_id": "e70013d92930de90e089dc8fa098888e",
      "results": [
        {
          "active": true,
          "cik": "0001090872",
          "composite_figi": "BBG000BWQYZ5",
          "currency_name": "usd",
          "last_updated_utc": "2021-04-25T00:00:00Z",
          "locale": "us",
          "market": "stocks",
          "name": "Agilent Technologies Inc.",
          "primary_exchange": "XNYS",
          "share_class_figi": "BBG001SCTQY4",
          "ticker": "A",
          "type": "CS"
        }
      ],
      "status": "OK"
    }

    Ticker Details v3

    get
    /v3/reference/tickers/{ticker}

    Get a single ticker supported by Polygon.io. This response will have detailed information about the ticker and the company behind it.

    Parameters

    The ticker symbol of the asset.

    Specify a point in time to get information about the ticker available on that date. When retrieving information from SEC filings, we compare this date with the period of report date on the SEC filing.

    For example, consider an SEC filing submitted by AAPL on 2019-07-31, with a period of report date ending on 2019-06-29. That means that the filing was submitted on 2019-07-31, but the filing was created based on information from 2019-06-29. If you were to query for AAPL details on 2019-06-29, the ticker details would include information from the SEC filing.

    Defaults to the most recent available date.

    https://api.polygon.io/v3/reference/tickers/{ticker}?apiKey=*
    Response Attributes
    countinteger

    The total number of results for this request.


    request_idstring

    A request id assigned by the server.


    resultsobject

    Ticker with details.

    active*boolean

    Whether or not the asset is actively traded. False means the asset has been delisted.


    addressobject
    address1string

    The first line of the company's headquarters address.


    citystring

    The city of the company's headquarters address.


    postal_codestring

    The postal code of the company's headquarters address.


    statestring

    The state of the company's headquarters address.


    brandingobject
    icon_urlstring

    A link to this ticker's company's icon. Icon's are generally smaller, square images that represent the company at a glance. Note that you must provide an API key when accessing this URL. See the "Authentication" section at the top of this page for more details.


    logo_urlstring

    A link to this ticker's company's logo. Note that you must provide an API key when accessing this URL. See the "Authentication" section at the top of this page for more details.


    cikstring

    The CIK number for this ticker. Find more information here.


    composite_figistring

    The composite OpenFIGI number for this ticker. Find more information here


    currency_name*string

    The name of the currency that this asset is traded with.


    delisted_utcstring

    The last date that the asset was traded.


    descriptionstring

    A description of the company and what they do/offer.


    homepage_urlstring

    The URL of the company's website homepage.


    list_datestring

    The date that the symbol was first publicly listed in the format YYYY-MM-DD.


    locale*enum [us, global]

    The locale of the asset.


    market*enum [stocks, crypto, fx, otc]

    The market type of the asset.


    market_capnumber

    The most recent close price of the ticker multiplied by weighted outstanding shares.


    name*string

    The name of the asset. For stocks/equities this will be the companies registered name. For crypto/fx this will be the name of the currency or coin pair.


    phone_numberstring

    The phone number for the company behind this ticker.


    primary_exchangestring

    The ISO code of the primary listing exchange for this asset.


    share_class_figistring

    The share Class OpenFIGI number for this ticker. Find more information here


    share_class_shares_outstandingnumber

    The recorded number of outstanding shares for this particular share class.


    sic_codestring

    The standard industrial classification code for this ticker. For a list of SIC Codes, see the SEC's SIC Code List.


    sic_descriptionstring

    A description of this ticker's SIC code.


    ticker*string

    The exchange symbol that this item is traded under.


    ticker_rootstring

    The root of a specified ticker. For example, the root of BRK.A is BRK.


    ticker_suffixstring

    The suffix of a specified ticker. For example, the suffix of BRK.A is A.


    total_employeesnumber

    The approximate number of employees for the company.


    typestring

    The type of the asset. Find the types that we support via our Ticker Types API.


    weighted_shares_outstandingnumber

    The shares outstanding calculated assuming all shares of other share classes are converted to this share class.


    statusstring

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "request_id": "31d59dda-80e5-4721-8496-d0d32a654afe",
      "results": {
        "active": true,
        "address": {
          "address1": "One Apple Park Way",
          "city": "Cupertino",
          "postal_code": "95014",
          "state": "CA"
        },
        "branding": {
          "icon_url": "https://api.polygon.io/v1/reference/company-branding/d3d3LmFwcGxlLmNvbQ/images/2022-01-10_icon.png",
          "logo_url": "https://api.polygon.io/v1/reference/company-branding/d3d3LmFwcGxlLmNvbQ/images/2022-01-10_logo.svg"
        },
        "cik": "0000320193",
        "composite_figi": "BBG000B9XRY4",
        "currency_name": "usd",
        "description": "Apple designs a wide variety of consumer electronic devices, including smartphones (iPhone), tablets (iPad), PCs (Mac), smartwatches (Apple Watch), AirPods, and TV boxes (Apple TV), among others. The iPhone makes up the majority of Apple's total revenue. In addition, Apple offers its customers a variety of services such as Apple Music, iCloud, Apple Care, Apple TV+, Apple Arcade, Apple Card, and Apple Pay, among others. Apple's products run internally developed software and semiconductors, and the firm is well known for its integration of hardware, software and services. Apple's products are distributed online as well as through company-owned stores and third-party retailers. The company generates roughly 40% of its revenue from the Americas, with the remainder earned internationally.",
        "homepage_url": "https://www.apple.com",
        "list_date": "1980-12-12",
        "locale": "us",
        "market": "stocks",
        "market_cap": 2771126040150,
        "name": "Apple Inc.",
        "phone_number": "(408) 996-1010",
        "primary_exchange": "XNAS",
        "share_class_figi": "BBG001S5N8V8",
        "share_class_shares_outstanding": 16406400000,
        "sic_code": "3571",
        "sic_description": "ELECTRONIC COMPUTERS",
        "ticker": "AAPL",
        "ticker_root": "AAPL",
        "total_employees": 154000,
        "type": "CS",
        "weighted_shares_outstanding": 16334371000
      },
      "status": "OK"
    }

    Ticker Events

    get
    /vX/reference/tickers/{id}/events

    Get a timeline of events for the entity associated with the given ticker, CUSIP, or Composite FIGI.

    This API is experimental.
    Parameters

    Identifier of an asset. This can currently be a Ticker, CUSIP, or Composite FIGI. When given a ticker, we return events for the entity currently represented by that ticker. To find events for entities previously associated with a ticker, find the relevant identifier using the Ticker Details Endpoint

    A comma-separated list of the types of event to include. Currently ticker_change is the only supported event_type. Leave blank to return all supported event_types.

    https://api.polygon.io/vX/reference/tickers/{id}/events?apiKey=*
    Response Attributes
    request_idstring

    A request id assigned by the server.


    resultsobject
    eventsarray [undefined]

    namestring

    statusstring

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "request_id": "31d59dda-80e5-4721-8496-d0d32a654afe",
      "results": {
        "events": [
          {
            "date": "2022-06-09",
            "ticker_change": {
              "ticker": "META"
            },
            "type": "ticker_change"
          },
          {
            "date": "2012-05-18",
            "ticker_change": {
              "ticker": "FB"
            },
            "type": "ticker_change"
          }
        ],
        "name": "Meta Platforms, Inc. Class A Common Stock"
      },
      "status": "OK"
    }

    Ticker News

    get
    /v2/reference/news

    Get the most recent news articles relating to a stock ticker symbol, including a summary of the article and a link to the original source.

    Parameters

    Return results that contain this ticker.

    ticker.ltless than
    ticker.lteless than or equal to
    ticker.gtgreater than
    ticker.gtegreater than or equal to
    Learn More

    Return results published on, before, or after this date.

    published_utc.ltless than
    published_utc.lteless than or equal to
    published_utc.gtgreater than
    published_utc.gtegreater than or equal to
    Learn More
  • Order results based on the sort field.

    Limit the number of results returned, default is 10 and max is 1000.

  • Sort field used for ordering.

    https://api.polygon.io/v2/reference/news?apiKey=*
    Response Attributes
    countinteger

    The total number of results for this request.


    next_urlstring

    If present, this value can be used to fetch the next page of data.


    request_idstring

    A request id assigned by the server.


    resultsarray
    amp_urlstring

    The mobile friendly Accelerated Mobile Page (AMP) URL.


    article_url*string

    A link to the news article.


    author*string

    The article's author.


    descriptionstring

    A description of the article.


    id*string

    Unique identifier for the article.


    image_urlstring

    The article's image URL.


    keywordsarray [string]

    The keywords associated with the article (which will vary depending on the publishing source).


    published_utc*string

    The date the article was published on.


    publisher*object
    favicon_urlstring

    The publisher's homepage favicon URL.


    homepage_url*string

    The publisher's homepage URL.


    logo_url*string

    The publisher's logo URL.


    name*string

    The publisher's name.


    tickers*array [string]

    The ticker symbols associated with the article.


    title*string

    The title of the news article.


    statusstring

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "count": 1,
      "next_url": "https://api.polygon.io:443/v2/reference/news?cursor=eyJsaW1pdCI6MSwic29ydCI6InB1Ymxpc2hlZF91dGMiLCJvcmRlciI6ImFzY2VuZGluZyIsInRpY2tlciI6e30sInB1Ymxpc2hlZF91dGMiOnsiZ3RlIjoiMjAyMS0wNC0yNiJ9LCJzZWFyY2hfYWZ0ZXIiOlsxNjE5NDA0Mzk3MDAwLG51bGxdfQ",
      "request_id": "831afdb0b8078549fed053476984947a",
      "results": [
        {
          "amp_url": "https://amp.benzinga.com/amp/content/20784086",
          "article_url": "https://www.benzinga.com/markets/cryptocurrency/21/04/20784086/cathie-wood-adds-more-coinbase-skillz-trims-square",
          "author": "Rachit  Vats",
          "description": "<p>Cathie Wood-led Ark Investment Management on Friday snapped up another 221,167 shares of the cryptocurrency exchange <strong>Coinbase Global Inc </strong>(NASDAQ <a class=\"ticker\" href=\"https://www.benzinga.com/stock/coin#NASDAQ\">COIN</a>) worth about $64.49 million on the stock&rsquo;s Friday&rsquo;s dip and also its fourth-straight loss.</p>\n<p>The investment firm&rsquo;s <strong>Ark Innovation ETF</strong> (NYSE <a class=\" ticker\" href=\"https://www.benzinga.com/stock/arkk#NYSE\">ARKK</a>) bought the shares of the company that closed 0.63% lower at $291.60 on Friday, giving the cryptocurrency exchange a market cap of $58.09 billion. Coinbase&rsquo;s market cap has dropped from $85.8 billion on its blockbuster listing earlier this month.</p>\n<p>The New York-based company also added another 3,873 shares of the mobile gaming company <strong>Skillz Inc</strong> (NYSE <a class=\" ticker\" href=\"https://www.benzinga.com/stock/sklz#NYSE\">SKLZ</a>), <a href=\"http://www.benzinga.com/markets/cryptocurrency/21/04/20762794/cathie-woods-ark-loads-up-another-1-2-million-shares-in-skillz-also-adds-coinbase-draftkin\" >just a day after</a> snapping 1.2 million shares of the stock.</p>\n <p>ARKK bought the shares of the company which closed ...</p><p><a href=https://www.benzinga.com/markets/cryptocurrency/21/04/20784086/cathie-wood-adds-more-coinbase-skillz-trims-square alt=Cathie Wood Adds More Coinbase, Skillz, Trims Square>Full story available on Benzinga.com</a></p>",
          "id": "nJsSJJdwViHZcw5367rZi7_qkXLfMzacXBfpv-vD9UA",
          "image_url": "https://cdn2.benzinga.com/files/imagecache/og_image_social_share_1200x630/images/story/2012/andre-francois-mckenzie-auhr4gcqcce-unsplash.jpg?width=720",
          "keywords": [
            "Sector ETFs",
            "Penny Stocks",
            "Cryptocurrency",
            "Small Cap",
            "Markets",
            "Trading Ideas",
            "ETFs"
          ],
          "published_utc": "2021-04-26T02:33:17Z",
          "publisher": {
            "favicon_url": "https://s3.polygon.io/public/public/assets/news/favicons/benzinga.ico",
            "homepage_url": "https://www.benzinga.com/",
            "logo_url": "https://s3.polygon.io/public/public/assets/news/logos/benzinga.svg",
            "name": "Benzinga"
          },
          "tickers": [
            "DOCU",
            "DDD",
            "NIU",
            "ARKF",
            "NVDA",
            "SKLZ",
            "PCAR",
            "MASS",
            "PSTI",
            "SPFR",
            "TREE",
            "PHR",
            "IRDM",
            "BEAM",
            "ARKW",
            "ARKK",
            "ARKG",
            "PSTG",
            "SQ",
            "IONS",
            "SYRS"
          ],
          "title": "Cathie Wood Adds More Coinbase, Skillz, Trims Square"
        }
      ],
      "status": "OK"
    }

    Ticker Types

    get
    /v3/reference/tickers/types

    List all ticker types that Polygon.io has.

    Parameters
  • Filter by asset class.

  • Filter by locale.

    https://api.polygon.io/v3/reference/tickers/types?apiKey=*
    Response Attributes
    countinteger

    The total number of results for this request.


    request_id*string

    A request ID assigned by the server.


    resultsarray
    asset_class*enum [stocks, options, crypto, fx]

    An identifier for a group of similar financial instruments.


    code*string

    A code used by Polygon.io to refer to this ticker type.


    description*string

    A short description of this ticker type.


    locale*enum [us, global]

    An identifier for a geographical location.


    status*string

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "count": 1,
      "request_id": "31d59dda-80e5-4721-8496-d0d32a654afe",
      "results": [
        {
          "asset_class": "stocks",
          "code": "CS",
          "description": "Common Stock",
          "locale": "us"
        }
      ],
      "status": "OK"
    }

    Market Holidays

    get
    /v1/marketstatus/upcoming

    Get upcoming market holidays and their open/close times.

    https://api.polygon.io/v1/marketstatus/upcoming?apiKey=*
    Response Attributes
    responsearray
    closestring

    The market close time on the holiday (if it's not closed).


    datestring

    The date of the holiday.


    exchangestring

    Which market the record is for.


    namestring

    The name of the holiday.


    openstring

    The market open time on the holiday (if it's not closed).


    statusstring

    The status of the market on the holiday.


    Was this helpful?
    Help us improve
    Response Object
    [
      {
        "date": "2020-11-26T00:00:00.000Z",
        "exchange": "NYSE",
        "name": "Thanksgiving",
        "status": "closed"
      },
      {
        "date": "2020-11-26T00:00:00.000Z",
        "exchange": "NASDAQ",
        "name": "Thanksgiving",
        "status": "closed"
      },
      {
        "date": "2020-11-26T00:00:00.000Z",
        "exchange": "OTC",
        "name": "Thanksgiving",
        "status": "closed"
      },
      {
        "close": "2020-11-27T18:00:00.000Z",
        "date": "2020-11-27T00:00:00.000Z",
        "exchange": "NASDAQ",
        "name": "Thanksgiving",
        "open": "2020-11-27T14:30:00.000Z",
        "status": "early-close"
      },
      {
        "close": "2020-11-27T18:00:00.000Z",
        "date": "2020-11-27T00:00:00.000Z",
        "exchange": "NYSE",
        "name": "Thanksgiving",
        "open": "2020-11-27T14:30:00.000Z",
        "status": "early-close"
      }
    ]

    Market Status

    get
    /v1/marketstatus/now

    Get the current trading status of the exchanges and overall financial markets.

    https://api.polygon.io/v1/marketstatus/now?apiKey=*
    Response Attributes
    afterHoursboolean

    Whether or not the market is in post-market hours.


    currenciesobject
    cryptostring

    The status of the crypto market.


    fxstring

    The status of the forex market.


    earlyHoursboolean

    Whether or not the market is in pre-market hours.


    exchangesobject
    nasdaqstring

    The status of the Nasdaq market.


    nysestring

    The status of the NYSE market.


    otcstring

    The status of the OTC market.


    marketstring

    The status of the market as a whole.


    serverTimestring

    The current time of the server.


    Was this helpful?
    Help us improve
    Response Object
    {
      "afterHours": true,
      "currencies": {
        "crypto": "open",
        "fx": "open"
      },
      "earlyHours": false,
      "exchanges": {
        "nasdaq": "extended-hours",
        "nyse": "extended-hours",
        "otc": "closed"
      },
      "market": "extended-hours",
      "serverTime": "2020-11-10T22:37:37.000Z"
    }

    Stock Splits v3

    get
    /v3/reference/splits

    Get a list of historical stock splits, including the ticker symbol, the execution date, and the factors of the split ratio.

    Parameters

    Return the stock splits that contain this ticker.

    ticker.ltless than
    ticker.lteless than or equal to
    ticker.gtgreater than
    ticker.gtegreater than or equal to
    Learn More

    Query by execution date with the format YYYY-MM-DD.

    execution_date.ltless than
    execution_date.lteless than or equal to
    execution_date.gtgreater than
    execution_date.gtegreater than or equal to
    Learn More
  • Query for reverse stock splits. A split ratio where split_from is greater than split_to represents a reverse split. By default this filter is not used.

  • Order results based on the sort field.

    Limit the number of results returned, default is 10 and max is 1000.

  • Sort field used for ordering.

    https://api.polygon.io/v3/reference/splits?apiKey=*
    Response Attributes
    next_urlstring

    If present, this value can be used to fetch the next page of data.


    request_idstring

    resultsarray
    execution_datestring

    The execution date of the stock split. On this date the stock split was applied.


    split_from*number

    The second number in the split ratio.

    For example: In a 2-for-1 split, split_from would be 1.


    split_to*number

    The first number in the split ratio.

    For example: In a 2-for-1 split, split_to would be 2.


    tickerstring

    The ticker symbol of the stock split.


    statusstring

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "next_url": "https://api.polygon.io/v3/splits/AAPL?cursor=YWN0aXZlPXRydWUmZGF0ZT0yMDIxLTA0LTI1JmxpbWl0PTEmb3JkZXI9YXNjJnBhZ2VfbWFya2VyPUElN0M5YWRjMjY0ZTgyM2E1ZjBiOGUyNDc5YmZiOGE1YmYwNDVkYzU0YjgwMDcyMWE2YmI1ZjBjMjQwMjU4MjFmNGZiJnNvcnQ9dGlja2Vy",
      "results": [
        {
          "execution_date": "2020-08-31",
          "split_from": 1,
          "split_to": 4,
          "ticker": "AAPL"
        },
        {
          "execution_date": "2005-02-28",
          "split_from": 1,
          "split_to": 2,
          "ticker": "AAPL"
        }
      ],
      "status": "OK"
    }

    Dividends v3

    get
    /v3/reference/dividends

    Get a list of historical cash dividends, including the ticker symbol, declaration date, ex-dividend date, record date, pay date, frequency, and amount.

    Parameters

    Return the dividends that contain this ticker.

    ticker.ltless than
    ticker.lteless than or equal to
    ticker.gtgreater than
    ticker.gtegreater than or equal to
    Learn More

    Query by ex-dividend date with the format YYYY-MM-DD.

    ex_dividend_date.ltless than
    ex_dividend_date.lteless than or equal to
    ex_dividend_date.gtgreater than
    ex_dividend_date.gtegreater than or equal to
    Learn More

    Query by record date with the format YYYY-MM-DD.

    record_date.ltless than
    record_date.lteless than or equal to
    record_date.gtgreater than
    record_date.gtegreater than or equal to
    Learn More

    Query by declaration date with the format YYYY-MM-DD.

    declaration_date.ltless than
    declaration_date.lteless than or equal to
    declaration_date.gtgreater than
    declaration_date.gtegreater than or equal to
    Learn More

    Query by pay date with the format YYYY-MM-DD.

    pay_date.ltless than
    pay_date.lteless than or equal to
    pay_date.gtgreater than
    pay_date.gtegreater than or equal to
    Learn More
  • Query by the number of times per year the dividend is paid out. Possible values are 0 (one-time), 1 (annually), 2 (bi-annually), 4 (quarterly), and 12 (monthly).

    Query by the cash amount of the dividend.

    cash_amount.ltless than
    cash_amount.lteless than or equal to
    cash_amount.gtgreater than
    cash_amount.gtegreater than or equal to
    Learn More
  • Query by the type of dividend. Dividends that have been paid and/or are expected to be paid on consistent schedules are denoted as CD. Special Cash dividends that have been paid that are infrequent or unusual, and/or can not be expected to occur in the future are denoted as SC.

  • Order results based on the sort field.

    Limit the number of results returned, default is 10 and max is 1000.

  • Sort field used for ordering.

    https://api.polygon.io/v3/reference/dividends?apiKey=*
    Response Attributes
    next_urlstring

    If present, this value can be used to fetch the next page of data.


    request_id*string

    resultsarray
    cash_amount*number

    The cash amount of the dividend per share owned.


    currencystring

    The currency in which the dividend is paid.


    declaration_datestring

    The date that the dividend was announced.


    dividend_type*enum [CD, SC, LT, ST]

    The type of dividend. Dividends that have been paid and/or are expected to be paid on consistent schedules are denoted as CD. Special Cash dividends that have been paid that are infrequent or unusual, and/or can not be expected to occur in the future are denoted as SC. Long-Term and Short-Term capital gain distributions are denoted as LT and ST, respectively.


    ex_dividend_date*string

    The date that the stock first trades without the dividend, determined by the exchange.


    frequency*integer

    The number of times per year the dividend is paid out. Possible values are 0 (one-time), 1 (annually), 2 (bi-annually), 4 (quarterly), and 12 (monthly).


    pay_datestring

    The date that the dividend is paid out.


    record_datestring

    The date that the stock must be held to receive the dividend, set by the company.


    ticker*string

    The ticker symbol of the dividend.


    statusstring

    Was this helpful?
    Help us improve
    Response Object
    {
      "next_url": "https://api.polygon.io/v3/reference/dividends/AAPL?cursor=YWN0aXZlPXRydWUmZGF0ZT0yMDIxLTA0LTI1JmxpbWl0PTEmb3JkZXI9YXNjJnBhZ2VfbWFya2VyPUElN0M5YWRjMjY0ZTgyM2E1ZjBiOGUyNDc5YmZiOGE1YmYwNDVkYzU0YjgwMDcyMWE2YmI1ZjBjMjQwMjU4MjFmNGZiJnNvcnQ9dGlja2Vy",
      "results": [
        {
          "cash_amount": 0.22,
          "declaration_date": "2021-10-28",
          "dividend_type": "CD",
          "ex_dividend_date": "2021-11-05",
          "frequency": 4,
          "pay_date": "2021-11-11",
          "record_date": "2021-11-08",
          "ticker": "AAPL"
        },
        {
          "cash_amount": 0.22,
          "declaration_date": "2021-07-27",
          "dividend_type": "CD",
          "ex_dividend_date": "2021-08-06",
          "frequency": 4,
          "pay_date": "2021-08-12",
          "record_date": "2021-08-09",
          "ticker": "AAPL"
        }
      ],
      "status": "OK"
    }

    Stock Financials vX

    get
    /vX/reference/financials

    Get historical financial data for a stock ticker. The financials data is extracted from XBRL from company SEC filings using the methodology outlined here.

    This API is experimental.
    Parameters

    Query by company ticker.

    Query by central index key (CIK) Number

    Query by company name.

    company_name.searchpartial-match text search
    Learn More

    Query by standard industrial classification (SIC)

    Query by the date when the filing with financials data was filed in YYYY-MM-DD format.

    Best used when querying over date ranges to find financials based on filings that happen in a time period.

    Examples:

    To get financials based on filings that have happened after January 1, 2009 use the query param filing_date.gte=2009-01-01

    To get financials based on filings that happened in the year 2009 use the query params filing_date.gte=2009-01-01&filing_date.lt=2010-01-01

    filing_date.ltless than
    filing_date.lteless than or equal to
    filing_date.gtgreater than
    filing_date.gtegreater than or equal to
    Learn More

    The period of report for the filing with financials data in YYYY-MM-DD format.

    period_of_report_date.ltless than
    period_of_report_date.lteless than or equal to
    period_of_report_date.gtgreater than
    period_of_report_date.gtegreater than or equal to
    Learn More
  • Query by timeframe. Annual financials originate from 10-K filings, and quarterly financials originate from 10-Q filings. Note: Most companies do not file quarterly reports for Q4 and instead include those financials in their annual report, so some companies my not return quarterly financials for Q4

  • Whether or not to include the xpath and formula attributes for each financial data point. See the xpath and formula response attributes for more info. False by default.

  • Order results based on the sort field.

    Limit the number of results returned, default is 10 and max is 100.

  • Sort field used for ordering.

    https://api.polygon.io/vX/reference/financials?apiKey=*
    Response Attributes
    count*integer

    The total number of results for this request.


    next_urlstring

    If present, this value can be used to fetch the next page of data.


    request_id*string

    A request id assigned by the server.


    results*array
    acceptance_datetime

    The datetime (EST timezone) the filing was accepted by EDGAR in YYYYMMDDHHMMSS format.


    cik*string

    The CIK number for the company.


    company_name*string

    The company name.


    end_datestring

    The end date of the period that these financials cover in YYYYMMDD format.


    filing_date

    The date that the SEC filing which these financials were derived from was made available. Note that this is not necessarily the date when this information became public, as some companies may publish a press release before filing with the SEC.


    financials*object
    balance_sheetobject

    Balance sheet. Note that the keys in this object can be any of the balance sheet concepts defined in this table of fundamental accounting concepts but converted to snake_case.

    *object

    An individual financial data point.

    formula

    The name of the formula used to derive this data point from other financial data points. Information about the formulas can be found here. This value is only returned for data points that are not explicitly expressed within the XBRL source file when the include_sources query parameter is true.


    label*string

    A human readable label for the financial data point.


    order*integer

    An indicator of what order within the statement that you would find this data point.


    unit*string

    The unit of the financial data point.


    value*number

    The value of the financial data point.


    xpath

    The XPath 1.0 query that identifies the fact from within the XBRL source file. This value is only returned for data points taken directly from XBRL when the include_sources query parameter is true.


    cash_flow_statementobject

    Cash flow statement. Note that the keys in this object can be any of the cash flow statement concepts defined in this table of fundamental accounting concepts but converted to snake_case. See the attributes of the objects within balance_sheet for more details.

    comprehensive_incomeobject

    Comprehensive income. Note that the keys in this object can be any of the comprehensive income statement concepts defined in this table of fundamental accounting concepts but converted to snake_case. See the attributes of the objects within balance_sheet for more details.

    income_statementobject

    Income statement. Note that the keys in this object can be any of the income statement concepts defined in this table of fundamental accounting concepts but converted to snake_case. See the attributes of the objects within balance_sheet for more details.

    fiscal_period*string

    Fiscal period of the report according to the company (Q1, Q2, Q3, Q4, or FY).


    fiscal_year*string

    Fiscal year of the report according to the company.


    source_filing_file_url*

    The URL of the specific XBRL instance document within the SEC filing that these financials were derived from.


    source_filing_url*string

    The URL of the SEC filing that these financials were derived from.


    start_datestring

    The start date of the period that these financials cover in YYYYMMDD format.


    status*string

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "count": 1,
      "next_url": "https://api.polygon.io/vX/reference/financials?",
      "request_id": "55eb92ed43b25568ab0cce159830ea34",
      "results": [
        {
          "cik": "0001650729",
          "company_name": "SiteOne Landscape Supply, Inc.",
          "end_date": "2022-04-03",
          "filing_date": "2022-05-04",
          "financials": {
            "balance_sheet": {
              "assets": {
                "label": "Assets",
                "order": 100,
                "unit": "USD",
                "value": 2407400000
              },
              "current_assets": {
                "label": "Current Assets",
                "order": 200,
                "unit": "USD",
                "value": 1385900000
              },
              "current_liabilities": {
                "label": "Current Liabilities",
                "order": 700,
                "unit": "USD",
                "value": 597500000
              },
              "equity": {
                "label": "Equity",
                "order": 1400,
                "unit": "USD",
                "value": 1099200000
              },
              "equity_attributable_to_noncontrolling_interest": {
                "label": "Equity Attributable To Noncontrolling Interest",
                "order": 1500,
                "unit": "USD",
                "value": 0
              },
              "equity_attributable_to_parent": {
                "label": "Equity Attributable To Parent",
                "order": 1600,
                "unit": "USD",
                "value": 1099200000
              },
              "liabilities": {
                "label": "Liabilities",
                "order": 600,
                "unit": "USD",
                "value": 1308200000
              },
              "liabilities_and_equity": {
                "label": "Liabilities And Equity",
                "order": 1900,
                "unit": "USD",
                "value": 2407400000
              },
              "noncurrent_assets": {
                "label": "Noncurrent Assets",
                "order": 300,
                "unit": "USD",
                "value": 1021500000
              },
              "noncurrent_liabilities": {
                "label": "Noncurrent Liabilities",
                "order": 800,
                "unit": "USD",
                "value": 710700000
              }
            },
            "cash_flow_statement": {
              "exchange_gains_losses": {
                "label": "Exchange Gains/Losses",
                "order": 1000,
                "unit": "USD",
                "value": 100000
              },
              "net_cash_flow": {
                "label": "Net Cash Flow",
                "order": 1100,
                "unit": "USD",
                "value": -8600000
              },
              "net_cash_flow_continuing": {
                "label": "Net Cash Flow, Continuing",
                "order": 1200,
                "unit": "USD",
                "value": -8700000
              },
              "net_cash_flow_from_financing_activities": {
                "label": "Net Cash Flow From Financing Activities",
                "order": 700,
                "unit": "USD",
                "value": 150600000
              },
              "net_cash_flow_from_financing_activities_continuing": {
                "label": "Net Cash Flow From Financing Activities, Continuing",
                "order": 800,
                "unit": "USD",
                "value": 150600000
              },
              "net_cash_flow_from_investing_activities": {
                "label": "Net Cash Flow From Investing Activities",
                "order": 400,
                "unit": "USD",
                "value": -41000000
              },
              "net_cash_flow_from_investing_activities_continuing": {
                "label": "Net Cash Flow From Investing Activities, Continuing",
                "order": 500,
                "unit": "USD",
                "value": -41000000
              },
              "net_cash_flow_from_operating_activities": {
                "label": "Net Cash Flow From Operating Activities",
                "order": 100,
                "unit": "USD",
                "value": -118300000
              },
              "net_cash_flow_from_operating_activities_continuing": {
                "label": "Net Cash Flow From Operating Activities, Continuing",
                "order": 200,
                "unit": "USD",
                "value": -118300000
              }
            },
            "comprehensive_income": {
              "comprehensive_income_loss": {
                "label": "Comprehensive Income/Loss",
                "order": 100,
                "unit": "USD",
                "value": 40500000
              },
              "comprehensive_income_loss_attributable_to_noncontrolling_interest": {
                "label": "Comprehensive Income/Loss Attributable To Noncontrolling Interest",
                "order": 200,
                "unit": "USD",
                "value": 0
              },
              "comprehensive_income_loss_attributable_to_parent": {
                "label": "Comprehensive Income/Loss Attributable To Parent",
                "order": 300,
                "unit": "USD",
                "value": 40500000
              },
              "other_comprehensive_income_loss": {
                "label": "Other Comprehensive Income/Loss",
                "order": 400,
                "unit": "USD",
                "value": 40500000
              },
              "other_comprehensive_income_loss_attributable_to_parent": {
                "label": "Other Comprehensive Income/Loss Attributable To Parent",
                "order": 600,
                "unit": "USD",
                "value": 8200000
              }
            },
            "income_statement": {
              "basic_earnings_per_share": {
                "label": "Basic Earnings Per Share",
                "order": 4200,
                "unit": "USD / shares",
                "value": 0.72
              },
              "benefits_costs_expenses": {
                "label": "Benefits Costs and Expenses",
                "order": 200,
                "unit": "USD",
                "value": 768400000
              },
              "cost_of_revenue": {
                "label": "Cost Of Revenue",
                "order": 300,
                "unit": "USD",
                "value": 536100000
              },
              "costs_and_expenses": {
                "label": "Costs And Expenses",
                "order": 600,
                "unit": "USD",
                "value": 768400000
              },
              "diluted_earnings_per_share": {
                "label": "Diluted Earnings Per Share",
                "order": 4300,
                "unit": "USD / shares",
                "value": 0.7
              },
              "gross_profit": {
                "label": "Gross Profit",
                "order": 800,
                "unit": "USD",
                "value": 269200000
              },
              "income_loss_from_continuing_operations_after_tax": {
                "label": "Income/Loss From Continuing Operations After Tax",
                "order": 1400,
                "unit": "USD",
                "value": 32300000
              },
              "income_loss_from_continuing_operations_before_tax": {
                "label": "Income/Loss From Continuing Operations Before Tax",
                "order": 1500,
                "unit": "USD",
                "value": 36900000
              },
              "income_tax_expense_benefit": {
                "label": "Income Tax Expense/Benefit",
                "order": 2200,
                "unit": "USD",
                "value": 4600000
              },
              "interest_expense_operating": {
                "label": "Interest Expense, Operating",
                "order": 2700,
                "unit": "USD",
                "value": 4300000
              },
              "net_income_loss": {
                "label": "Net Income/Loss",
                "order": 3200,
                "unit": "USD",
                "value": 32300000
              },
              "net_income_loss_attributable_to_noncontrolling_interest": {
                "label": "Net Income/Loss Attributable To Noncontrolling Interest",
                "order": 3300,
                "unit": "USD",
                "value": 0
              },
              "net_income_loss_attributable_to_parent": {
                "label": "Net Income/Loss Attributable To Parent",
                "order": 3500,
                "unit": "USD",
                "value": 32300000
              },
              "net_income_loss_available_to_common_stockholders_basic": {
                "label": "Net Income/Loss Available To Common Stockholders, Basic",
                "order": 3700,
                "unit": "USD",
                "value": 32300000
              },
              "operating_expenses": {
                "label": "Operating Expenses",
                "order": 1000,
                "unit": "USD",
                "value": 228000000
              },
              "operating_income_loss": {
                "label": "Operating Income/Loss",
                "order": 1100,
                "unit": "USD",
                "value": 41200000
              },
              "participating_securities_distributed_and_undistributed_earnings_loss_basic": {
                "label": "Participating Securities, Distributed And Undistributed Earnings/Loss, Basic",
                "order": 3800,
                "unit": "USD",
                "value": 0
              },
              "preferred_stock_dividends_and_other_adjustments": {
                "label": "Preferred Stock Dividends And Other Adjustments",
                "order": 3900,
                "unit": "USD",
                "value": 0
              },
              "revenues": {
                "label": "Revenues",
                "order": 100,
                "unit": "USD",
                "value": 805300000
              }
            }
          },
          "fiscal_period": "Q1",
          "fiscal_year": "2022",
          "source_filing_file_url": "https://api.polygon.io/v1/reference/sec/filings/0001650729-22-000010/files/site-20220403_htm.xml",
          "source_filing_url": "https://api.polygon.io/v1/reference/sec/filings/0001650729-22-000010",
          "start_date": "2022-01-03"
        }
      ],
      "status": "OK"
    }

    Conditions

    get
    /v3/reference/conditions

    List all conditions that Polygon.io uses.

    Parameters
  • Filter for conditions within a given asset class.

  • Filter by data type.

    Filter for conditions with a given ID.

  • Filter by SIP. If the condition contains a mapping for that SIP, the condition will be returned.

  • Order results based on the sort field.

    Limit the number of results returned, default is 10 and max is 1000.

  • Sort field used for ordering.

    https://api.polygon.io/v3/reference/conditions?apiKey=*
    Response Attributes
    count*integer

    The total number of results for this request.


    next_urlstring

    If present, this value can be used to fetch the next page of data.


    request_id*string

    A request ID assigned by the server.


    results*array

    An array of conditions that match your query.

    abbreviationstring

    A commonly-used abbreviation for this condition.


    asset_class*enum [stocks, options, crypto, fx]

    An identifier for a group of similar financial instruments.


    data_types*array [string]

    Data types that this condition applies to.


    descriptionstring

    A short description of the semantics of this condition.


    exchangeinteger

    If present, mapping this condition from a Polygon.io code to a SIP symbol depends on this attribute. In other words, data with this condition attached comes exclusively from the given exchange.


    id*integer

    An identifier used by Polygon.io for this condition. Unique per data type.


    legacyboolean

    If true, this condition is from an old version of the SIPs' specs and no longer is used. Other conditions may or may not reuse the same symbol as this one.


    name*string

    The name of this condition.


    sip_mapping*object

    A mapping to a symbol for each SIP that has this condition.

    CTAstring

    OPRAstring

    UTPstring

    type*enum [sale_condition, quote_condition, sip_generated_flag, financial_status_indicator, short_sale_restriction_indicator, settlement_condition, market_condition, trade_thru_exempt]

    An identifier for a collection of related conditions.


    update_rulesobject

    A list of aggregation rules.

    consolidated*object

    Describes aggregation rules on a consolidated (all exchanges) basis.

    updates_high_low*boolean

    Whether or not trades with this condition update the high/low.


    updates_open_close*boolean

    Whether or not trades with this condition update the open/close.


    updates_volume*boolean

    Whether or not trades with this condition update the volume.


    market_center*object

    Describes aggregation rules on a per-market-center basis.

    updates_high_low*boolean

    Whether or not trades with this condition update the high/low.


    updates_open_close*boolean

    Whether or not trades with this condition update the open/close.


    updates_volume*boolean

    Whether or not trades with this condition update the volume.


    status*string

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "count": 1,
      "request_id": "31d59dda-80e5-4721-8496-d0d32a654afe",
      "results": [
        {
          "asset_class": "stocks",
          "data_types": [
            "trade"
          ],
          "id": 2,
          "name": "Average Price Trade",
          "sip_mapping": {
            "CTA": "B",
            "UTP": "W"
          },
          "type": "condition",
          "update_rules": {
            "consolidated": {
              "updates_high_low": false,
              "updates_open_close": false,
              "updates_volume": true
            },
            "market_center": {
              "updates_high_low": false,
              "updates_open_close": false,
              "updates_volume": true
            }
          }
        }
      ],
      "status": "OK"
    }

    Exchanges

    get
    /v3/reference/exchanges

    List all exchanges that Polygon.io knows about.

    Parameters
  • Filter by asset class.

  • Filter by locale.

    https://api.polygon.io/v3/reference/exchanges?apiKey=*
    Response Attributes
    countinteger

    The total number of results for this request.


    request_id*string

    A request ID assigned by the server.


    resultsarray
    acronymstring

    A commonly used abbreviation for this exchange.


    asset_class*enum [stocks, options, crypto, fx]

    An identifier for a group of similar financial instruments.


    id*integer

    A unique identifier used by Polygon.io for this exchange.


    locale*enum [us, global]

    An identifier for a geographical location.


    micstring

    The Market Identifer Code of this exchange (see ISO 10383).


    name*string

    Name of this exchange.


    operating_micstring

    The MIC of the entity that operates this exchange.


    participant_idstring

    The ID used by SIP's to represent this exchange.


    type*enum [exchange, TRF, SIP]

    Represents the type of exchange.


    urlstring

    A link to this exchange's website, if one exists.


    status*string

    The status of this request's response.


    Was this helpful?
    Help us improve
    Response Object
    {
      "count": 1,
      "request_id": "31d59dda-80e5-4721-8496-d0d32a654afe",
      "results": [
        {
          "acronym": "AMEX",
          "asset_class": "stocks",
          "id": 1,
          "locale": "us",
          "mic": "XASE",
          "name": "NYSE American, LLC",
          "operating_mic": "XNYS",
          "participant_id": "A",
          "type": "exchange",
          "url": "https://www.nyse.com/markets/nyse-american"
        }
      ],
      "status": "OK"
    }

    Stocks WebSocket Documentation

    The Polygon.io Stocks WebSocket API provides streaming access to the latest stock market data from all US stock exchanges. You can specify which channels you want to consume by sending instructions in the form of actions. Our WebSockets emit events to notify you when an event has occurred in a channel you've subscribed to.

    Our WebSocket APIs are based on entitlements that control which WebSocket Clusters you can connect to and which kinds of data you can access. You can login to see examples that include your API key and are personalized to your entitlements.

    Step 1: Connect

    With a premium Stocks plan, you will be able to use a single connection to the Stocks Cluster. If another connection attempts to connect to the Stocks Cluster simultaneously, the current connection will be disconnected. If you need more simultaneous connections to this cluster, you can contact support.

    Connecting to a cluster:

    Delayed:wscat -c wss://delayed.polygon.io/stocks
    Real-time:wscat -c wss://socket.polygon.io/stocks

    On connection you will receive the following message:

    [{
    	"ev":"status",
    	"status":"connected",
    	"message": "Connected Successfully"
    }]

    Step 2: Authenticate

    You must authenticate before you can make any other requests.

    {"action":"auth","params":"********"}

    On successful authentication you will receive the following message:

    [{
    	"ev":"status",
    	"status":"auth_success",
    	"message": "authenticated"
    }]

    Step 3: Subscribe

    Once authenticated, you can request a stream. You can request multiple streams in the same request.

    {"action":"subscribe","params":"T.LPL"}

    You can also request multiple streams from the same cluster.

    {"action":"subscribe","params":"T.LPL,Q.MSFT"}

    Usage

    Things happen very quickly in the world of finance, which means a Polygon.io WebSocket client must be able to handle many incoming messages per second. Due to the nature of the WebSocket protocol, if a client is slow to consume messages from the server, Polygon.io's server must buffer messages and send them only as fast as the client can consume them. To help prevent the message buffer from getting too long, Polygon.io may send more than one JSON object in a single WebSocket message. We accomplish this by wrapping all messages in a JSON array, and adding more objects to the array if the message buffer is getting longer. For example, consider a WebSocket message with a single trade event in it:

    [
        {"ev":"T","sym":"MSFT","i":"50578","x":4,"p":215.9721,"s":100,"t":1611082428813,"z":3}
    ]

    If your client is consuming a bit slow, or 2+ events happened in very short succession, you may receive a single WebSocket message with more than one event inside it, like this:

    [
        {"ev":"T","sym":"MSFT","i":"50578","x":4,"p":215.9721,"s":100,"t":1611082428813,"z":3}, 
        {"ev":"T","sym":"MSFT","i":"12856","x":4,"p":215.989,"s":1,"c":[37],"t":1611082428814,"z":3}
    ]

    Note that if a client is consuming messages too slowly for too long, Polygon.io's server-side buffer may get too large. If that happens, Polygon.io will terminate the WebSocket connection. You can check your account dashboard to see if a connection was terminated as a slow consumer. If this happens to you consistently, consider subscribing to fewer symbols or channels.

    Aggregates (Per Minute)

    ws
    wss://delayed.polygon.io/stocks
    wss://socket.polygon.io/stocks

    Stream real-time minute aggregates for a given stock ticker symbol.

    Parameters

    Specify a stock ticker or use * to subscribe to all stock tickers. You can also use a comma separated list to subscribe to multiple stock tickers. You can retrieve available stock tickers from our Stock Tickers API.

    {"action":"subscribe", "params":"AM.{ticker}"}
    Response Attributes
    evenum [AM]

    The event type.


    symstring

    The ticker symbol for the given stock.


    vinteger

    The tick volume.


    avinteger

    Today's accumulated volume.


    opnumber

    Today's official opening price.


    vwnumber

    The tick's volume weighted average price.


    onumber

    The opening tick price for this aggregate window.


    cnumber

    The closing tick price for this aggregate window.


    hnumber

    The highest tick price for this aggregate window.


    lnumber

    The lowest tick price for this aggregate window.


    anumber

    Today's volume weighted average price.


    zinteger

    The average trade size for this aggregate window.


    sinteger

    The timestamp of the starting tick for this aggregate window in Unix Milliseconds.


    einteger

    The timestamp of the ending tick for this aggregate window in Unix Milliseconds.


    otcboolean

    Whether or not this aggregate is for an OTC ticker. This field will be left off if false.


    Was this helpful?
    Help us improve
    Response Object
    {
      "ev": "AM",
      "sym": "GTE",
      "v": 4110,
      "av": 9470157,
      "op": 0.4372,
      "vw": 0.4488,
      "o": 0.4488,
      "c": 0.4486,
      "h": 0.4489,
      "l": 0.4486,
      "a": 0.4352,
      "z": 685,
      "s": 1610144640000,
      "e": 1610144700000
    }

    Aggregates (Per Second)

    ws
    wss://delayed.polygon.io/stocks
    wss://socket.polygon.io/stocks

    Stream real-time second aggregates for a given stock ticker symbol.

    Parameters

    Specify a stock ticker or use * to subscribe to all stock tickers. You can also use a comma separated list to subscribe to multiple stock tickers. You can retrieve available stock tickers from our Stock Tickers API.

    {"action":"subscribe", "params":"A.{ticker}"}
    Response Attributes
    evenum [A]

    The event type.


    symstring

    The ticker symbol for the given stock.


    vinteger

    The tick volume.


    avinteger

    Today's accumulated volume.


    opnumber

    Today's official opening price.


    vwnumber

    The tick's volume weighted average price.


    onumber

    The opening tick price for this aggregate window.


    cnumber

    The closing tick price for this aggregate window.


    hnumber

    The highest tick price for this aggregate window.


    lnumber

    The lowest tick price for this aggregate window.


    anumber

    Today's volume weighted average price.


    zinteger

    The average trade size for this aggregate window.


    s