Deep links into Bloom

There are many cases where it may be useful to start Bloom with an initial context, allowing your Bloom journey to begin with that context in mind. This context may be supplied by an application, website, email or another medium you are using. To allow for an initial context, a link can be constructed with a pattern or search query that contains the identifiers needed so you immediately can begin exploration from that starting point.

Neo4j Bloom deep links are URLs that contain parameters that specify the context for exploration. Links can be constructed for both the server hosted and Desktop hosted Bloom application. While the link parameters for both cases are the same, the URLs are specific to whether you are trying to access server hosted Bloom or Desktop hosted Bloom. Bloom accepts the following parameters in a deep link:

Table 1. Deep link parameters

Parameter

Description

search

Any search input types that Bloom recognizes.

perspective

Name of Perspective.

run=true/false

Run query or not (set to false by default).

Perspectives are database-specific and the database is stored with the Perspective, which means that when you open Bloom via a deep link, the database is automatically selected based on the Perspective.

When the deep link is clicked, search context passed in gets populated into the search input. If the run parameter is set to true, Bloom will automatically run the first query suggestion fetched. If the run parameter is omitted, it is set to false and Bloom will only use the search input to fetch suggestions. Perspective context is used to select the intended perspective for the particular exploration.

To illustrate this, picture that you are given a list of employees in a particular function:

bloom deeplink list

Based on this, you may wish to explore the graph of one specific employee in Bloom:

bloom deeplink

Server hosted Bloom

When you want to link to Bloom in a web browser, you need to construct the link for server hosted Bloom. The link format is as follows:

For Neo4j 4.x:
http://<server_hosting_Bloom>[:<http-port>]/bloom/[?<parameter>][&<parameter>]...
https://<server_hosting_Bloom>[:<https-port>]/bloom/[?<parameter>][&<parameter>]...

In the example above, the link would be constructed as follows (if you want the link to run the query):

http://1.1.1.1:7474/bloom/?search=employee%203115112&perspective=HRM%20Perspective&run=true

As indicated by enclosing with [], both search_input and perspective_name are optional and should be URL encoded if they contain spaces or other special characters.

Desktop hosted Bloom

When you want to link to Bloom and open it in Neo4j Desktop, you need to construct the link for Desktop hosted Bloom. The link format is as follows:

neo4j://graphapps/neo4j-bloom/[?<parameter>][&<parameter>]...

In the example above, the link would be constructed as follows (if you want the link to run the query):

neo4j://graphapps/neo4j-bloom/?search=employee%203115112&perspective=HRM%20Perspective&run=true

Just like in the case of server hosted Bloom, as indicated by []; both search_input and perspective_name are optional and should be URL encoded if they contain spaces or other special characters.

A deep link to Desktop hosted Bloom requires an active connection to the specific Neo4j graph for which the link is applicable, and uses the user credentials stored in Desktop for the graph in question.