Run analytical queries from any application

Bouquet lets you build queries, secure them, integrate them and run them at scale.

Queries are a pain in the neck because of SQL coding, robustness, security, access control, privacy, maintenance, knowledge sharing, complexity, performance, scalability... Bouquet is an API-based analytics platform that solves problems related to your queries, letting you reliably integrate them into any application.


Built with Bouquet

We think Bouquet is best adapted to customer-facing analytics (CFA). Our friends at GLIB even developed a chatbot using Bouquet!

Read more about why CFA could be the most important feature in your product.



Benefits

Save on engineering

Get a bunch of features out-of-the-box to avoid coding stuff and go to market faster.

Save on devops

Use Bouquet to securely onboard users at scale in a high performance environment.

Build cooler stuff

With query issues out of the way, be creative and amaze your users.

Check out the Bouquet Query API


Connect Bouquet to your databases and integrate with : beautiful charting tools like D3js and Highcharts, interactive chatbots, data pipelines for machine learning, notification services for recommendations and alerting, third party applications and frameworks.

Intro

This short script aims at showing the basics of Bouquet API using our tiny Javascript client.

What's in here?

When run, this script

  1. Authenticates to our Bouquet demo server using a scoped "guest" APIKey
  2. Queries the sample "Tickit" data-set showing 3 different output types of the same analysis
    • SQL view that gives the SQL query generated by our in-database engine
    • JSON view that gives the raw results of the query as a JSON object
    • Chart view that displays results of the query as a Chart

Going further

For the sake of simplicity, only Bouquet relevant code is shown here. To view the full version, check it here.

To learn more about Bouquet check the API documentation and give Bouquet a try!

JavaScript
run info

var query = {
    path : "/analytics/@'5899bc6715abcc6bed69d766'.@bookmark:'58a5dc6b45d778b2bdb231c9'/query",
    data : {
        timeframe: ["2008-01-01","2008-12-31"],
        groupBy:[
          "to_date(__PERIOD) as 'period'",
          "'Event >  Category >  Catname' as 'series'"
        ],
        metrics:[
          "'Total quantity sold'"
        ],
        orderBy:[
          "asc(to_date(__PERIOD))"
        ],
        limit: 1000
    }
}

var bouquetAPI = new Bouquet({
    url : '//demo.openbouquet.io/release/v4.2',
    clientId : 'api-key-client',
    apiKey : 'eyJhbGciOiJSUzI1...ytR68CGURskRM2D0VPQ'
});

// API Request 1 - SQL
bouquetAPI.request(query, {data : 'SQL'}).then(function(response) {
    displaySQL(response);
});

// API Request 2 - JSON
bouquetAPI.request(query).then(function(response) {
    displayJSON(response);
});

// API Request 3 - Chart
bouquetAPI.request(query, {envelope : 'data',data : 'RECORDS'}).then(function(response) {
    displayDataViz(response);
});
               
API Request 1 SQL
                    
API Request 2 JSON
                    
API Request 3 Chart

Made for developers

Query building

Build the most complex queries in a graphical way, without writing SQL code.

Integration

Use simple Java and JS libraries to speed up integration with any environment.

Security

Configure SSO and user-level data restrictions to automatically onboard your users.

Runtime

Run at scale using advanced cache management and high-availability deployment


What are people saying about Bouquet?

They trust us