CARTO Internal Geocoder ==== # API Response Format ## Parameters | Field | Explanation | Type | | ------ |:--------------------------------------------:| ------:| | q | Input query text | text | | success| Was it successfully geocoded? | boolean| | geom | Resolved geometry, NULL if none | wkb | | c | Input country text if provided and variable | text | * ```q``` will be searched on in lowercase but returned in input form * ```c``` will always be returned in the form it was given, including empty string and NULL * ```c``` will be resolved to an ISO code using a lookup dictionary * ```c``` when NULL or empty will make the search for that entry fall back to countryless ## Existing Services ### Level 0 administrative regions (Countries) ##### Data type Polygons ##### Parameters | name | type | optional? | | --------- |:-------:| ---------:| | name | text[] | false | ##### Current coverage Global #### Example requests ```sql SELECT (geocode_admin0_polygons(Array['Spain', 'USA', ''])).* ``` #### Links [See it on the api](http://geocoding.carto.com/api/v2/sql?q=SELECT%20(geocode_admin0_polygons(Array[%27Spain%27,%20%27USA%27,%20%27%27])).*) [See plpgsql](https://github.com/CartoDB/data-services/blob/master/geocoder/admin0/sql/geocoder.sql) ### Level 1 administrative regions (States/Provinces) ##### Data type Polygons ##### Parameters | name | type | optional? | | --------- |:-------:| ---------:| | name | text[] | false | | country | text[] | true | | countries | text[] | true | ##### Current coverage Global #### Example requests ```sql SELECT (geocode_admin1_polygons(Array['TX','Cuidad Real', 'sevilla'])).* ``` ```sql SELECT (geocode_admin1_polygons(Array['NH', 'Vermont'], 'United States')).* ``` ```sql SELECT (geocode_admin1_polygons(Array['az', 'az'], Array['Ecuador', 'USA'])).* ``` #### Links [See it on the api](http://geocoding.carto.com/api/v2/sql?q=SELECT%20(geocode_admin1_polygons(Array[%27az%27,%20%27az%27],%20Array[%27Ecuador%27,%20%27USA%27])).*) [See plpgsql](https://github.com/CartoDB/data-services/blob/master/geocoder/admin1/sql/geocoder.sql) ### Named Places ##### Data type Points ##### Parameters | name | type | optional? | | -------------- |:-------:| ---------:| | named_place | text[] | false | | country_code | string | true | | country_codes | text[] | true | ##### Current coverage Global #### Example requests ```sql SELECT (geocode_namedplace(Array['Madrid', 'New York City', 'sunapee'])).* ``` ```sql SELECT (geocode_namedplace(Array['sunapee', 'sunapeeee', 'New York City'], 'USA')).* ``` ```sql SELECT (geocode_namedplace(Array['sunapee', 'sunapeeee', 'New York City', 'Madrid'], Array['', 'US', 'United States', NULL])).* ``` ```sql SELECT (geocode_namedplace( Array['Portland', 'Portland', 'New York City'], Array['Maine', 'Oregon', NULL], 'USA')).* ``` ```sql SELECT (geocode_namedplace( Array['Portland', 'Portland', 'New York City'], Array['Maine','Oregon', null], NULL)).* ``` #### Links [See it on the api](http://geocoding.carto.com/api/v2/sql?q=SELECT%20(geocode_namedplace(Array[%27sunapee%27,%20%27sunapeeee%27,%20%27New%20York%20City%27,%20%27Madrid%27],%20Array[%27%27,%20%27US%27,%20%27United%20States%27,%20NULL])).*) [See plpgsql](https://github.com/CartoDB/data-services/blob/master/geocoder/namedplace/sql/geocode_namedplace.sql) ### IP Addresses ##### Data type Points ##### Parameters | name | type | optional? | | -------------- |:-------:| ---------:| | IP query array | text[] | false | ##### Current coverage Global #### Example request ```sql SELECT (geocode_ip(Array['1.0.16.0', '::ffff:1.0.16.0', 'not an IP'])).* ``` #### Links [See it on the api](http://geocoding.carto.com/api/v2/sql?q=SELECT%20(geocode_ip(Array[%271.0.16.0%27,%20%27::ffff:1.0.16.0%27,%20%27not%20an%20IP%27])).*) [See plpgsql](https://github.com/CartoDB/data-services/blob/master/geocoder/ip-addresses/sql/geocoder.sql) ### Postal Code Polygons ##### Parameters | name | type | optional? | | -------------- |:-------:| ---------:| | postal_code | text[] | false | | country_code | string | true | | country_codes | text[] | true | ##### Current coverage United States, Canada, Australia, France #### Example requests ```sql SELECT (geocode_postalcode_polygons(Array['10013','11201','03782'])).* ``` ```sql SELECT (geocode_postalcode_polygons(Array['10013','11201','03782'], 'USA')).* ``` ```sql SELECT (geocode_postalcode_polygons(Array['10013','G9H','03782'], Array['USA', 'Canada', 'US'])).* ``` #### Links [See it on the api](http://geocoding.carto.com/api/v2/sql?q=SELECT%20(geocode_postalcode_points(Array[%2703204%27],Array[%27ESP%27])).*) [See plpgsql](https://github.com/CartoDB/data-services/blob/master/geocoder/postal-codes/sql/geocoder.sql) ### Postal Code Points ##### Parameters | name | type | optional? | | -------------- |:-------:| ---------:| | postal_code | text[] | false | | country_code | string | true | | country_codes | text[] | true | ##### Current coverage Global [see list](https://github.com/CartoDB/data-services/blob/master/geocoder/postal-codes/README.md#function-1) #### Example requests ```sql SELECT (geocode_postalcode_points(Array['10013','11201','03782'])).* ``` ```sql SELECT (geocode_postalcode_points(Array['10013','11201','03782'], 'USA')).* ``` ```sql SELECT (geocode_postalcode_points(Array['10013','G9H','03782'], Array['USA', 'Canada', 'US'])).* ``` #### Links [See it on the api](https://geocoding.carto.com/api/v2/sql?q=SELECT%20(geocode_postalcode_points(Array[%2710013%27,%27G9H%27,%2703782%27],%20Array[%27USA%27,%20%27Canada%27,%20%27US%27])).*) [See plpgsql](https://github.com/CartoDB/data-services/blob/master/geocoder/postal-codes/sql/geocoder.sql)