Scilake Lake API GraphQL

Unified access to Scilake's domain-specific graphs and enrichments.

Open GraphiQL

1. Overview

Scilake Lake API is a single GraphQL endpoint that exposes research products across domain-specific graphs (neuroscience, transport-maritime, transport-ccam, energy, cancer), plus graph‑specific enrichment entities (for example vehicle types, tissues, and techniques).

All GraphQL queries are served from /graphql. Use the GraphiQL UI at /graphql (GET) to explore the schema and run queries.

2. Selecting a graph

Every request must include a graphdb header to select the active graph:

  • graphdb: neuroscience
  • graphdb: transport-maritime
  • graphdb: transport-ccam
  • graphdb: energy
  • graphdb: cancer

In GraphiQL, set this under the “Headers” panel:

{ "graphdb": "energy" }

3. Domain-specific enrichments

Each graph has its own enrichment entities connected to products; these entities are returned as part of the getProducts query, but can also be accessed through dedicated queries:

  • Energy: EnergyType, EnergyStorage, GeographicEntity
  • Neuroscience: Technique, Species, UBERONParcellation, BiologicalSex, PreparationType
  • Transport‑CCAM: CommunicationType, EntityConnectionType, LevelOfAutomation, ScenarioType, SensorType, VehicleType, VRUType
  • Transport‑maritime: VesselType
  • Cancer: Disease, Drug, Tissue, Protein, Gene

4. Example queries

4.1 Products (all graphs)

This example returns the first page of products whose title contains “battery”, along with basic impact indicators.

query ProductsExample { getProducts( where: { product: { title: { contains: "battery" } } } page: 1 pageSize: 10 ) { id title productType citationCount popularity } }

4.2 Products filtered by technology and impact

This example returns products that (a) mention the technology “smart traffic signals” and (b) have a citation count greater than 2, using a combined AND filter.

query ComplexProductsExample { getProducts( where: { AND: [ { technology: { name: { equals: "smart traffic signals" } } }, { product: { citationCount: { gt: 2 } } } ] } page: 1 pageSize: 100 ) { id title productType impulse citationCount popularity technologies { localIdentifier name } } }

4.3 Transport‑CCAM – vehicle types

This example lists vehicle types named “Motorcycle” from the transport‑ccam graph.

query VehicleTypesExample { getVehicleTypes( where: { name: { equals: "Motorcycle" } } page: 1 pageSize: 20 ) { localIdentifier name source } }

4.4 Cancer – diseases

This example shows how to search for diseases in the cancer graph whose name contains “breast”.

query DiseasesExample { getDiseases( where: { name: { contains: "breast" } } page: 1 pageSize: 20 ) { id name type } }