DataONEorg / api-entrypoint

The DataONE Kubernetes cluster's API ingress controller component that is shared between microservices
0 stars 1 forks source link

Expose the 'virtuoso' service #9

Open ThomasThelen opened 3 years ago

ThomasThelen commented 3 years ago

The slinky stack contains the 'virtuoso' service that should be exposed to users and administrators. The three parts that are of interest are...

1. Conductor Webapp

The Virtuoso Conductor web application is nice to access because without it, accounts and the graph store settings need to be modified using SQL commands.

2. SPARQL Endpoint

The sparql endpoint can be found at /sparql endpoint. Users will need their OAUTH token to perform the queries here.

3. OAUTH Endpoint

Users should be able to generate an OAUTH token for use with the sparql endpoint; we should definitely be exposing /oauth to allow this.

Endpoint Name

https://api.dataone.org/slinky might not be that descriptive for anyone unfamiliar with service. I think that https://api.dataone.org/graph, https://api.dataone.org/virtuoso, or https://api.dataone.org/knowledge could work.

I think a different subdomain might make the most sense since it's not completely an API, but more of a standalone service with an API endpoint. This would give something like graph.dataone.org/sparql for the SPARQL endpoint, graph.dataone.org/oauth for OAUTH, and graph.dataone.org for the conductor webapp

gothub commented 3 years ago

A couple of questions to consider:

ThomasThelen commented 3 years ago
  1. I'm not sure about this one. Personally, I would expect anything with an api subdomain to just be DataONE API services. With Slinky, it has the web app and API bundled. In my mind I see those both bundled together under a different subdomain. @mbjones may have some input here; I'll make a note of it if it's something we want to discuss on the development call.
  2. My vote is yes