Quick Start
This API lets you find terms (concepts) and retrieve their details. You don't need to know RDF or the Semantic Web. If you prefer JSON, you're covered — responses default to JSON-LD (regular JSON with extra structure for advanced use cases).
s
field as your canonical identifier,
and the literal
value for the display label.
Look up a term by IRI
curl -i "https://connectivity-hub.com/terms/083e4731-556e-4012-810a-a961d2777362"
Search by keyword
curl -i -H "Accept: application/json" "https://connectivity-hub.com/search?q=agri"
Introduction
Welcome to the Connectivity Hub Taxonomy API. You can search by keyword to find a term and then request that term's IRI to retrieve its details. If you don't specify a format, responses use JSON by default.
All API endpoints are rooted at:
https://connectivity-hub.com
.
URIs, IRIs, and Identifiers
Each term has a unique Internationalized Resource Identifier (IRI).
In this API, these IRIs are also URIs and URLs, for example:
https://connectivity-hub.com/terms/083e4731-556e-4012-810a-a961d2777362
.
An IRI is an identifier; in our case it also functions as a web
address you can dereference over HTTP to retrieve the term's
details. Note: not every IRI is necessarily a URL in general, but
ours are.
Typical flow
- Search for a keyword using
/search?q=...
. - From the results, copy the value of
s
(the term's IRI). - Request that IRI to get the full term description (optionally add
?version=vN
).
curl -s -H "Accept: application/json" "https://connectivity-hub.com/search?q=agri"
# 2) Copy an "s" value from the results (it's the IRI)
# 3) Dereference the IRI
curl -i "https://connectivity-hub.com/terms/083e4731-556e-4012-810a-a961d2777362"
Get a Specific Term
Retrieve the full description of any term by making a GET request to its unique IRI.
Latest Version (Default)
By default, any request without a version parameter will query the
most recent version of the taxonomy loaded into the system, and the
response will be returned as JSON-LD if no Accept
header is provided.
curl -i "https://connectivity-hub.com/terms/f9dbf392-d5e6-4aaf-aa32-b689581afa14"
Example response (JSON-LD, truncated):
{ "@id": "https://connectivity-hub.com/terms/f9dbf392-d5e6-4aaf-aa32-b689581afa14", "@type": "skos:Concept", "skos:prefLabel": { "@language": "en", "@value": "Carbon dioxide (CO2) fertilization" }, "skos:definition": { "@language": "en", "@value": "The enhancement of the growth of plants ..." }, "skos:inScheme": { "@id": "https://connectivity-hub.com/terms/" } }
Specific Version
To load a specific historical version, add
?version
.
For example, v1
.
curl -i "https://connectivity-hub.com/terms/f9dbf392-d5e6-4aaf-aa32-b689581afa14?version=v1"
To request a different RDF format, set the
Accept
header. For example, to get Turtle:
curl -i -H "Accept: text/turtle" "https://connectivity-hub.com/terms/f9dbf392-d5e6-4aaf-aa32-b689581afa14"
Search Terms
Find terms by label using the search endpoint. The search is case-insensitive and supports prefix matching (use the start of the word, like agri for agriculture).
Search Latest Version (Default)
By default, search uses the latest version of the taxonomy. Results are returned as standard SPARQL results (JSON by default, XML if you ask for it).
curl -i -H "Accept: application/json" "https://connectivity-hub.com/search?q=agri"
Example response (SPARQL JSON results, truncated):
{ "head": { "vars": ["s", "literal", "score", "g"] }, "results": { "bindings": [ { "s": { "type": "uri", "value": "https://connectivity-hub.com/terms/083e4731-556e-4012-810a-a961d2777362" }, "literal": { "type": "literal", "value": "Agriculture" }, "score": { "type": "literal", "datatype": "http://www.w3.org/2001/XMLSchema#float", "value": "1.31" }, "g": { "type": "uri", "value": "urn:x-arq:DefaultGraphNode" } } ] } }
Search Other Versions
To restrict the search to a specific version, add the
?version
parameter (e.g., v1
).
curl -i -H "Accept: application/json" "https://connectivity-hub.com/search?q=oil&version=v1"
Pagination
Use limit
(default 20) and offset
(default 0) to paginate results.
curl -i -H "Accept: application/json" "https://connectivity-hub.com/search?q=agri&limit=10&offset=20"
List All Terms
Retrieve all concepts with optional pagination and version pinning:
curl -i -H "Accept: application/json" "https://connectivity-hub.com/terms"
curl -i -H "Accept: application/json" "https://connectivity-hub.com/terms?version=v1&limit=50&offset=100"
Example response (SPARQL JSON results, truncated):
{ "head": { "vars": ["s", "label", "g"] }, "results": { "bindings": [ { "s": { "type": "uri", "value": "https://connectivity-hub.com/terms/083e4731-556e-4012-810a-a961d2777362" }, "label": { "type": "literal", "xml:lang": "en", "value": "Agriculture" }, "g": { "type": "uri", "value": "urn:x-arq:DefaultGraphNode" } } ] } }
List Available Versions
Retrieve the available taxonomy versions to pin your integration to a stable release:
curl -i -H "Accept: application/json" "https://connectivity-hub.com/versions"
FAQ
What is JSON-LD?
JSON-LD is normal JSON with a small amount of extra metadata that helps systems understand the meaning of fields. If you already use JSON, you can consume JSON-LD the same way.
Do I need to know RDF?
No. You can use the endpoints with simple HTTP requests and handle the responses as JSON.
How do versions work?
We keep each release of the taxonomy separate. If you don't set
a version, we use the latest. To query an older release, add
?version=vN
.