Stardog
Stardog is an enterprise knowledge graph platform that unifies data across silos using a semantic data layer combining knowledge graphs, virtualization, inference, and AI. The platform enables organizations to query data via SPARQL, GraphQL, and natural language while supporting RDF, OWL reasoning, and virtual graphs over relational sources. Stardog exposes a comprehensive HTTP API for database, query, transaction, and admin operations using HTTP Basic or OAuth Bearer authentication.
1 APIs
0 Features
Knowledge GraphGraph DatabaseSemantic WebSPARQLData VirtualizationEnterprise Data
APIs
Stardog HTTP API
Comprehensive HTTP API for managing Stardog databases, executing SPARQL queries, running transactions, managing users and roles, and administering the server. Authentication sup...
Collections
Stardog HTTP API
OPENGraphQL
Stardog GraphQL API
GRAPHQLResources
🔗
TrustCenter
TrustCenter
🔗
DomainSecurity
DomainSecurity
🔗
LinkedIn
LinkedIn
🔗
Website
Website
🔗
Documentation
Documentation
💰
Pricing
Pricing
📝
Signup
Signup
👥
GitHub
GitHub
📰
Blog
Blog
Sources
opencollection: 1.0.0
info:
name: Stardog HTTP API
version: 12.0.3
items:
- info:
name: Checkpoints
type: folder
items:
- info:
name: Restore checkpoints
type: http
http:
method: PUT
url: http://localhost:5820/admin/checkpoint/:db/:checkpoint
params:
- name: db
value: myDb
type: path
description: Database name
- name: checkpoint
value: ''
type: path
description: the name of the checkpoint
docs: Restore checkpoints
- info:
name: List checkpoints
type: http
http:
method: GET
url: http://localhost:5820/admin/checkpoint/:db
params:
- name: db
value: myDb
type: path
description: Database name
docs: List checkpoints
- info:
name: Create checkpoint
type: http
http:
method: POST
url: http://localhost:5820/admin/checkpoint/:db
params:
- name: db
value: myDb
type: path
description: Database name
docs: Create checkpoint
- info:
name: Roles
type: folder
items:
- info:
name: List Roles
type: http
http:
method: GET
url: http://localhost:5820/admin/roles
docs: Get the names of all roles in the system
- info:
name: Add role
type: http
http:
method: POST
url: http://localhost:5820/admin/roles
body:
type: json
data: '{}'
docs: Add role
- info:
name: Delete role
type: http
http:
method: DELETE
url: http://localhost:5820/admin/roles/:role
params:
- name: role
value: ''
type: path
description: Role name
- name: force
value: ''
type: query
description: Whether to force delete if role is assigned to users
docs: Delete role
- info:
name: Get users with role
type: http
http:
method: GET
url: http://localhost:5820/admin/roles/:role/users
params:
- name: role
value: ''
type: path
description: Role name
docs: Returns a list of all users that have a specific role
- info:
name: List Roles with their permissions
type: http
http:
method: GET
url: http://localhost:5820/admin/roles/list
docs: Retrieve a detailed list of all roles, including their permissions
- info:
name: Permissions
type: folder
items:
- info:
name: Get user permissions
type: http
http:
method: GET
url: http://localhost:5820/admin/permissions/user/:user
params:
- name: user
value: ''
type: path
description: Username
docs: Get all permissions assigned to a given user
- info:
name: Add User Permission
type: http
http:
method: PUT
url: http://localhost:5820/admin/permissions/user/:user
params:
- name: user
value: ''
type: path
description: Username
body:
type: json
data: '{}'
docs: Grant a permission directly to a specified user
- info:
name: Get effective user permissions
type: http
http:
method: GET
url: http://localhost:5820/admin/permissions/effective/user/:user
params:
- name: user
value: ''
type: path
description: Username
docs: Get all permissions assigned to a given user as well as those granted by assigned roles
- info:
name: Delete Role Permission
type: http
http:
method: POST
url: http://localhost:5820/admin/permissions/role/:role/delete
params:
- name: role
value: ''
type: path
description: Role name
body:
type: json
data: '{}'
docs: Remove a permission from a given role
- info:
name: Delete User Permission
type: http
http:
method: POST
url: http://localhost:5820/admin/permissions/user/:user/delete
params:
- name: user
value: ''
type: path
description: Username
body:
type: json
data: '{}'
docs: Revoke a permission from a given user
- info:
name: Check User Permission
type: http
http:
method: GET
url: http://localhost:5820/admin/permissions/check
docs: Check if the currently authenticated user has permission to perform an action on a resource, taking wildcards into
account
- info:
name: Get role permissions
type: http
http:
method: GET
url: http://localhost:5820/admin/permissions/role/:role
params:
- name: role
value: ''
type: path
description: Role name
docs: Get all permissions attributed to a given role
- info:
name: Add Role Permission
type: http
http:
method: PUT
url: http://localhost:5820/admin/permissions/role/:role
params:
- name: role
value: ''
type: path
description: Role name
body:
type: json
data: '{}'
docs: Add a permission to a specified role
- info:
name: Monitoring
type: folder
items:
- info:
name: List processes
type: http
http:
method: GET
url: http://localhost:5820/admin/processes
params:
- name: all
value: ''
type: query
description: Whether to include all processes in cloud
docs: Get a list of all running processes
- info:
name: Get process
type: http
http:
method: GET
url: http://localhost:5820/admin/processes/:name
params:
- name: name
value: ''
type: path
description: The name of the process
docs: Get details of a specific process
- info:
name: Kill process
type: http
http:
method: DELETE
url: http://localhost:5820/admin/processes/:name
params:
- name: name
value: ''
type: path
description: The name of the process
docs: Kill process
- info:
name: Stored Functions
type: folder
items:
- info:
name: Get Stored Function
type: http
http:
method: GET
url: http://localhost:5820/admin/functions/stored/:name
params:
- name: name
value: ''
type: path
description: The name of the stored function
docs: Get Stored Function
- info:
name: Delete Stored Function
type: http
http:
method: DELETE
url: http://localhost:5820/admin/functions/stored/:name
params:
- name: name
value: ''
type: path
description: The name of the stored function
docs: Delete the stored function specified in the query string parameter
- info:
name: Get Stored Functions
type: http
http:
method: GET
url: http://localhost:5820/admin/functions/stored
params:
- name: name
value: ''
type: query
description: Stored Function name
docs: Retrieve all stored functions on the server, or optionally just the function specified in the query string parameter
- info:
name: Add Stored Function
type: http
http:
method: POST
url: http://localhost:5820/admin/functions/stored
docs: Add Stored Function
- info:
name: Delete Stored Functions
type: http
http:
method: DELETE
url: http://localhost:5820/admin/functions/stored
params:
- name: name
value: ''
type: query
description: Stored Function name
docs: Delete all stored functions on the server, or optionally just the function specified in the query string parameter
- info:
name: Server Status/Metrics
type: folder
items:
- info:
name: Get Server/Database metrics
type: http
http:
method: GET
url: http://localhost:5820/admin/status
docs: Return metric information from the registry in JSON format. If 'admin' is replaced in the path with a valid database
name, metrics for just that database will be returned.
- info:
name: Get Prometheus metrics
type: http
http:
method: GET
url: http://localhost:5820/admin/status/prometheus
params:
- name: include
value: ''
type: query
description: Regex used to match metric names to be included
- name: exclude
value: ''
type: query
description: Regex used to match metric names to be excluded, takes precedence over include
docs: Return metric information from the registry in Prometheus format
- info:
name: Get Prometheus metrics (only accessible from a restricted cidr range)
type: http
http:
method: GET
url: http://localhost:5820/admin/status/prometheus/internal
params:
- name: include
value: ''
type: query
description: Regex used to match metric names to be included
- name: exclude
value: ''
type: query
description: Regex used to match metric names to be excluded, takes precedence over include
docs: Return metric information from the registry in Prometheus format
- info:
name: Server Admin
type: folder
items:
- info:
name: Get SDU usage summary statistics
type: http
http:
method: GET
url: http://localhost:5820/admin/sdu-usage/summary
docs: Retrieve aggregated summary statistics for SDU (Stardog Data Unit) usage events. Returns total queries, total elapsed
time, and breakdowns by user, database, and agent. Optionally filter by start and end timestamps in ISO-8601 format
(e.g., 2023-12-18T12:00:00Z).
- info:
name: Server health check
type: http
http:
method: GET
url: http://localhost:5820/admin/healthcheck
docs: Determine whether the server is running and able to accept traffic
- info:
name: Get server diagnostics report
type: http
http:
method: POST
url: http://localhost:5820/admin/diagnostics
docs: Get server diagnostics report
- info:
name: Server aliveness check
type: http
http:
method: GET
url: http://localhost:5820/admin/alive
docs: Determine whether the server is running
- info:
name: Get SDU usage events (streaming)
type: http
http:
method: GET
url: http://localhost:5820/admin/sdu-usage
docs: Retrieve SDU (Stardog Data Unit) usage events from the sdu_usage.log file. Events are streamed to avoid memory issues
under heavy load. Optionally filter by start and end timestamps in ISO-8601 format (e.g., 2023-12-18T12:00:00Z).
- info:
name: Get server logs
type: http
http:
method: GET
url: http://localhost:5820/admin/logs
body:
type: json
data: '{}'
docs: Retrieve server logs as a zip file. Supports filtering by log types, including rotated logs, and limiting the number
of lines returned.
- info:
name: Shutdown server
type: http
http:
method: POST
url: http://localhost:5820/admin/shutdown
docs: Shutdown server
- info:
name: Queries
type: folder
items:
- info:
name: List queries
type: http
http:
method: GET
url: http://localhost:5820/admin/queries
docs: Get a list of all running queries
- info:
name: Get stored query
type: http
http:
method: GET
url: http://localhost:5820/admin/queries/stored/:name
params:
- name: name
value: ''
type: path
description: The name of the stored query
docs: Get stored query
- info:
name: Rename stored query
type: http
http:
method: POST
url: http://localhost:5820/admin/queries/stored/:name
params:
- name: name
value: ''
type: path
description: The name of the stored query
- name: move
value: ''
type: query
body:
type: json
data: '{}'
docs: Rename stored query
- info:
name: Delete stored query
type: http
http:
method: DELETE
url: http://localhost:5820/admin/queries/stored/:name
params:
- name: name
value: ''
type: path
description: The name of the stored query
docs: Delete stored query
- info:
name: List stored queries
type: http
http:
method: GET
url: http://localhost:5820/admin/queries/stored
params:
- name: db
value: myDb
type: query
description: Database name
docs: List stored queries
- info:
name: Add stored query
type: http
http:
method: POST
url: http://localhost:5820/admin/queries/stored
docs: Add stored query
- info:
name: Update stored query
type: http
http:
method: PUT
url: http://localhost:5820/admin/queries/stored
docs: Add stored query, overwriting if a query with that name already exists
- info:
name: Delete all stored queries
type: http
http:
method: DELETE
url: http://localhost:5820/admin/queries/stored
docs: Delete all stored queries
- info:
name: Get query
type: http
http:
method: GET
url: http://localhost:5820/admin/queries/:name
params:
- name: name
value: ''
type: path
description: The name of the query
- name: plan
value: ''
type: query
- name: verbose
value: ''
type: query
docs: Get details of a specific query
- info:
name: Kill query
type: http
http:
method: DELETE
url: http://localhost:5820/admin/queries/:name
params:
- name: name
value: ''
type: path
description: The name of the query
docs: Kill query
- info:
name: Users
type: folder
items:
- info:
name: List users
type: http
http:
method: GET
url: http://localhost:5820/admin/users
docs: List users
- info:
name: Add user
type: http
http:
method: POST
url: http://localhost:5820/admin/users
body:
type: json
data: '{}'
docs: Add user
- info:
name: User is Superuser
type: http
http:
method: GET
url: http://localhost:5820/admin/users/:user/superuser
params:
- name: user
value: ''
type: path
description: Username
docs: Return whether or not a user is a Superuser
- info:
name: User enabled
type: http
http:
method: GET
url: http://localhost:5820/admin/users/:user/enabled
params:
- name: user
value: ''
type: path
description: Username
docs: Return whether or not a user is enabled (active) in the system
- info:
name: Enable/Disable User
type: http
http:
method: PUT
url: http://localhost:5820/admin/users/:user/enabled
params:
- name: user
value: ''
type: path
description: Username
body:
type: json
data: '{}'
docs: Enable/Disable User
- info:
name: Change user's password
type: http
http:
method: PUT
url: http://localhost:5820/admin/users/:user/pwd
params:
- name: user
value: ''
type: path
description: Username
body:
type: json
data: '{}'
docs: Change user's password
- info:
name: Get user's roles
type: http
http:
method: GET
url: http://localhost:5820/admin/users/:user/roles
params:
- name: user
value: ''
type: path
description: Username
docs: Retrieve a list of all roles explicitly assigned to a user
- info:
name: Add role to user
type: http
http:
method: POST
url: http://localhost:5820/admin/users/:user/roles
params:
- name: user
value: ''
type: path
description: Username
body:
type: json
data: '{}'
docs: Add role to user
- info:
name: Set user's roles
type: http
http:
method: PUT
url: http://localhost:5820/admin/users/:user/roles
params:
- name: user
value: ''
type: path
description: Username
body:
type: json
data: '{}'
docs: Overwrite the list of roles explicitly assigned to a user
- info:
name: Remove role from user
type: http
http:
method: DELETE
url: http://localhost:5820/admin/users/:user/roles/:role
params:
- name: user
value: ''
type: path
description: Username
- name: role
value: ''
type: path
description: Role name
docs: Remove role from user
- info:
name: User auto-created
type: http
http:
method: GET
url: http://localhost:5820/admin/users/:user/auto_created
params:
- name: user
value: ''
type: path
description: Username
docs: Return whether a user was auto-created as a result the OAuth jwt authentication process
- info:
name: List users with attributes, roles and permissions
type: http
http:
method: GET
url: http://localhost:5820/admin/users/list
docs: Retrieve a detailed list of all users, including their roles, permissions, and status
- info:
name: Get User
type: http
http:
method: GET
url: http://localhost:5820/admin/users/:user
params:
- name: user
value: ''
type: path
description: Username
docs: Retrieve attributes, roles, and permissions of a User
- info:
name: Delete User
type: http
http:
method: DELETE
url: http://localhost:5820/admin/users/:user
params:
- name: user
value: ''
type: path
description: Username
docs: Delete User
- info:
name: DB Admin
type: folder
items:
- info:
name: List databases
type: http
http:
method: GET
url: http://localhost:5820/admin/databases
docs: List all the databases in the server
- info:
name: Create database
type: http
http:
method: POST
url: http://localhost:5820/admin/databases
body:
type: multipart-form
data: []
docs: Add a new database to the server, optionally with RDF bulk-loaded
- info:
name: Get all DB options
type: http
http:
method: GET
url: http://localhost:5820/admin/databases/:db/options
params:
- name: db
value: myDb
type: path
description: Database name
docs: Get the value of every metadata option for a database
- info:
name: Set DB options
type: http
http:
method: POST
url: http://localhost:5820/admin/databases/:db/options
params:
- name: db
value: myDb
type: path
description: Database name
body:
type: json
data: '{}'
docs: Set the value of specific metadata options for a database
- info:
name: Get DB options
type: http
http:
method: PUT
url: http://localhost:5820/admin/databases/:db/options
params:
- name: db
value: myDb
type: path
description: Database name
body:
type: json
data: '{}'
docs: Get the value of specific metadata options for a database
- info:
name: Restore database
type: http
http:
method: PUT
url: http://localhost:5820/admin/restore
params:
- name: from
value: ''
type: query
description: The location on the server of the backup
- name: force
value: ''
type: query
description: Whether or not to overwrite an existing database with this backup
- name: name
value: ''
type: query
description: The name of the restored database, if different
docs: Restore a database from backup
- info:
name: Get all metadata properties
type: http
http:
method: GET
url: http://localhost:5820/admin/config_properties
docs: Get information on all database metadata properties, including description and example values
- info:
name: Return transaction Log
type: http
http:
method: GET
url: http://localhost:5820/admin/databases/:db/txlog
params:
- name: db
value: myDb
type: path
description: Database name
docs: Return a chunk (or the entirety) of this database's transaction log for point in time recovers.
- info:
name: Replay Transaction Log
type: http
http:
method: POST
url: http://localhost:5820/admin/databases/:db/txlog
params:
- name: db
value: myDb
type: path
description: Database name
- name: validate
value: ''
type: path
description: Server should validate the transaction log before applying it. Checks if the last committed transaction
is at the beginning of the Log. Default is true
docs: Replay a transaction log onto an existing database. This operation applies the provided transaction log to the database,
typically for point in time restore.
- info:
name: Verify database
type: http
http:
method: POST
url: http://localhost:5820/admin/databases/:db/verify
params:
- name: db
value: myDb
type: path
description: Database name
docs: Checks that the data in the database is not corrupted, for example, there're no inconsistencies across indexes
- info:
name: Repair database
type: http
http:
method: POST
url: http://localhost:5820/admin/databases/:db/repair
params:
- name: db
value: myDb
type: path
description: Database name
docs: Attempt to recover a corrupted database
- info:
name: Online database
type: http
http:
method: PUT
url: http://localhost:5820/admin/databases/:db/online
params:
- name: db
value: myDb
type: path
description: Database name
body:
type: json
data: '{}'
docs: Bring a database online
- info:
name: Backup all databases
type: http
http:
method: PUT
url: http://localhost:5820/admin/databases/backup_all
params:
- name: to
value: ''
type: query
description: File location on the server to which to save the backups (defaults to $STARDOG_HOME/.backup)
docs: Create a backup of all databases on the server
- info:
name: Backup a database
type: http
http:
method: PUT
url: http://localhost:5820/admin/databases/:db/backup
params:
- name: db
value: myDb
type: path
description: Database name
- name: to
value: ''
type: query
description: File location on the server to which to save the backup (defaults to $STARDOG_HOME/.backup)
docs: Create a backup of a database on the server
- info:
name: Drop database
type: http
http:
method: DELETE
url: http://localhost:5820/admin/databases/:db
params:
- name: db
value: myDb
type: path
description: Database name
docs: Delete the database
- info:
name: Return all databases along with their configuration options
type: http
http:
method: GET
url: http://localhost:5820/admin/databases/options
docs: List all the databases in the server including all database configuration options
- info:
name: Rename database
type: http
http:
method: POST
url: http://localhost:5820/admin/databases/:db/rename
params:
- name: db
value: myDb
type: path
description: Database name
docs: Make existing database to be identified by a new name
- info:
name: Offline database
type: http
http:
method: PUT
url: http://localhost:5820/admin/databases/:db/offline
params:
- name: db
value: myDb
type: path
description: Database name
body:
type: json
data: '{}'
docs: Take a database offline
- info:
name: Optimize database
type: http
http:
method: PUT
url: http://localhost:5820/admin/databases/:db/optimize
params:
- name: db
value: myDb
type: path
description: Database name
body:
type: json
data: '{}'
docs: Optimize a database
- info:
name: Get server properties
type: http
http:
method: GET
url: http://localhost:5820/admin/properties
params:
- name: name
value: ''
type: query
description: Specific names of server properties to retrieve (multiple params can be specified)
docs: Gets the property value for a server configuration option. This value will be the default for the option or the
override in the properties file.
- info:
name: Set server properties
type: http
http:
method: POST
url: http://localhost:5820/admin/properties
body:
type: json
data: '{}'
docs: Set the value of specific server properties
- info:
name: Get DB Size
type: http
http:
method: GET
url: http://localhost:5820/:db/size
params:
- name: db
value: myDb
type: path
description: Database name
- name: exact
value: ''
type: query
description: Whether to request that the database size be exact instead of approximate
docs: Retrieve the size of the db. Size is approximate unless the exact parameter is set to true
- info:
name: Generate Model
type: http
http:
method: GET
url: http://localhost:5820/:db/model
params:
- name: db
value: myDb
type: path
description: Database name
- name: reasoning
value: ''
type: query
description: Enable Reasoning
- name: output
value: ''
type: query
description: Desired output format (text, owl, shacl, sql, graphql)
docs: Generate the reasoning model used by this database in various formats
- info:
name: Export database
type: http
http:
method: GET
url: http://localhost:5820/:db/export
params:
- name: db
value: myDb
type: path
description: Database name
- name: obf
value: ''
type: query
description: Path to an obfuscation configuration file, or DEFAULT
docs: Export database
- info:
name: Export database (obfuscated)
type: http
http:
method: POST
url: http://localhost:5820/:db/export
params:
- name: db
value: myDb
type: path
description: Database name
docs: Export database (obfuscated)
- info:
name: Get namespaces
type: http
http:
method: GET
url: http://localhost:5820/:db/namespaces
params:
- name: db
value: myDb
type: path
description: Database name
docs: Retrieve the namespaces stored in the database
- info:
name: Import namespaces
type: http
http:
method: POST
url: http://localhost:5820/:db/namespaces
params:
- name: db
value: myDb
type: path
description: Database name
docs: Add namespaces to the database via a block or blocks of RDF that declares them
- info:
name: Integrity Constraints / SHACL
type: folder
items:
- info:
name: List constraints
type: http
http:
method: GET
url: http://localhost:5820/:db/icv
params:
- name: db
value: myDb
type: path
description: Database name
docs: List constraints
- info:
name: Validate constraints
type: http
http:
method: POST
url: http://localhost:5820/:db/icv/validate
params:
- name: db
value: myDb
type: path
description: Database name
docs: Determine whether or not the given constraints are valid
- info:
name: Validate constraints in transaction
type: http
http:
method: POST
url: http://localhost:5820/:db/icv/:txid/validate
params:
- name: db
value: myDb
type: path
description: Database name
- name: txid
value: ''
type: path
description: Transaction ID
docs: Determine whether or not the given constraints are valid
- info:
name: SHACL validation report
type: http
http:
method: POST
url: http://localhost:5820/:db/icv/report
params:
- name: db
value: myDb
type: path
description: Database name
- name: shapes
value: ''
type: query
description: SHACL shapes to validate
- name: shacl.shape.graphs
value: ''
type: query
description: SHACL shape graphs to validate
- name: nodes
value: ''
type: query
description: SHACL focus node(s) to validate
- name: countLimit
value: ''
type: query
description: Maximum number of violations to report
- name: shacl.targetClass.simple
value: ''
type: query
- name: shacl.violation.limit.shape
value: ''
type: query
description: number of violation limits per SHACL shapes
- name: graph-uri
value: https://stardog.com/graphs/myGraph
type: query
description: Named Graph / Context
- name: reasoning
value: ''
type: query
description: Enable Reasoning
docs: Produces a SHACL validation report against the specified shape(s)
- info:
name: SHACL validation report in transaction
type: http
http:
method: POST
url: http://localhost:5820/:db/icv/:txid/report
params:
- name: db
value: myDb
type: path
description: Database name
- name: txid
value: ''
type: path
description: Transaction ID
- name: shapes
value: ''
type: query
description: SHACL shapes to validate
- name: shacl.shape.graphs
value: ''
type: query
description: SHACL shape graphs to validate
- name: nodes
value: ''
type: query
description: SHACL focus node(s) to validate
- name: countLimit
value: ''
type: query
description: Maximum number of violations to report
- name: shacl.targetClass.simple
value: ''
type: query
- name: shacl.violation.limit.shape
value: ''
type: query
description: number of violation limits per SHACL shapes
docs: Produces a SHACL validation report against the specified shape(s)
- info:
name: Virtual Graphs External Compute
type: folder
items:
- info:
name: Import virtual graph
type: http
http:
method: POST
url: http://localhost:5820/admin/virtual_graphs_compute/import
body:
type: json
data: '{}'
docs: Import (materialize) a delimited file into the knowledge graph
- info:
name: Import virtual graph
type: http
http:
method: POST
url: http://localhost:5820/admin/virtual_graphs_compute/import_db
body:
type: json
data: '{}'
docs: Import (materialize) a virtual graph directly into the local knowledge graph
- info:
name: Data Caching
type: folder
items:
- info:
name: Refresh cache
type: http
http:
method: POST
url: http://localhost:5820/admin/cache/refresh/:name
params:
- name: name
value: ''
type: path
description: The name of the cache
docs: Refresh cache
- info:
name: Create cache
type: http
http:
method: POST
url: http://localhost:5820/admin/cache
body:
type: json
data: '{}'
docs: Create a new cached dataset from a virtual graph
- info:
name: Get cached graphs
type: http
http:
method: GET
url: http://localhost:5820/admin/cache/graphs
d
# --- truncated at 32 KB (81 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/stardog/refs/heads/main/apis.yml