For Agents
Detect and validate dataset licenses through Licensius — guess licenses in RDF or text, list known licenses, and validate ODRL policy fragments.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Licensius, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Licensius API.
List the catalogue of known licenses recognised by Licensius via GET /license/list
Detect the license expressed in an RDF ontology or dataset using GET /license/findlicenseinrdf
Identify the license referenced in a free-text fragment with GET /license/findlicenseintxt
GET STARTED
Use for: I need to detect the license of a dataset from its RDF metadata, Identify what license is mentioned in a block of text, List all licenses Licensius recognises, Validate an ODRL policy fragment before publishing
Not supported: Does not generate licenses, scan code dependencies for licenses, or enforce DRM — use for license detection in RDF or text and ODRL fragment validation only.
Jentic publishes the only available OpenAPI specification for Licensius, keeping it validated and agent-ready. Licensius offers licensing-related web services for the linked-data and ODRL community, exposing endpoints to list known licenses, guess the license attached to a body of RDF or free text, and validate ODRL (Open Digital Rights Language) policy fragments. The 5-endpoint surface is targeted at researchers, data publishers, and rights-management tools that need machine-readable license detection and validation.
Validate an ODRL policy fragment against the standard schema through GET /odrl/validate
Verify connectivity and version with the GET /test endpoint
Patterns agents use Licensius API for, with concrete tasks.
★ Open-data license auto-detection
An open-data portal harvests datasets from many sources and needs to record which license each one uses. The portal feeds dataset metadata to GET /license/findlicenseinrdf for RDF/Turtle blobs and GET /license/findlicenseintxt for plain-text descriptions, then writes the detected license back to the catalogue. This converts inconsistent free-text license fields into a normalised, machine-readable identifier.
Pass the RDF metadata of a dataset to GET /license/findlicenseinrdf and store the returned license URI in the catalogue's 'license' field.
ODRL policy validation
A rights-management workflow generates ODRL policy fragments to express usage rights on digital assets. Before saving or publishing each policy, the workflow calls GET /odrl/validate to confirm the fragment conforms to the ODRL schema. This catches malformed permissions or prohibitions early, preventing downstream consumers from encountering invalid rights expressions.
Send a candidate ODRL fragment to GET /odrl/validate and reject the publish action if validation fails.
License harmonisation in research datasets
A research data lake contains datasets with inconsistent license labels. The team enumerates licenses through GET /license/list, runs each dataset's text or RDF through the appropriate find-license endpoint, and re-tags the dataset with the canonical license identifier returned by Licensius. Over time this harmonises licensing metadata across the lake.
Iterate every dataset, call GET /license/findlicenseintxt or /license/findlicenseinrdf, and update the dataset record with the canonical license URI.
AI agent license compliance via Jentic
An AI compliance agent reviews incoming dataset contributions for licensing issues. Through Jentic the agent searches for 'detect dataset license' or 'validate ODRL policy', loads the matching Licensius operation, and executes against the public endpoint. The agent flags datasets with missing or non-permissive licenses for human review before they enter the data product.
Use Jentic to search 'detect license in text', load GET /license/findlicenseintxt, and report back which datasets in a batch lack a recognisable open license.
5 endpoints — jentic publishes the only available openapi specification for licensius, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/license/list
List known licenses.
/license/findlicenseinrdf
Detect license in an RDF dataset.
/license/findlicenseintxt
Detect license in a text fragment.
/odrl/validate
Validate an ODRL fragment.
/test
Connectivity test.
/license/list
List known licenses.
/license/findlicenseinrdf
Detect license in an RDF dataset.
/license/findlicenseintxt
Detect license in a text fragment.
/odrl/validate
Validate an ODRL fragment.
/test
Connectivity test.
Three things that make agents converge on Jentic-routed access.
Credential isolation
Licensius does not require authentication, so there is no API secret to store. Through Jentic, requests still flow through the controlled execution layer, giving operators audit logs and rate-limit safeguards even on this public endpoint.
Intent-based discovery
Agents search Jentic with phrases like 'detect dataset license' or 'validate ODRL policy' and the platform returns the matching Licensius operation across the 5 endpoints with its full input schema.
Time to first call
Direct integration: a few hours wiring the public endpoints, parsing license URIs, and handling the unauthenticated calls. Through Jentic: 10-15 minutes to search, load, and execute the first call.
Alternatives and complements available in the Jentic catalogue.
GitHub API
Source-control platform whose repositories carry LICENSE files Licensius can recognise.
Use GitHub to fetch a repository's LICENSE or README text, then pass that text to Licensius for canonical license identification.
Snyk API
Vulnerability and license scanner for software dependencies, focused on package ecosystems rather than RDF datasets.
Choose Snyk when the goal is auditing the licenses of code dependencies in package manifests; choose Licensius for RDF and ODRL data licensing.
Specific to using Licensius API through Jentic.
Why is there no official OpenAPI spec for Licensius?
Licensius does not publish a maintained OpenAPI specification on its own domain. Jentic generates and maintains this spec so that AI agents and developers can call Licensius via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the Licensius API use?
The Licensius spec does not declare an authentication scheme — the endpoints are exposed publicly at http://licensius.com/api. Even so, when calling through Jentic the request goes through the platform's controlled execution layer rather than being made from arbitrary agent code, which keeps usage observable.
Can I detect the license of an RDF dataset with this API?
Yes. GET /license/findlicenseinrdf accepts an RDF ontology or dataset and returns the license it can identify. For free-text descriptions, use GET /license/findlicenseintxt instead. Both return a canonical license identifier when one is recognised.
What are the rate limits for the Licensius API?
Licensius does not publish a rate-limit value in the OpenAPI spec or on the project site. Treat it as a research-grade public service: keep request volume modest, cache the result of /license/list locally, and back off if the endpoint returns 5xx errors during heavy use.
How do I validate an ODRL fragment through Jentic?
Install with 'pip install jentic', search for 'validate an ODRL policy', and Jentic returns GET /odrl/validate. Load the operation, supply the ODRL fragment as the input parameter, and execute. The response indicates whether the fragment is well-formed.