with GeoDB Cities and Cartes?
Find cities, filtering by optional criteria. If no criteria are set, you will get back all known cities with a population of at least 1000. See the docs
Get the details for a specific country, including number of regions. See the docs
Get the details of a specific country region, including number of cities. See the docs
The GeoDB Cities API lets you tap into a rich dataset of worldwide cities, their attributes, and related data. On Pipedream, you can use this API to create workflows that automate location-based tasks, enrich data with geographical context, or power apps with location intelligence. For instance, you could trigger a workflow whenever a new city is added to a database, gather demographic information based on city names, or even integrate with travel platforms to plan itineraries.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
geodb_cities: {
type: "app",
app: "geodb_cities",
}
},
async run({steps, $}) {
const data = {
"query": `{country(id:"US"){name region(code:"CA"){name populatedPlaces(first:10){totalCount pageInfo{startCursor endCursor hasNextPage}edges{node{name}}}}}}`,
}
return await axios($, {
method: "post",
url: `http://geodb-free-service.wirefreethought.com/graphql`,
headers: {
"x-rapidapi-key": `${this.geodb_cities.$auth.api_key}`,
"Content-Type": `application/json`,
},
data,
})
},
})
Cartes API allows users to create, update, and share maps with custom markers, making it useful for location-based data visualization. With Pipedream, you can automate interactions with the Cartes API to integrate real-time mapping capabilities into your workflows. For instance, you could track assets, manage event locations, or update a map with user-generated content from various sources. Pipedream's power lies in its ability to connect the Cartes API with hundreds of other apps to create dynamic, automated workflows.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
cartes: {
type: "app",
app: "cartes",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://cartes.io/api/maps`,
})
},
})