View
 

Factual Developer FAQs

How do I get developer access to the Factual API?

What Kind of uptime do you guarantee?

What resources are available if I run into problems?

How do I get in touch in case of a problem?

Is there a message board or a discussion group for application developers?

How much will it cost to use your service after it goes live?

How do I access the API?

What Exactly is REST?

How do I use the API?

Will I be able to make calls to the Factual API through a firewall?

What will my results look like?

What languages does the Factual API support?

Is there a limit to data throughput per day or for a single API call?

Is there a limit to my data storage?

If I write an application and generate a table, will people be able to modify the data in my application without going through my application?

If developers pass user input through their applications, does it look as if the users gave the input or the application developers gave the input?

Does every user of my application have to have a Factual account?

What are the terms of use for the Factual API?

 

How do I get developer access to the Factual API?

It's simple: just click here or click on the "Get Started - Factual API Key" button in the developer section, and answer some basic questions.

 

What kind of uptime do you guarantee?

Currently, you can use this API for free, but there is no guaranteed uptime.  However, if you plan to use the API on a large scale and would like to discuss an SLA, please contact us.

 

What resources are available if I run into problems?

We've put together a Factual Developer Wiki. Here you will find the most recent Factual developer info and data, as well as API documentation and sample code. There is also the Factual Developer Google Group to post questions.

 

How do I get in touch in case of a problem?

If something is not working, please check the Factual Developer Google Group. We'll be answering questions and providing status updates there. If you don't see a relevant thread, then please start one - factual_developers@googlegroups.com.

 

Is there a message board or a discussion group for application developers?

Yes, we have a Factual Developer Google Group. Definitely check this out and stay involved with the conversation.

 

How much will it cost to use your service after it goes live?

There's no pricing model at this stage, while we concentrate on developing an open data community. At some point there will likely be fees for various features and service levels, but there will be plenty of communication with the Factual developer community before that takes effect.

 

How do I access the API?

The Factual API a RESTful-style interface based on the principles of REpresentational State Transfer (REST).

 

What exactly is REST?

REST is basically a protocol that requests and moves data (hence, the T for transfer). It leverages established technology of the Web: HTTP and XML. You make an HTTP request to a given URI, and the specific construct of that URI tells the details of the data you want. REST is not a proprietary interface and these principles can be used by anyone.

 

To learn more about RESTful interfaces: 

Wikipedia: Representational State Transfer 

http://en.wikipedia.org/wiki/Representational_State_Transfer

How I explained REST to my wife. 

http://tomayko.com/writings/rest-to-my-wife

A Brief Introduction to REST 

http://www.infoq.com/articles/rest-introduction

 

How do I use the API?

You can see documentation and code samples at the Factual Developer Wiki

 

Will I be able to make calls to the Factual API through a firewall?

Yes, because Factual uses an API based on RESTful principles. As long as a browser can reach a URL, your code will be able to reach the Factual API. To get a better understanding of REST, check out the resources listed above.

 

What will my results look like?

You can get results in either JavaScript Object Notation (JSON) or in eXtensible Markup Language (XML).

 

Here's a sample in JSON: 

curl " http://api.factual.com/v1/API_KEY/tables/Oj5R5U/read?limit=3&offset=0

{"status":"ok","response":{"fields":["subject_key","Number","Name","Nickname","Political Party","Year First Elected","First Day in Office","Last Day in Office","First Lady","Vice President","Religion","Birthdate","Deathdate","Birth State","Burial Site","Most Significant Act As President"],"rows":3,"total_rows":44,"subject_columns":[1],"data":[["NWoZK3kTsExUV00Ywo1G5jlUKKs",1,"George Washington","Father of His County, The Sage of Mount Vernon","Federalist",1789,"1789-04-30","1797-03-04","Martha Dandridge Custis Washington","John Adams","Episcopalian","1732-02-22","1799-12-14","Virginia","Mount Vernon Estate, Mount Vernon, VA","crossing the river"],["2kuSN7rMzfGcB2DKt67EqDWQELA",2,"John Adams","His Roundity, The Atlas of Independence, Bonny Johnny","Federalist",1796,"1797-03-04","1801-03-04","Abigail Smith Adams","Thomas Jefferson","Unitarian","1735-10-30","1826-07-04","Massachusetts","United First Parish Church, Quincy, MA",null],["d95o2uzYI7q7tY7bHI4U1xBug7s",3,"Thomas Jefferson","Long Tom, The Pen of the Revolution, Apostle of the Constitution","Democratic-Republican",1800,"1801-03-04","1809-03-04","Martha Wayled Skelton Jefferson","Aaron Burr, George Clinton","Deist","1743-04-13","1826-07-04","Virginia","Monticello, Charlottesville, VA","Lousiana Purchase"]]}}

 

Here's a sample in XML: 

curl " http://api.factual.com/v1/API_KEY/tables/Oj5R5U/read.xml?limit=3&offset=0 "

<?xml version="1.0" encoding="UTF-8"?> 

<result> 

 <status>ok</status> 

 <response> 

   <fields> 

     <field>subject_key</field> 

     <field>Number</field> 

     <field>Name</field> 

     <field>Nickname</field> 

     <field>Political Party</field> 

     <field>Year First Elected</field> 

     <field>First Day in Office</field> 

     <field>Last Day in Office</field> 

     <field>First Lady</field> 

     <field>Vice President</field> 

     <field>Religion</field> 

     <field>Birthdate</field> 

     <field>Deathdate</field> 

     <field>Birth State</field> 

     <field>Burial Site</field> 

     <field>Most Significant Act As President</field> 

   </fields> 

   <subject-columns> 

     <subject-column>0</subject-column> 

   </subject-columns> 

   <rows>3</rows> 

   <total-rows>3</total-rows> 

   <data> 

     <row> 

       <cell>12</cell> 

       <cell>Zachary Taylor</cell> 

       <cell>Old Rough and Ready, Old Zack</cell> 

       <cell>Whig</cell> 

       <cell>1848</cell> 

       <cell>1849-03-04</cell> 

       <cell>1850-07-09</cell> 

       <cell>Margaret Mackall Smith Taylor</cell> 

       <cell>Millard Fillmore</cell> 

       <cell>Episcopalian</cell> 

       <cell>1784-11-24</cell> 

       <cell>1850-07-09</cell> 

       <cell>Virginia</cell> 

       <cell>Zachary Taylor National Cemetery, Louisville, KY</cell> 

       <cell nil="true"/> 

     </row> 

     <row> 

       <cell>33</cell> 

       <cell>Harry S. Truman</cell> 

       <cell>Give'em Hell Harry, Haberdasher Harry</cell> 

       <cell>Democratic</cell> 

       <cell>1948</cell> 

       <cell>1945-04-12</cell> 

       <cell>1953-01-20</cell> 

       <cell>Elizabeth Virginia Wallace Truman</cell> 

       <cell>Alben W. Barkley</cell> 

       <cell>Baptist</cell> 

       <cell>1884-05-08</cell> 

       <cell>1972-12-26</cell> 

       <cell>Missouri</cell> 

       <cell>Harry S. Truman Library, Independence, MO</cell> 

       <cell nil="true"/> 

     </row> 

     <row> 

       <cell>37</cell> 

       <cell>Richard M. Nixon</cell> 

       <cell>Tricky Dick</cell> 

       <cell>Republican</cell> 

       <cell>1968</cell> 

       <cell>1969-01-20</cell> 

       <cell>1974-08-09</cell> 

       <cell>Patricia Ryan Nixon</cell> 

       <cell>Spiro T. Agnew, Gerald R. Ford</cell> 

       <cell>Quaker</cell> 

       <cell>1913-01-09</cell> 

       <cell>1994-04-22</cell> 

       <cell>California</cell> 

       <cell>Richard Nixon Library and Birthplace, Yorba Linda, CA</cell> 

       <cell>Detente with China and Russia</cell> 

     </row> 

   </data> 

 </payload> 

</response> 

 

To learn more about JSON or XML: 

Introducing JSON 

http://www.json.org/

Wikipedia: JSON 

http://en.wikipedia.org/wiki/JSON

Wikipedia: XML 

http://en.wikipedia.org/wiki/Xml

 

What languages does the Factual API support?

 The Factual API is language agnostic. As long as your code can make a REST request, we'll get you the data. As of yet we have not built any language-specific API hooks. Over time we imagine building some language-specific wrappers to help you more easily integrate your applications with Factual data.

 

Is there a limit to data throughput per day or for a single API call?

There is no official limit, but please contact us if you're planning to request a large amount of data, either in a single call or in multiple API queries. We will throttle or turn off accounts that seem to have suspect patterns or and that threaten to destabilize the Factual API for everyone else.

 

Is there a limit to my data storage?

Right now we do not enforce a specific limit. However, if we see tables that are unusually large, we'll investigate and shut them down if necessary. If you are planning to send us a gigantic data dump, please contact us in advance so we know it's not spam.

 

If I write an application and generate a table, will people be able to modify the data in my application without going through my application?

It depends on what options you select. Factual supports unlisted tables (which do not appear in search results) and locked tables (which are read-only for other users). If your table is locked, no other Factual user will be able to modify it. That said, we strongly believe that open and collaborative databases allow data to expand and improve. If you keep your data unlisted or locked, you will miss out on the benefits that the Factual community and platform provide.

 

If developers pass user input through their applications, does it look as if the users gave the input or the application developers gave the input?

If your application is in compliance with OpenID standards, and the user is signed in, you can pass us the information and we'll mark the changes so that they came from that particular user. Otherwise, we'll just track that the changes came from your application, not the specific user.

 

Does every user of my application have to have a Factual account?

No. But if you want to pass through changes made by your users and have it look as if your users made the changes, then they'll have to have to sign in using OpenID .

 

What are the terms of use for the Factual API?

 You can check out the Factual terms of use here . If you would like some clarifications just email us at factual_developers@googlegroups.com.