Please enable JavaScript in order to get the most from this website.

    Introduction

    You can use our data services from the website through dowloadable links or in your own application by means of API requests. Logged-in users can browse to dedicated pages, use visualization tools and download data. For example you can visit the Instruments page, choose an instrument and explore End-Of-Day, Intraday, Indicators or Options Chains data. On the other hand you can build your own application and interact with our data services through API requests.
    This documentation will help you explore our exposed endpoints and give you specific details about their usage. We strive to make it as simple and legible as possible. Feel free to contact us should you experience any issue using it.

    Global Specifications

    API base url: https://tallacoptions.com/api

    Additional segments and parameters are appended to the base url according to the topic of your request. Parameters appear in curly braces. A table gives type, format and description details for each parameter.
    When the request succeeds, a response message is returned with data in the content and additional information in the header. The supported data formats include CSV, JSON, XML and BSON. You can set the desired content type in the header when issuing requests. Failed requests return error messages with specific details.
    Examples are given throughout this documentation for illustrative purpose.
    Logged-in users can take advantage of Try It Out sections for a quick test.

    Topics

    Different topics are covered. Some of them are purely informational and don't require any authentication or authorization. Others are subject to restrictions as they require authentication and access rights.
    This documentation is organized topic-wise and will go through a list of topics that we deem relevant.

    Authentication

    You use our APIs by submitting requests to our exposed endpoints. Some API requests need to include a security token for authentication purpose. Registered users are assigned an API key they can use to generate these tokens.
    Logged-in users can omit the authentication token or API key when they initiate a request from their browser.
    Explore the Tokens topic to see how you can generate them and authenticate your requests.

    Authorization

    Access to our different data services is granted depending on your account profile. You have a set of basic data accesses attached to your account by default to let you explore our services. You can extend your data access rights depending on your needs. See the different user profiles for information about data access levels.

    Availability

    Data availability highly depends on the instrument and the type of data you are searching for. We update our database on a regular basis with new and past data. You can obtain extensive information from the instrument's details page. You can also refer to the Instruments section to see how to obtain the information through API requests.

    Restrictions

    In order to provide our users with quality services, we take action to prevent abuses of any kind. As such, restrictions about the number of requests allowed within a period of time may apply.

    Community Support

    You can use our GitHub Support Page to raise issues you may encounter and also share your experience with other developers.

    Introduction

    You use security tokens to send requests to endpoints that require authentication. Tokens are generated with your API key and are usable only once before they expire. By default you can generate a single 2-minute token per request.
    Users with Premium or FullAccess privilege can generate multiple 5-minute tokens per request.
    Logged-in users don't need authentication tokens when they initiate requests from their browser. Your API key is accessible from the Settings section of your Account.
    For obvious security reasons, keep it secret and only use it with requests that are submitted server-side. Change it if you feel that it's secrecy has been compromised.

    Introduction

    We expose the following endpoints to provide extensive information about available instruments and instrument categories.
    No authentication or authorization is needed for these endpoints.
    Please note that it is crucial to know some details about an instrument in order to make successful data requests.

    Introduction

    End-Of-Day data can be obtained for available instruments over a period ranging from a start-date to an end-date.

    Introduction

    We provide intraday data on all our available instruments. The frequencies range from 30 minutes to 1 second. You can access an instrument's intraday data on a trading date with a specific aggregation frequency. The instrument must be among the ones we cover and you need access rights covering the trading date and the frequency you choose.

    Endpoint

    Send a GET request to the following endpoint:

    https://www.tallacoptions.com/api/intraday/quotes/{ticker}/{date}/{frequency}/{token}

    Parameters

    Parameter Type Format Description
    ticker String None Instrument's ticker symbol.
    date DateTime yyyy-MM-dd Trading date.
    frequency Integer Integer Aggregation frequency (in seconds).
    token* String GUID Valid user-generated token.
    *Logged-in users can leave out the token parameter when they send the request from their browser.

    Response

    Headers

    The following additionnal HTTP Headers are included in the reponse:

    Name Value
    Description Instrument's description.
    Caption Description of the response.
    Content

    A collection of objects with the following properties:

    Property Type Format Description
    Time Time HH:mm:ss Quotation time.
    Last Decimal Decimal Last quoted price.
    Bid* Decimal Decimal Bid price.
    Ask* Decimal Decimal Ask price.
    Volume* Integer Integer Cumulated Traded volume.
    * Bid, Ask and Volume fields apply for tradable instruments.

    The objects can be serialized into CSV, XML, JSON and BSON formats.

    Errors

    The following errors might arise:

                                        
    
                                            Instrument Not Covered
                                            {
                                            "Status":"NotFound",
                                            "Message":"Instrument is not covered. See list of available instruments."
                                            }
    
                                            Not Found
                                            {
                                            "Status":"NotFound",
                                            "Message":"No Data Found! Check instrument's details for data availability."
                                            }
    
                                            Invalid Frequency
                                            {
                                            "Status":"BadRequest",
                                            "Message":"This frequency is not supported as a frequency value. See list of available frequencies."
                                            }
    
                                            Invalid Token
                                            {
                                            "Status":"Forbidden",
                                            "Message":"Invalid token!"
                                            }
    
                                            Expired Token
                                            {
                                            "Status":"Forbidden",
                                            "Message":"Token has expired!"
                                            }
    
                                            Token Already Used
                                            {
                                            "Status":"Forbidden",
                                            "Message":"Token already used!"
                                            }
    
                                            Unauthenticated Request
                                            {
                                            "Status":"Forbidden",
                                            "Message":"Anonymous request accepted only from browsers!"
                                            }
    
                                            Unsufficient Access Rights
                                            {
                                            "Status":"Forbidden",
                                            "Message":"Restricted resource! Your access rights do not cover this frequency!"
                                            }
    
                                            Access Denied
                                            {
                                            "Status":"Forbidden",
                                            "Message":"Restricted resource! Please See EOD data access scheme."
                                            }
    
                                            Internal server error
                                            {
                                                "Status":"InternalServerError",
                                                "Message":"An internal server error occurred."
                                            }
                                        
                                    

    Example

    Request

    You send a GET request for AAPL intraday data on January 2nd 2020 with a 1-min frequency.
    We assume that JSON content type is specified in the request header.

    https://www.tallacoptions.com/api/intraday/quotes/aapl/2020-01-02/60/ba5cdb19-dc36-4939-90ce-ad787657b07a

    Response

    Headers
    Name Value
    Description Apple Inc.
    Caption AAPL Intraday Data On 2020-01-02 - www.TallacOptions.com
    Content

    A collection of JSON objects with the above mentioned properties.

                                                
                                                    [
                                                    {
                                                    "Time":"16:00:00",
                                                    "Last":300.35000,
                                                    "Bid":300.47,
                                                    "Ask":300.48,
                                                    "Volume":32942947
                                                    },
                                                    ...
                                                    ,{
                                                    "Time":"09:30:00",
                                                    "Last":296.24000,
                                                    "Bid":296.24,
                                                    "Ask":296.30,
                                                    "Volume":560053
                                                    }
                                                    ]
                                                
                                            
    Under Construction...