// APIDeveloper access

Public data,ready for code.

Query accepted datasets, categories, and verified publishers as JSON. Public reads require no account or API key.

No key

Public read endpoints

JSON

Structured responses

OpenAPI 3.0

Machine-readable contract

// 01First request

Start withone public query.

This request returns the five latest accepted datasets. Add filters only when you need to narrow the catalogue.

Base URL

https://uod-server.aistudio.ug
curl --get "https://uod-server.aistudio.ug/datasets" \
  --data-urlencode "limit=5" \
  --data-urlencode "sortBy=submissionDate" \
  --data-urlencode "sortOrder=DESC"
Public read request · No token required
// 02Public endpoints

A small surface,built for useful work.

These endpoints expose published records only. Submission, review, and administration remain protected operations.

GET
/datasets

List and filter accepted public datasets

Paginated dataset records

Request parameters

  • title · optional string
  • categoryId · optional UUID
  • institutionId · optional UUID
  • tags · optional string array
  • page · optional number, default 1
  • limit · optional number, default 20
  • sortBy · title, submissionDate, lastUpdatedAt, or reviewDate
  • sortOrder · ASC or DESC

Example path

/datasets?page=1&limit=20&sortOrder=DESC

Response contract

application/json
{ datasets: PublicDataset[], total: number, page: number, limit: number }

200 OK · 400 Invalid query

GET
/datasets/{id}

Retrieve one dataset and its metadata

Dataset record

Request parameters

  • id · required UUID path parameter

Example path

/datasets/{id}

Response contract

application/json
PublicDataset

200 OK · 400 Invalid UUID · 404 Not found

GET
/categories

List public data domains

Category records

Request parameters

None.

Example path

/categories

Response contract

application/json
Category[]

200 OK

GET
/categories/{id}

Retrieve one public data domain

Category record

Request parameters

  • id · required UUID path parameter

Example path

/categories/{id}

Response contract

application/json
Category

200 OK · 400 Invalid UUID · 404 Not found

GET
/institutions

List verified publishers and publication totals

Publisher summaries

Request parameters

None.

Example path

/institutions

Response contract

application/json
InstitutionSummary[]

200 OK

GET
/datasets/metrics

Read the accepted dataset total

Catalogue metrics

Request parameters

None.

Example path

/datasets/metrics

Response contract

application/json
{ total: number }

200 OK

Dataset query controls
title

Search dataset titles

categoryId

Restrict results to a category

institutionId

Restrict results to a publisher

tags

Match one or more dataset tags

page / limit

Control result pagination

sortBy / sortOrder

Control result ordering

Protected operations

Publishing requires an approved account.

Dataset submission, review, and administration use bearer-token authentication and role checks. Those private operations are intentionally omitted from this public reference.

Ask about publishing access