Troubleshooting FAQs

The full message of the error you may encounter is:
RegistrationError: {Service}: Maximum number of unregistered requests exceeded. Your request was authenticated using {an HTTP request parameter|a cookie|an IP address|a SOAP header}. Your username is {username}. Please visit http://www.xignite.com/registration-help for more information.

There are a few possible reasons for encountering this error:
  • If you are a subscriber, you will never receive this error unless you are using an incorrect token to authenticate your requests. To fix the problem, simply review your list of authentication tokens and verify you are using a correct one. You can do this by navigating to My Account and clicking on Manage My API Tokens.
  • If you are not registered or subscribed to the service and did not pass any authentication tokens with your request, then it simply means that we could not authenticate your request and therefore it was rejected. Most likely in this case the error message will say that "Your request was authenticated using an IP address" and your username will be that IP address. This is simply because IP-based authentication is the default authentication method if none others are provided.
  • If you are registered or subscribed to the service and use IP-based authentication, then it could mean that your IP address changed and it is not included in your list of authentication tokens. To fix the problem, simply add the IP address provided in the message to your list of authentication tokens. You can do this by navigating to My Account and clicking on Manage My API Tokens.
  • If you are registered or subscribed to the service and use SOAP Header or HTTP RequestParameter authentication, then it could mean that you are passing the wrong authentication token. To fix the problem, simply review your list of authentication tokens and verify you are using a correct one. You can do this by navigating to My Account and clicking on Manage My API Tokens.
  • If you are only registered for a free trial, this could also mean that you have exceeded your free trial hit limit for this service. To verify this, go to My Account, click on Check My Free Trial Status and check if the Remaining Hits value is 0 for the service you are using. If it is, contact your sales representative or sales@xignite.com to request an extension of your free trial.
If you are not sure of which method you use to authenticate your request, please check the value of the Identity data element returned with your data. This is provided as a standard data element on all APIs. 
  • If Identity = IP, verify that the IP of your server is properly registered. If your IP is dynamic, you should probably use a different method for authentication. You may also believe that you are properly passing a SOAP Header with your requests but this header is not being recognized by our system. IP authentication is not recommended as it is common for IPs to change.
  • If Identity = Cookie, verify that you are passing the proper cookie with your requests. Note that when calling a service using your browser, the system will by default pass a cookie with your requests if it exists. Cookies are set up when you log into your account using your browser.
  • If Identity = Request, this means that our system is reading your username from the 'Header_Username' or '_token' value passed with your POST or GET requests. Verify that you are passing the proper value.
  • If Identity = Header, this means that our system is reading your username from the Username element from the SOAP Header value passed with your SOAP requests. Verify that you are passing the proper value.

Xignite has a policy of honesty and openness when it comes to the availability of our APIs.
We constantly monitor our APIs using Keynote Systems--a reputable third party company--and we use their benchmarks as the benchmark for our availability. Keynote constantly hit our APIs from multiple locations around the world and reports any failures during their sampling. We publish the report they generate on our web site at the beginning of the month. You can find the current report as well as all our historical availability going back to 2009 here: https://www.xignite.com/Support/Availability.aspx

If you have additional questions about availability, feel free to e-mail support@xignite.com.

IP authentication is discouraged because your application will break if your IP addresses change. We highly recommend using API token authentication to avoid this problem. If you still wish to use IP authentication, there are a few simple steps to follow in order to add or remove IP addresses on your User Account. When using IP authentication, it is critical the IP is added before any queries are executed or the queries will error.

First, you must log in to the Xignite Web Site - once logged in, follow the steps here:
  1. Go to the Manage My API Tokens page within the My Profile area
     
  2. On that page, click the  button
     
  3. In the Add Token box, change the first dropdown to “IP”
     
  4. In the 2nd blank box that appears, enter the full IP address
     
  5. Once you confirm it is entered correctly, press 
     
  6. Note: To lock in this change, press  or you will not actually Save this new IP to the account.

No, this is not permitted because our Services are hosted on in a virtual environment across many servers.
Due to load balancing or other server shuffling activities, the IP address for an API could change at any time without notice. You cannot rely on any IP address to remain static. The proper way to code to an Xignite API destination is via the API URL.

If you have any issues using an Xignite API, please send an e-mail to support@xignite.com so that we can assist you.

No, you may not use any APIs listed in the WSDL if they are not also cataloged on the API List page for that Service as such API are not supported.

APIs that are available in the WSDL but not documented could potentially be:
  • Non-functional or buggy
  • Targeted for deprecation at any time
If you use such an API you therefore assume the risk that your application could not work with no ability to obtain support for it.

If you have any other questions about this, you may send them to support@xignite.com.

The easiest, faster and best way to report a problem is always to send us an email at support@xignite.com.

Please make sure to include detailed information such as:
  • The URL you are using
  • The name of the web service (e.g. XigniteGlobalQuotes)
  • The name of the API(e.g. GetGlobalQuote)
  • The development environment you are using (MS.NET, php...)
  • The values of parameters you are using
  • The type of error you are getting (e.g. HTTP 404, HTTP 500, timeout, Outcome=SystemError...)

A 403 Errors indicates that we have blocked access to our computers from your computer.
This is extremely unlikely and we will attempt to warn you before taking such a drastic step.
Possible causes for blocking your IP are:
  • Your requests are somehow affecting, maybe even crashing our servers. This could be caused by a malformation of your requests or some problem on our part. In any case, we had to block your IP to prevent further crashes.
  • We have noticed abusive usage coming from your IP.
Please contact our support team to address this issue so that we can reactivate your IP.

The most likely cause for a 404 or 405 error (beside a typo in a URL) is that you are pointing to the service namespace instead of its URL.

For instance, the namespace of the GetGlobalQuote API in the XigniteGlobalQuotes web service is http://globalquotes.xignite.com/services/GetGlobalQuote.
That address does not point to a valid URL. The correct URL is http://globalquotes.xignite.com/xGlobalQuotes.asmx. Please review the API documentation for details.

You should never get a HTTP 500 error in normal operation mode. There are two causes for HTTP 500 errors:
  • A major problem on our side.
  • A problem with your request.
The first thing you should do is examine possible problems with your request:
  • Missing Required Parameters.
    All parameters with a non-string data type are required. This include numerics, dates, booleans, and enumerations (which are really numerics). Only missing string values will not cause an HTTP 500 error.
  • Mis-typed Enumerations.
    Enumerations are case-sensitive. Make sure you look at the list of valid values in the SOAP, GET or POST description. Our test form makes it easy by using drop-downs but your code must be correct.

For instance, you may get the following response if you omit an integer parameter:
System.ArgumentException: Cannot convert to System.Int32.
If your request is valid and the problem persists, there might be a problem on our side so email us.