Join, combine, and aggregate data from multiple APIs and databases — all in one call.
npm install rapidql
Reduce glue code and improve performance by writing just one query to fetch and transform data into a format your app can work with.
// get a random joke and send it to a friend with Twilio
rql.query(`{
Http.get(
url:"https://joke3.p.rapidapi.com/v1/joke"
){
content,
Http.post(
url: "https://api.twilio.com/.../Messages.json",
form: {
Body: content,
From: from,
To: to
}
){
to,
status,
uri
}
}
}`);
// search for photos from unsplash
rql.query(`{
Http.get(
url: "https://api.unsplash.com/search/photos",
params: { query: 'query' }
){
results {
urls {
full
},
description
}
}
}`, {
query: "office"
});
// test the validity of an email address with debounce
rql.query(`{
Http.get(
url: 'https://debounce-email-validation.p.rapidapi.com/v1/',
params: {
email: email
}
){
debounce {
result
}
}
`);
Use the data returned from one data source as input into the query for another.
Use RapidQL to simultaneously make requests to APIs as well as databases, defining only the fields you need returned from each.
Tip: You can also connect to more than 10,000 public APIs on RapidAPI's Marketplace.
Queries made to databases like MySQL, PostgreSQL, and MongoDB can take advantage of aggregations like count and average. These results can be fed into the next query in the RapidQL statement.
RapidQL is open source and free to use, but it’s also built right into the RapidAPI explorer. Learning RapidQL makes it easier to interact with the 10,000+ APIs hosted on RapidAPI.
RapidQL is open source, and we welcome all contributions to the codebase. You’re invited to support the core system (see open issues in GitHub), as well as develop integrations with more data sources and database systems (see planned integration in project board in GitHub).