Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
A CartoDB client for PHP
branch: master



This is a very simple PHP library to make use of the CartoDB API as easy as possible. It does not cover the whole API, just the authentication bit (using OAuth) and running SQL queries. If you want to learn more about the CartoDB API check out the documentation

The library is presented as a single file with very few dependencies to make it as easy as possible to use it.


Example use

You'll need to get an API key and secret from

Then is pretty simple

require_once 'cartodb.class.php';

# Create the client using the API key and Secret.
$cartodb =  new CartoDBClient('my_cartodb_key','my_cartodb_secret');

# Check if the key and secret work fine and you are authorized
if(!$cartodb->authorized) {
    echo("There is a problem authenticating, check the key and secret");

# Now we can perform queries straigh away. The second param indicates if you want
# the result to be json_decode (true) or just return the raw json string

$result = $cartodb->runSql("SELECT *,geojson(the_geom) FROM my_table",false);


We are working still on the docs, but basically you can run any SQL supported by PostgreSQL and PostGIS. You can also concatenate the queries with ";" to insert multiple records in one shot for example.


  • 2014/02/06 : createTable() signature modified (no longer supports sending schema, just table name). Improved documentation of insertRow() method and token tmp storage to allow multi-account testing.
  • 2014/02/05 : Deprecated getTables() and dropTable(), no longer present in the API endpoints. Added getTableVisualizations() and dropTableVisualization() to provide same functionality (although slower and performing more queries).
Something went wrong with that request. Please try again.