Skip to content

Sources this appliance can reach, described from metadata alone

GET
/api/v1/learn/sources
curl --request GET \
--url http://localhost:11044/api/v1/learn/sources \
--header 'X-Embabel-Api-Key: <X-Embabel-Api-Key>'

OK

Media typeapplication/json

The sources this appliance can reach and could learn, answered by GET /learn/sources

object
sources
required

Every detected source, reachable or not, described from metadata alone

Array<object>

One source this appliance can reach, with the evidence that makes it worth learning and what has been learned from it so far

object
asserts
required

What a store of this kind asserts itself, e.g. foreign-key edges and column types for SQL

string
confirmation
required

How much a person must confirm before a realm learned from this kind is fit to query: LOW, MEDIUM or HIGH

string
connected
required

True when the user connected it, so it may be edited or disconnected; false for one a realm declares

boolean
evidence
required

The structured evidence behind summary, by name, for a client that renders more than a sentence

object
key
additional properties
string
inferred
required

What learning has to infer for a store of this kind, beyond what it asserts

string
installedRealm

Directory name of the provisional realm installed from it (auto-<source>); null when none is installed

string
kind
required

What kind of store it is: GRAPHQL, SQL, OPENAPI, ELASTICSEARCH or TABULAR

string
label
required

The kind in words, e.g. relational database

string
learnable
required

False for kinds this appliance can detect but not yet learn

boolean
name
required

The handle the learning endpoints take as {name}: for SQL the registered datasource name, for an API its gateway namespace

string
neededBy
required

Loaded realms that name this source as a SQL datasource, sorted; every one of them stops answering if it is disconnected. Always empty for an API, which realms do not name this way

Array<string>
pendingReview

The id of the caller’s latest review still held for it (GET /learn/{id}), so a client can resume without keeping the id; null when none is held

string
promotedRealms
required

Names of the realms promoted from it, sorted; empty when none

Array<string>
reachable
required

False when detection found the source but could not reach it

boolean
summary
required

One line to show verbatim: what was found, and what about it suggests it is worth learning

string

Example generated

{
"sources": [
{
"asserts": "example",
"confirmation": "example",
"connected": true,
"evidence": {
"additionalProperty": "example"
},
"inferred": "example",
"installedRealm": "example",
"kind": "example",
"label": "example",
"learnable": true,
"name": "example",
"neededBy": [
"example"
],
"pendingReview": "example",
"promotedRealms": [
"example"
],
"reachable": true,
"summary": "example"
}
]
}