The REST API manages all of DBRepo. This documentation is also available as Swagger UI.
REST API¶
Version 1.0.0
The merged REST API of DBRepo for users, developers and data stewards to be accessed publicly. Have a look at the source code for non-public endpoints that are used between the services themselves.
Path Table¶
Reference Table¶
Path Details¶
[GET]/api/v1/database/{databaseId}/view/{viewId}/data¶
- 
Summary 
 Get view data
- 
Description 
 Gets data from a view of a database. For private databases, the user needs at least READ access to the associated database.
- 
Security 
 basicAuth
 bearerAuth
Parameters(Query)¶
page?: integer
size?: integer
timestamp?: string
Headers¶
Accept: string
Responses¶
- 200 Retrieved view data
application/json
{
  "type": "string"
}
text/csv
- 
400 Request pagination is malformed 
- 
403 Not allowed to retrieve view data 
- 
404 Failed to find view in metadata database 
- 
406 Failed to format data 
- 
409 View schema could not be mapped 
- 
503 Failed to establish connection with the metadata service 
[HEAD]/api/v1/database/{databaseId}/view/{viewId}/data¶
- 
Summary 
 Get view data
- 
Description 
 Gets data from a view of a database. For private databases, the user needs at least READ access to the associated database.
- 
Security 
 basicAuth
 bearerAuth
Parameters(Query)¶
page?: integer
size?: integer
timestamp?: string
Headers¶
Accept: string
Responses¶
- 200 Retrieved view data
application/json
{
  "type": "string"
}
text/csv
- 
400 Request pagination is malformed 
- 
403 Not allowed to retrieve view data 
- 
404 Failed to find view in metadata database 
- 
406 Failed to format data 
- 
409 View schema could not be mapped 
- 
503 Failed to establish connection with the metadata service 
[GET]/api/v1/database/{databaseId}/table/{tableId}/data¶
- 
Summary 
 Get table data
- 
Description 
 Gets data from a table with id. For a table in a private database, the user needs to have at least READ access to the associated database. Requests with HTTP method GET return the full dataset, requests with HTTP method HEAD only the number of tuples in theX-Countheader.
- 
Security 
 basicAuth
 bearerAuth
Parameters(Query)¶
timestamp?: string
page?: integer
size?: integer
Headers¶
Accept: string
Responses¶
- 200 Get table data
application/json
{
  "type": "string"
}
text/csv
- 
400 Request pagination or table data select query is malformed 
- 
403 Not allowed to get table data 
- 
404 Failed to find table in metadata database 
- 
406 Failed to format data 
- 
503 Failed to establish connection with the metadata service 
[PUT]/api/v1/database/{databaseId}/table/{tableId}/data¶
- 
Summary 
 Update tuple
- 
Description 
 Updates a data tuple into a table, then the table statistics are updated. The user needs to have at least WRITE_OWN access to the associated database. Requires roleinsert-table-data.
- 
Security 
 basicAuth
 bearerAuth
Headers¶
Authorization: string
RequestBody¶
- application/json
{
  // The key-value data map
  data: {
  }
  // The map of conditions
  keys: {
  }
}
Responses¶
- 
202 Updated table data 
- 
400 Request pagination or table data select query is malformed 
- 
403 Update table data not allowed 
- 
404 Failed to find table in metadata database 
- 
503 Failed to establish connection with the metadata service 
[POST]/api/v1/database/{databaseId}/table/{tableId}/data¶
- 
Summary 
 Insert tuple
- 
Description 
 Inserts a data tuple into a table, then the table statistics are updated. The user needs to have at least WRITE_OWN access to the associated database. Requires roleinsert-table-data.
- 
Security 
 basicAuth
 bearerAuth
Headers¶
Authorization: string
RequestBody¶
- application/json
{
  // The key-value data map
  data: {
  }
}
Responses¶
- 
201 Created table data 
- 
400 Request pagination or table data select query is malformed 
- 
403 Create table data not allowed 
- 
404 Failed to find table in metadata database or blob in storage service 
- 
503 Failed to establish connection with the metadata service or storage service 
[DELETE]/api/v1/database/{databaseId}/table/{tableId}/data¶
- 
Summary 
 Delete tuple
- 
Description 
 Deletes a data tuple into a table, then the table statistics are updated. The user needs to have at least WRITE_OWN access to the associated database. Requires roledelete-table-data.
- 
Security 
 basicAuth
 bearerAuth
Headers¶
Authorization: string
RequestBody¶
- application/json
{
  // The map of conditions
  keys: {
  }
}
Responses¶
- 
202 Deleted table data 
- 
400 Request pagination or table data select query is malformed 
- 
403 Delete table data not allowed 
- 
404 Failed to find table in metadata database 
- 
503 Failed to establish connection with the metadata service 
[HEAD]/api/v1/database/{databaseId}/table/{tableId}/data¶
- 
Summary 
 Get table data
- 
Description 
 Gets data from a table with id. For a table in a private database, the user needs to have at least READ access to the associated database. Requests with HTTP method GET return the full dataset, requests with HTTP method HEAD only the number of tuples in theX-Countheader.
- 
Security 
 basicAuth
 bearerAuth
Parameters(Query)¶
timestamp?: string
page?: integer
size?: integer
Headers¶
Accept: string
Responses¶
- 200 Get table data
application/json
{
  "type": "string"
}
text/csv
- 
400 Request pagination or table data select query is malformed 
- 
403 Not allowed to get table data 
- 
404 Failed to find table in metadata database 
- 
406 Failed to format data 
- 
503 Failed to establish connection with the metadata service 
[GET]/api/v1/database/{databaseId}/subset/{subsetId}/data¶
- 
Summary 
 Get subset data
- 
Description 
 Gets data of subset with id. For private databases, the user needs at least READ access to the associated database. Requests with HTTP method GET return the subset dataset, requests with HTTP method HEAD only the number of rows in the subset dataset in theX-Countheader
- 
Security 
 bearerAuth
 basicAuth
Parameters(Query)¶
timestamp?: string
page?: integer
size?: integer
Headers¶
Accept: string
Responses¶
- 200 Retrieved subset data
application/json
{
  "type": "string"
}
text/csv
- 
400 Invalid pagination 
- 
403 Not allowed to retrieve subset data 
- 
404 Failed to find database in metadata database or query in query store of the data database 
- 
406 Failed to format data 
- 
503 Failed to communicate with database 
[HEAD]/api/v1/database/{databaseId}/subset/{subsetId}/data¶
- 
Summary 
 Get subset data
- 
Description 
 Gets data of subset with id. For private databases, the user needs at least READ access to the associated database. Requests with HTTP method GET return the subset dataset, requests with HTTP method HEAD only the number of rows in the subset dataset in theX-Countheader
- 
Security 
 bearerAuth
 basicAuth
Parameters(Query)¶
timestamp?: string
page?: integer
size?: integer
Headers¶
Accept: string
Responses¶
- 200 Retrieved subset data
application/json
{
  "type": "string"
}
text/csv
- 
400 Invalid pagination 
- 
403 Not allowed to retrieve subset data 
- 
404 Failed to find database in metadata database or query in query store of the data database 
- 
406 Failed to format data 
- 
503 Failed to communicate with database 
[GET]/api/v1/database/{databaseId}/grant/{username}¶
- 
Summary 
 Get grants
- 
Description 
 Get the grant permissions for a user of a given database.
- 
Security 
 basicAuth
 bearerAuth
Responses¶
- 200 Access found
application/json
{
  user: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  type: enum[read, write_own, write_all]
}[]
- 
401 Not authenticated 
- 
403 Not database owner or foreign user 
- 
404 Failed to find access 
- 
409 Grants malformed 
[HEAD]/api/v1/database/{databaseId}/grant/{username}¶
- 
Summary 
 Get grants
- 
Description 
 Get the grant permissions for a user of a given database.
- 
Security 
 basicAuth
 bearerAuth
Responses¶
- 200 Access found
application/json
{
  user: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  type: enum[read, write_own, write_all]
}[]
- 
401 Not authenticated 
- 
403 Not database owner or foreign user 
- 
404 Failed to find access 
- 
409 Grants malformed 
[PUT]/api/v1/database/{databaseId}/subset/{queryId}¶
- 
Summary 
 Persist subset
- 
Description 
 Persists a subset with id. Requires rolepersist-query.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // If false, the query is marked for deletion at a later point in time
  persist: boolean
}
Responses¶
- 202 Persisted subset
application/json
{
  // The query id
  id: string
  owner: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  // The timestamp when the query was executed
  execution: string
  // The mapped SQL query
  query: string
  // The query type
  type?: enum[query, view]
  identifiers: {
    id: string
    type: enum[database, subset, table, view]
    creators: {
      id: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    }[]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    doi?: string
    publisher: string
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    publication_year: integer
    owned_by: string
  }[]
  // The database id
  database_id: string
  // The normalized SQL query as executed
  query_normalized: string
  // The sha256-hash of the mapped query
  query_hash: string
  // The sha256-hash of the result
  result_hash?: string
  // The row count of the result
  result_number?: integer
  // If false, the query is marked for deletion at a later point in time
  is_persisted: boolean
}
- 
400 Malformed select query 
- 
403 Not allowed to persist subset 
- 
404 Failed to find database in metadata database or query in query store of the data database 
- 
417 Failed to persist subset 
- 
503 Failed to communicate with database 
[POST]/api/v1/upload¶
- 
Summary 
 Uploads a multipart file
- 
Description 
 Uploads a multipart file to the Storage Service. Requires roleupload-file.
- 
Security 
 basicAuth
 bearerAuth
RequestBody¶
- application/json
{
  file: string
}
Responses¶
- 201 Uploaded the file
application/json
{
  // The id
  id: string
  // The user-friendly name
  name: string
  identifiers: {
    id: string
    links: {
      self: string
      data?: string
      self_html: string
      dashboard_html?: string
    }
    type: enum[database, subset, table, view]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    funders: {
      id: string
      funder_name: string
      funder_identifier?: string
      funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
      scheme_uri?: string
      award_number?: string
      award_title?: string
    }[]
    query: string
    execution?: string
    doi?: string
    publisher: string
    owner: {
      id: string
      // Only contains lowercase characters
      username: string
      name?: string
      orcid?: string
      qualified_name?: string
      given_name?: string
      family_name?: string
    }
    language: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    licenses: {
      // The id
      identifier: string
      // The link to the license such as an SPDX identifier
      uri: string
      // A user-friendly short abstract of key details of the license
      description?: string
    }[]
    creators: {
      id: string
      firstname?: string
      lastname?: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      name_identifier_scheme_uri?: string
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
      affiliation_identifier_scheme_uri?: string
    }[]
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    query_normalized: string
    related_identifiers: {
      id: string
      value: string
      type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
      relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
    }[]
    // query hash in sha512
    query_hash: string
    result_hash?: string
    result_number?: integer
    publication_day?: integer
    publication_month?: integer
    publication_year: integer
  }[]
  // The SQL statement used to create the view
  query: string
  owner:#/components/schemas/UserBriefDto
  columns: {
    // The id
    id: string
    // The user-friendly column name
    name: string
    // The column size, determines the number of digits before the comma as x=size-d where size >= d
    size?: integer
    // The column d
    d?: integer
    description?: string
    enums: {
      // The enum id
      id: string
      // The enum value
      value: string
    }[]
    sets: {
      // The set id
      id: string
      // The set value
      value: string
    }[]
    // The database id
    database_id: string
    // The ordinal position of the colum to order it
    ord: integer
    // The machine-friendly column name
    internal_name: string
    // The length of the index
    index_length?: integer
    // The length of the total data in the table (index + data)
    length?: integer
    // The column type name
    type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
    is_null_allowed: boolean
  }[]
  // The created timestamp
  created: string
  // The timestamp The was last retrieved from the cache
  last_retrieved?: string
  // The database id
  database_id: string
  // The machine-friendly name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // If true, the view is default for the database
  initial_view?: boolean
  // The sha256-hash of the query
  query_hash: string
}
- 503 Failed to establish connection with the storage service
[POST]/api/v1/database/{databaseId}/table/{tableId}/data/import¶
- 
Summary 
 Import dataset
- 
Description 
 Imports a dataset in a table. Then update the table statistics. The user needs to have at least WRITE_OWN access to the associated database when importing into a owned table. Otherwise WRITE_ALL access in needed. Requires roleinsert-table-data.
- 
Security 
 basicAuth
 bearerAuth
Headers¶
Authorization: string
RequestBody¶
- application/json
{
  // The key of the S3 binary object in the storage service
  location: string
  // If true, the first line contains the column names, otherwise it contains only data
  header: boolean
  // The column delimiter of the dataset
  separator: string
  // The quote symbol around values in the dataset
  quote?: string
  // The newline symbol
  line_termination?: string
}
Responses¶
- 
202 Imported dataset successfully 
- 
400 Dataset and/or query are malformed 
- 
403 Import table dataset not allowed 
- 
404 Failed to find table in metadata database 
- 
503 Failed to establish connection with the metadata service 
[GET]/api/v1/database/{databaseId}/subset¶
- 
Summary 
 Find subsets
- 
Description 
 Finds subsets in the query store. When the database schema is marked as hidden, the user needs to be authorized, have at least read-access to the database. The result can be optionally filtered by settingpersisted. When set to true, only persisted queries are returned, otherwise only non-persisted queries are returned.
- 
Security 
 basicAuth
 bearerAuth
Parameters(Query)¶
persisted?: boolean
Responses¶
- 200 Found subsets
application/json
{
  // The query id
  id: string
  owner: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  // The timestamp when the query was executed
  execution: string
  // The mapped SQL query
  query: string
  // The query type
  type?: enum[query, view]
  identifiers: {
    id: string
    type: enum[database, subset, table, view]
    creators: {
      id: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    }[]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    doi?: string
    publisher: string
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    publication_year: integer
    owned_by: string
  }[]
  // The database id
  database_id: string
  // The normalized SQL query as executed
  query_normalized: string
  // The sha256-hash of the mapped query
  query_hash: string
  // The sha256-hash of the result
  result_hash?: string
  // The row count of the result
  result_number?: integer
  // If false, the query is marked for deletion at a later point in time
  is_persisted: boolean
}[]
- 
403 Not allowed to find subsets 
- 
404 Failed to find database or user in metadata database or query in query store of the data database 
- 
503 Failed to communicate with database 
[POST]/api/v1/database/{databaseId}/subset¶
- 
Summary 
 Create subset
- 
Description 
 Creates a subset in the query store of the data database. Can also be used without authentication if (and only if) the database is marked as public (i.e. whenis_public=is_schema_publicis set totrue). Otherwise at least read access is required.
- 
Security 
 basicAuth
 bearerAuth
Parameters(Query)¶
timestamp?: string
page?: integer
size?: integer
RequestBody¶
- application/json
{
  columns?: string[]
  filter: {
    // The filter type
    type: enum[where, or, and]
    // The filter value
    value?: string
    // The column id
    column_id: string
    // The operator id
    operator_id: string
  }[]
  order: {
    // The sort direction
    direction?: enum[asc, desc]
    // The column id
    column_id: string
  }[]
  // The id of the data source
  datasource_id: string
  datasource_type: enum[table, view]
}
Responses¶
- 201 Created subset
application/json
{
  "type": "string"
}
- 
400 Malformed select query 
- 
403 Not allowed to find subset 
- 
404 Failed to find database in metadata database or query in query store of the data database 
- 
406 Failed to format data 
- 
417 Failed to insert query into query store of data database 
- 
501 Failed to execute query as it contains non-supported keywords 
- 
503 Failed to communicate with database 
[GET]/api/v1/image/{imageId}/analyse/schema/{key}¶
- 
Summary 
 Analyse schema
- 
Description 
 Analyses a dataset stored at the Storage Service and attempts to map the datatypes, requires roleanalyse-datatypes.
- 
Security 
 basicAuth
Responses¶
- 200 Analysed schema successfully
application/json
{
  // The column delimiter of the dataset
  delimiter: string
  // The quote symbol around values in the dataset
  quote: string
  // The escape symbol
  escape: string
  // The comment symbol
  comment: string
  columns: {
    // The column name
    name: string
    // The column data type
    datatype: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
    // The size determines the number of digits before the comma: x=size-d where size >= d
    size?: integer
    // The digits behind the comma
    d?: integer
    enums?: string[]
    sets?: string[]
    // If set to true, the column value can be null
    null_allowed?: boolean
    // The column is a candidate to be part of a composite primary key
    primary_key?: boolean
  }[]
  // The newline symbol
  newline_delimiter: string
  // The number of rows to skip
  skip_rows: integer
  // Detected the first line as header
  has_header: boolean
  // The format of the date
  date_format?: string
  // The format of the timestamp
  timestamp_format?: string
}
- 
400 Schema is malformed or does not fit the image 
- 
404 Failed to find image or dataset 
- 
503 Failed to establish connection to metadata service 
[GET]/api/v1/database/{databaseId}/table/{tableId}/history¶
- 
Summary 
 Get history
- 
Description 
 Gets the insert/delete operations history performed. For tables in private databases, the user needs to have at least READ access to the associated database.
- 
Security 
 basicAuth
 bearerAuth
Parameters(Query)¶
size?: integer
Responses¶
- 200 Found table history
application/json
{
  // The timestamp
  timestamp: string
  // The event type
  event: enum[insert, delete]
  // The total number of rows affected by the event
  total: integer
}[]
- 
400 Invalid pagination size request, must be > 0 
- 
403 Find table history not allowed 
- 
404 Failed to find table history in data database 
- 
503 Failed to establish connection with the metadata service 
[GET]/api/v1/database/{databaseId}/subset/{subsetId}¶
- 
Summary 
 Find subset
- 
Description 
 Finds a subset in the data database. When the database schema is marked as hidden, the user needs to be authorized, have at least read-access to the database. Requests with HTTP headerAccept=application/jsonreturn the metadata, requests with HTTP headerAccept=text/csvreturn the data as downloadable file.
- 
Security 
 basicAuth
 bearerAuth
Parameters(Query)¶
timestamp?: string
Responses¶
- 200 Found subset
application/json
{
  // The query id
  id: string
  owner: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  // The timestamp when the query was executed
  execution: string
  // The mapped SQL query
  query: string
  // The query type
  type?: enum[query, view]
  identifiers: {
    id: string
    type: enum[database, subset, table, view]
    creators: {
      id: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    }[]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    doi?: string
    publisher: string
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    publication_year: integer
    owned_by: string
  }[]
  // The database id
  database_id: string
  // The normalized SQL query as executed
  query_normalized: string
  // The sha256-hash of the mapped query
  query_hash: string
  // The sha256-hash of the result
  result_hash?: string
  // The row count of the result
  result_number?: integer
  // If false, the query is marked for deletion at a later point in time
  is_persisted: boolean
}
text/csv
- 
400 Malformed select query 
- 
403 Not allowed to find subset 
- 
404 Failed to find database in metadata database or query in query store of the data database 
- 
406 Failed to find acceptable representation 
- 
503 Failed to communicate with database 
[GET]/api/v1/user/{username}¶
- 
Summary 
 Get user
- 
Description 
 Gets own user information from the metadata database. Requires authentication. Foreign user information can only be obtained if additional rolefind-foreign-useris present. Finding information about internal users results in a 404 error.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 200 Found user
application/json
{
  id: string
  name?: string
  username: string
  password: string
  attributes: {
    theme: string
    orcid?: string
    affiliation?: string
    language: string
  }
  last_retrieved?: string
  qualified_name?: string
  given_name?: string
  family_name?: string
}
- 
403 Find user is not permitted 
- 
404 User was not found 
[PUT]/api/v1/user/{username}¶
- 
Summary 
 Update user
- 
Description 
 Updates user with given username. Requires rolemodify-user-information.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  firstname?: string
  lastname?: string
  affiliation?: string
  orcid?: string
  theme: string
  language: string
}
Responses¶
- 202 Modified user information
application/json
{
  id: string
  name?: string
  username: string
  password: string
  attributes: {
    theme: string
    orcid?: string
    affiliation?: string
    language: string
  }
  last_retrieved?: string
  qualified_name?: string
  given_name?: string
  family_name?: string
}
- 
400 Modify user query is malformed 
- 
403 Not allowed to modify user metadata 
- 
404 Failed to find database/user in metadata database 
- 
503 Failed to modify user at auth service 
[HEAD]/api/v1/user/{username}¶
- 
Summary 
 Get user
- 
Description 
 Gets own user information from the metadata database. Requires authentication. Foreign user information can only be obtained if additional rolefind-foreign-useris present. Finding information about internal users results in a 404 error.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 200 Found user
application/json
{
  id: string
  name?: string
  username: string
  password: string
  attributes: {
    theme: string
    orcid?: string
    affiliation?: string
    language: string
  }
  last_retrieved?: string
  qualified_name?: string
  given_name?: string
  family_name?: string
}
- 
403 Find user is not permitted 
- 
404 User was not found 
[GET]/api/v1/database¶
- 
Summary 
 List databases
- 
Description 
 Lists all databases in the metadata database. Requests with HTTP method GET return the list of databases, requests with HTTP method HEAD only the number in theX-Countheader.
Parameters(Query)¶
internal_name?: string
Responses¶
- 200 List of databases
application/json
{
  id: string
  // The name
  name: string
  // The comment
  description?: string
  identifiers: {
    id: string
    type: enum[database, subset, table, view]
    creators: {
      id: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    }[]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    doi?: string
    publisher: string
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    publication_year: integer
    owned_by: string
  }[]
  contact: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  // The machine-friendly database name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The owner id
  owner_id: string
  // The preview image
  preview_image?: string
}[]
[POST]/api/v1/database¶
- 
Summary 
 Create database
- 
Description 
 Creates a database in the container with id. Requires rolescreate-database.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // The name
  name: string
  // The container id
  container_id: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
}
Responses¶
- 201 Created a new database
application/json
{
  id: string
  // The name
  name: string
  // The comment
  description?: string
  identifiers: {
    id: string
    type: enum[database, subset, table, view]
    creators: {
      id: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    }[]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    doi?: string
    publisher: string
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    publication_year: integer
    owned_by: string
  }[]
  contact: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  // The machine-friendly database name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The owner id
  owner_id: string
  // The preview image
  preview_image?: string
}
- 
400 Database create query is malformed or image is not supported 
- 
403 Database create permission is missing or grant permissions at broker service failed 
- 
404 Failed to fin container/user/database in metadata database 
- 
409 Query store could not be created 
- 
423 Database quota exceeded 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[HEAD]/api/v1/database¶
- 
Summary 
 List databases
- 
Description 
 Lists all databases in the metadata database. Requests with HTTP method GET return the list of databases, requests with HTTP method HEAD only the number in theX-Countheader.
Parameters(Query)¶
internal_name?: string
Responses¶
- 200 List of databases
application/json
{
  id: string
  // The name
  name: string
  // The comment
  description?: string
  identifiers: {
    id: string
    type: enum[database, subset, table, view]
    creators: {
      id: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    }[]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    doi?: string
    publisher: string
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    publication_year: integer
    owned_by: string
  }[]
  contact: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  // The machine-friendly database name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The owner id
  owner_id: string
  // The preview image
  preview_image?: string
}[]
[GET]/api/v1/database/{databaseId}/access/{username}¶
- 
Summary 
 Find/Check access
- 
Description 
 Finds or checks access of a user with given username to a database with given id. Requests with HTTP method GET return the access object, requests with HTTP method HEAD only the status. When the user has at least READ access, the status 200 is returned, 403 otherwise. Requires rolecheck-database-accessorcheck-foreign-database-access.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 200 Found database access
application/json
{
  user: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  type: enum[read, write_own, write_all]
}
- 
403 No access to this database 
- 
404 Database not found 
[PUT]/api/v1/database/{databaseId}/access/{username}¶
- 
Summary 
 Modify access
- 
Description 
 Modifies access of a user with given username to database with given id. Requires roleupdate-database-access.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // The access type
  type: enum[read, write_own, write_all]
}
Responses¶
- 
202 Modified access 
- 
400 Modify access query or database connection is malformed 
- 
403 Modify access not permitted when no access is granted in the first place 
- 
404 Database or user not found 
- 
502 Access could not be updated due to connection error in the data service 
- 
503 Access could not be updated in the data service 
[POST]/api/v1/database/{databaseId}/access/{username}¶
- 
Summary 
 Give access
- 
Description 
 Give a user with given username access to some database with given id. Requires rolecreate-database-access.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // The access type
  type: enum[read, write_own, write_all]
}
Responses¶
- 202 Granting access succeeded
application/json
{
  user: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  type: enum[read, write_own, write_all]
}
- 
400 Granting access query or database connection is malformed 
- 
403 Failed giving access 
- 
404 Database or user not found 
- 
502 Access could not be created due to connection error 
- 
503 Access could not be created in the data service 
[DELETE]/api/v1/database/{databaseId}/access/{username}¶
- 
Summary 
 Delete access
- 
Description 
 Delete access of a user with given username to a database with id. Requires roledelete-database-access.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 
202 Deleted access 
- 
400 Modify access query or database connection is malformed 
- 
403 Revoke of access not permitted as no access was found 
- 
404 User, database with access was not found 
- 
502 Access could not be created due to connection error 
- 
503 Access could not be revoked in the data service 
[HEAD]/api/v1/database/{databaseId}/access/{username}¶
- 
Summary 
 Find/Check access
- 
Description 
 Finds or checks access of a user with given username to a database with given id. Requests with HTTP method GET return the access object, requests with HTTP method HEAD only the status. When the user has at least READ access, the status 200 is returned, 403 otherwise. Requires rolecheck-database-accessorcheck-foreign-database-access.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 200 Found database access
application/json
{
  user: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  type: enum[read, write_own, write_all]
}
- 
403 No access to this database 
- 
404 Database not found 
[GET]/api/v1/ontology/{ontologyId}¶
- 
Summary 
 Find ontology
- 
Description 
 Finds an ontology with id in the metadata database.
Responses¶
- 200 Find one ontology
application/json
{
  id: string
  uri: string
  prefix: string
  sparql: boolean
  rdf: boolean
  uri_pattern?: string
  sparql_endpoint?: string
  rdf_path?: string
}
- 404 Could not find ontology
[PUT]/api/v1/ontology/{ontologyId}¶
- 
Summary 
 Update ontology
- 
Description 
 Updates an ontology with id. Requires roleupdate-ontology.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  uri: string
  prefix: string
  sparql_endpoint?: string
  rdf_path?: string
}
Responses¶
- 202 Updated ontology successfully
application/json
{
  id: string
  uri: string
  prefix: string
  sparql: boolean
  rdf: boolean
  uri_pattern?: string
  sparql_endpoint?: string
  rdf_path?: string
}
- 404 Could not find ontology
[DELETE]/api/v1/ontology/{ontologyId}¶
- 
Summary 
 Delete ontology
- 
Description 
 Deletes an ontology with given id. Requires roledelete-ontology.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 202 Deleted ontology successfully
application/json
- 404 Could not find ontology
[PUT]/api/v1/message/{messageId}¶
- 
Summary 
 Update message
- 
Description 
 Updates a message with id. Requires roleupdate-maintenance-message.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  type: enum[error, warning, info]
  message: string
  link?: string
  link_text?: string
  display_start?: string
  display_end?: string
}
Responses¶
- 202 Updated message
application/json
{
  type: enum[error, warning, info]
  message: string
  link?: string
  link_text?: string
}
- 404 Could not find message
[DELETE]/api/v1/message/{messageId}¶
- 
Summary 
 Delete message
- 
Description 
 Deletes a message with id. Requires roledelete-maintenance-message.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 202 Deleted message
application/json
- 404 Could not find message
[GET]/api/v1/image/{imageId}¶
- 
Summary 
 Find image
- 
Description 
 Finds a container image in the metadata database.
Responses¶
- 200 Found image
application/json
{
  // The image id
  id: string
  // The image name
  name: string
  version: string
  operators: {
    // The operator id
    id: string
    // The machine-friendly name of the operator
    value: string
    // The documentation link
    documentation: string
    // The user-friendly name of the operator
    display_name: string
  }[]
  default: boolean
  data_types: {
    // The id of the data type
    id: string
    // The machine-friendly value of the data type
    value: string
    // The documentation link
    documentation: string
    // The human-friendly name of the data type
    display_name: string
    // The minimum size
    size_min?: integer
    // The maximum size
    size_max?: integer
    // The default size
    size_default?: integer
    // If true, the size parameter cannot be empty
    size_required?: boolean
    // The step increment
    size_step?: integer
    // The minimum d
    d_min?: integer
    // The maximum d
    d_max?: integer
    // The default d
    d_default?: integer
    // If true, the d parameter cannot be empty
    d_required?: boolean
    // The d increment
    d_step?: integer
    // The user-friendly description of the data format
    data_hint?: string
    // The user-friendly description of the data type
    type_hint?: string
    // frontend needs to quote this data type
    is_quoted: boolean
    // frontend can build this data type
    is_buildable: boolean
  }[]
}
- 404 Image could not be found
[PUT]/api/v1/image/{imageId}¶
- 
Summary 
 Update image
- 
Description 
 Updates container image in the metadata database. Requires rolemodify-image.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // The URL of the registry without protocol
  registry: string
  // The SQL dialect class name
  dialect: string
  // The default image port to access the database
  default_port: integer
  // The driver class name
  driver_class: string
  // The method used by JDBC
  jdbc_method: string
}
Responses¶
- 202 Updated image successfully
application/json
{
  // The image id
  id: string
  // The image name
  name: string
  version: string
  operators: {
    // The operator id
    id: string
    // The machine-friendly name of the operator
    value: string
    // The documentation link
    documentation: string
    // The user-friendly name of the operator
    display_name: string
  }[]
  default: boolean
  data_types: {
    // The id of the data type
    id: string
    // The machine-friendly value of the data type
    value: string
    // The documentation link
    documentation: string
    // The human-friendly name of the data type
    display_name: string
    // The minimum size
    size_min?: integer
    // The maximum size
    size_max?: integer
    // The default size
    size_default?: integer
    // If true, the size parameter cannot be empty
    size_required?: boolean
    // The step increment
    size_step?: integer
    // The minimum d
    d_min?: integer
    // The maximum d
    d_max?: integer
    // The default d
    d_default?: integer
    // If true, the d parameter cannot be empty
    d_required?: boolean
    // The d increment
    d_step?: integer
    // The user-friendly description of the data format
    data_hint?: string
    // The user-friendly description of the data type
    type_hint?: string
    // frontend needs to quote this data type
    is_quoted: boolean
    // frontend can build this data type
    is_buildable: boolean
  }[]
}
- 404 Image could not be found
[DELETE]/api/v1/image/{imageId}¶
- 
Summary 
 Delete image
- 
Description 
 Deletes a container image in the metadata database. Requires roledelete-image.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 
202 Deleted image successfully 
- 
404 Image could not be found 
[GET]/api/v1/identifier/{identifierId}¶
- 
Summary 
 Find identifier
- 
Description 
 Finds an identifier with id. The response format depends on the HTTPAcceptheader set on the request.
Headers¶
Accept: string
Responses¶
- 200 Found identifier successfully
application/json
{
  id: string
  links: {
    self: string
    data?: string
    self_html: string
    dashboard_html?: string
  }
  type: enum[database, subset, table, view]
  titles: {
    id: string
    title?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
  }[]
  descriptions: {
    id: string
    description?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
  }[]
  funders: {
    id: string
    funder_name: string
    funder_identifier?: string
    funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
    scheme_uri?: string
    award_number?: string
    award_title?: string
  }[]
  query: string
  execution?: string
  doi?: string
  publisher: string
  owner: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  language: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  licenses: {
    // The id
    identifier: string
    // The link to the license such as an SPDX identifier
    uri: string
    // A user-friendly short abstract of key details of the license
    description?: string
  }[]
  creators: {
    id: string
    firstname?: string
    lastname?: string
    affiliation?: string
    creator_name: string
    name_type?: enum[Personal, Organizational]
    name_identifier?: string
    name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
    name_identifier_scheme_uri?: string
    affiliation_identifier?: string
    affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    affiliation_identifier_scheme_uri?: string
  }[]
  status: enum[draft, published]
  created?: string
  database_id: string
  query_id?: string
  table_id?: string
  view_id?: string
  query_normalized: string
  related_identifiers: {
    id: string
    value: string
    type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
    relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
  }[]
  // query hash in sha512
  query_hash: string
  result_hash?: string
  result_number?: integer
  publication_day?: integer
  publication_month?: integer
  publication_year: integer
}
application/ld+json
{
  // The name
  name: string
  // The description
  description: string
  // The URL
  url: string
  identifier?: string[]
  license?: string
  creator: {
    // The name
    name: string
    // The unambiguous reference to a person's identifier
    sameAs?: string
    // The firstname
    givenName?: string
    // The lastname
    familyName?: string
    // The type
    @type: string
  }[]
  // The ciration URL
  citation: string
  hasPart: {
    // The name
    name: string
    // The description
    description: string
    // The URL
    url: string
    identifier?: string[]
    license?: string
    creator:#/components/schemas/LdCreatorDto[]
    // The ciration URL
    citation: string
    hasPart:#/components/schemas/LdDatasetDto[]
    // The temporal coverage
    temporalCoverage: string
    // The version
    version: string
    // The context schema URI
    @context: string
    // The type
    @type: string
  }[]
  // The temporal coverage
  temporalCoverage: string
  // The version
  version: string
  // The context schema URI
  @context: string
  // The type
  @type: string
}
text/xml
text/bibliography
text/bibliography; style=apa
text/bibliography; style=ieee
text/bibliography; style=bibtex
- 
400 Identifier could not be exported, the requested style is not known 
- 
403 Not allowed to view identifier 
- 
404 Identifier could not be found 
- 
406 Failed to find acceptable representation 
- 
409 Exported resource was not found 
- 
410 Failed to retrieve from S3 endpoint 
- 
502 Connection to data service failed 
- 
503 Failed to find in data service 
[PUT]/api/v1/identifier/{identifierId}¶
- 
Summary 
 Save identifier
- 
Description 
 Saves an identifier with id as a draft identifier. Identifiers can only be created for objects the user has at least READ access in the associated database (requires rolecreate-identifier) or for any object in any database (requires rolecreate-foreign-identifier).
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  id: string
  type: enum[database, subset, table, view]
  doi?: string
  titles: {
    id: string
    title: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
  }[]
  descriptions: {
    id: string
    description: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
  }[]
  funders: {
    id: string
    funder_name: string
    funder_identifier?: string
    funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
    scheme_uri?: string
    award_number?: string
    award_title?: string
  }[]
  licenses: {
    // The id
    identifier: string
    // The link to the license such as an SPDX identifier
    uri: string
    // A user-friendly short abstract of key details of the license
    description?: string
  }[]
  publisher: string
  language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  creators: {
    id: string
    firstname?: string
    lastname?: string
    affiliation?: string
    creator_name: string
    name_type?: enum[Personal, Organizational]
    name_identifier?: string
    affiliation_identifier?: string
  }[]
  database_id: string
  query_id?: string
  view_id?: string
  table_id?: string
  publication_day?: integer
  publication_month?: integer
  publication_year: integer
  related_identifiers: {
    id: string
    value: string
    type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
    relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
  }[]
}
Responses¶
- 202 Saved identifier
application/json
{
  id: string
  links: {
    self: string
    data?: string
    self_html: string
    dashboard_html?: string
  }
  type: enum[database, subset, table, view]
  titles: {
    id: string
    title?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
  }[]
  descriptions: {
    id: string
    description?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
  }[]
  funders: {
    id: string
    funder_name: string
    funder_identifier?: string
    funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
    scheme_uri?: string
    award_number?: string
    award_title?: string
  }[]
  query: string
  execution?: string
  doi?: string
  publisher: string
  owner: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  language: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  licenses: {
    // The id
    identifier: string
    // The link to the license such as an SPDX identifier
    uri: string
    // A user-friendly short abstract of key details of the license
    description?: string
  }[]
  creators: {
    id: string
    firstname?: string
    lastname?: string
    affiliation?: string
    creator_name: string
    name_type?: enum[Personal, Organizational]
    name_identifier?: string
    name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
    name_identifier_scheme_uri?: string
    affiliation_identifier?: string
    affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    affiliation_identifier_scheme_uri?: string
  }[]
  status: enum[draft, published]
  created?: string
  database_id: string
  query_id?: string
  table_id?: string
  view_id?: string
  query_normalized: string
  related_identifiers: {
    id: string
    value: string
    type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
    relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
  }[]
  // query hash in sha512
  query_hash: string
  result_hash?: string
  result_number?: integer
  publication_day?: integer
  publication_month?: integer
  publication_year: integer
}
- 
400 Identifier form contains invalid request data 
- 
403 Insufficient access rights or authorities 
- 
404 Failed to find database, table or view 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[DELETE]/api/v1/identifier/{identifierId}¶
- 
Summary 
 Delete identifier
- 
Description 
 Deletes an identifier with id. Requires roledelete-identifier.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 
202 Deleted identifier 
- 
403 Deleting identifier not permitted 
- 
404 Identifier or database could not be found 
- 
502 Connection to search service failed 
- 
503 Failed to delete in search service 
[PUT]/api/v1/identifier/{identifierId}/publish¶
- 
Summary 
 Publish identifier
- 
Description 
 Publishes an identifier with id. A published identifier cannot be changed anymore. Requires rolepublish-identifier.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 202 Published identifier
application/json
{
  id: string
  links: {
    self: string
    data?: string
    self_html: string
    dashboard_html?: string
  }
  type: enum[database, subset, table, view]
  titles: {
    id: string
    title?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
  }[]
  descriptions: {
    id: string
    description?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
  }[]
  funders: {
    id: string
    funder_name: string
    funder_identifier?: string
    funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
    scheme_uri?: string
    award_number?: string
    award_title?: string
  }[]
  query: string
  execution?: string
  doi?: string
  publisher: string
  owner: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  language: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  licenses: {
    // The id
    identifier: string
    // The link to the license such as an SPDX identifier
    uri: string
    // A user-friendly short abstract of key details of the license
    description?: string
  }[]
  creators: {
    id: string
    firstname?: string
    lastname?: string
    affiliation?: string
    creator_name: string
    name_type?: enum[Personal, Organizational]
    name_identifier?: string
    name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
    name_identifier_scheme_uri?: string
    affiliation_identifier?: string
    affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    affiliation_identifier_scheme_uri?: string
  }[]
  status: enum[draft, published]
  created?: string
  database_id: string
  query_id?: string
  table_id?: string
  view_id?: string
  query_normalized: string
  related_identifiers: {
    id: string
    value: string
    type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
    relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
  }[]
  // query hash in sha512
  query_hash: string
  result_hash?: string
  result_number?: integer
  publication_day?: integer
  publication_month?: integer
  publication_year: integer
}
- 
400 Identifier form contains invalid request data 
- 
403 Insufficient access rights or authorities 
- 
404 Failed to find database, table or view 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[PUT]/api/v1/database/{databaseId}/visibility¶
- 
Summary 
 Update database visibility
- 
Description 
 Updates the database with id on the visibility. Only the database owner can perform this operation. Requires rolemodify-database-visibility.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // If true, the dashboard will be managed
  is_dashboard_enabled: boolean
}
Responses¶
- 202 Visibility modified successfully
application/json
{
  id: string
  // The name
  name: string
  // The comment
  description?: string
  identifiers: {
    id: string
    type: enum[database, subset, table, view]
    creators: {
      id: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    }[]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    doi?: string
    publisher: string
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    publication_year: integer
    owned_by: string
  }[]
  contact: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  // The machine-friendly database name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The owner id
  owner_id: string
  // The preview image
  preview_image?: string
}
- 
400 The visibility payload is malformed 
- 
403 Visibility modification is not permitted 
- 
404 Failed to find database in metadata database 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[GET]/api/v1/database/{databaseId}/view/{viewId}¶
- 
Summary 
 Get view
- 
Description 
 Gets a view with id in the metadata database.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 200 Find view successfully
application/json
{
  // The id
  id: string
  // The user-friendly name
  name: string
  identifiers: {
    id: string
    links: {
      self: string
      data?: string
      self_html: string
      dashboard_html?: string
    }
    type: enum[database, subset, table, view]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    funders: {
      id: string
      funder_name: string
      funder_identifier?: string
      funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
      scheme_uri?: string
      award_number?: string
      award_title?: string
    }[]
    query: string
    execution?: string
    doi?: string
    publisher: string
    owner: {
      id: string
      // Only contains lowercase characters
      username: string
      name?: string
      orcid?: string
      qualified_name?: string
      given_name?: string
      family_name?: string
    }
    language: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    licenses: {
      // The id
      identifier: string
      // The link to the license such as an SPDX identifier
      uri: string
      // A user-friendly short abstract of key details of the license
      description?: string
    }[]
    creators: {
      id: string
      firstname?: string
      lastname?: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      name_identifier_scheme_uri?: string
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
      affiliation_identifier_scheme_uri?: string
    }[]
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    query_normalized: string
    related_identifiers: {
      id: string
      value: string
      type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
      relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
    }[]
    // query hash in sha512
    query_hash: string
    result_hash?: string
    result_number?: integer
    publication_day?: integer
    publication_month?: integer
    publication_year: integer
  }[]
  // The SQL statement used to create the view
  query: string
  owner:#/components/schemas/UserBriefDto
  columns: {
    // The id
    id: string
    // The user-friendly column name
    name: string
    // The column size, determines the number of digits before the comma as x=size-d where size >= d
    size?: integer
    // The column d
    d?: integer
    description?: string
    enums: {
      // The enum id
      id: string
      // The enum value
      value: string
    }[]
    sets: {
      // The set id
      id: string
      // The set value
      value: string
    }[]
    // The database id
    database_id: string
    // The ordinal position of the colum to order it
    ord: integer
    // The machine-friendly column name
    internal_name: string
    // The length of the index
    index_length?: integer
    // The length of the total data in the table (index + data)
    length?: integer
    // The column type name
    type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
    is_null_allowed: boolean
  }[]
  // The created timestamp
  created: string
  // The timestamp The was last retrieved from the cache
  last_retrieved?: string
  // The database id
  database_id: string
  // The machine-friendly name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // If true, the view is default for the database
  initial_view?: boolean
  // The sha256-hash of the query
  query_hash: string
}
- 
403 Find view is not permitted 
- 
404 Database, view or user could not be found 
[PUT]/api/v1/database/{databaseId}/view/{viewId}¶
- 
Summary 
 Update view
- 
Description 
 Updates a view with id. This can only be performed by the view owner or database owner. Requires rolecreate-database-view.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
}
Responses¶
- 202 Update view successfully
*/*
{
  // The id
  id: string
  // The user-friendly name
  name: string
  // The SQL statement used to create the view
  query: string
  // The database id
  database_id: string
  // The machine-friendly name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // If true, the view is default for the database
  initial_view?: boolean
  // The sha256-hash of the query
  query_hash: string
  // The owner id
  owned_by?: string
}
- 
400 Update view query is malformed 
- 
403 Update not allowed 
- 
404 Database or View could not be found 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[DELETE]/api/v1/database/{databaseId}/view/{viewId}¶
- 
Summary 
 Delete view
- 
Description 
 Deletes a view with id. Requires roledelete-database-view.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 
202 Delete view successfully 
- 
400 Delete view query is malformed 
- 
403 Deletion not allowed 
- 
404 Database, view or user could not be found 
- 
423 Delete view resulted in an invalid query statement 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[GET]/api/v1/database/{databaseId}/table/{tableId}¶
- 
Summary 
 Find table
- 
Description 
 Finds a table with id. When a table is hidden (i.e. whenis_publicisfalse), then the user needs to have at least read access and the rolefind-table. When thesystemrole is present, the endpoint responds with additional connection metadata in the header.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 200 Find table successfully
application/json
{
  // The id
  id: string
  // The user-friendly name
  name: string
  // The comment
  description?: string
  // The alias
  alias?: string
  identifiers: {
    id: string
    links: {
      self: string
      data?: string
      self_html: string
      dashboard_html?: string
    }
    type: enum[database, subset, table, view]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    funders: {
      id: string
      funder_name: string
      funder_identifier?: string
      funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
      scheme_uri?: string
      award_number?: string
      award_title?: string
    }[]
    query: string
    execution?: string
    doi?: string
    publisher: string
    owner: {
      id: string
      // Only contains lowercase characters
      username: string
      name?: string
      orcid?: string
      qualified_name?: string
      given_name?: string
      family_name?: string
    }
    language: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    licenses: {
      // The id
      identifier: string
      // The link to the license such as an SPDX identifier
      uri: string
      // A user-friendly short abstract of key details of the license
      description?: string
    }[]
    creators: {
      id: string
      firstname?: string
      lastname?: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      name_identifier_scheme_uri?: string
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
      affiliation_identifier_scheme_uri?: string
    }[]
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    query_normalized: string
    related_identifiers: {
      id: string
      value: string
      type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
      relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
    }[]
    // query hash in sha512
    query_hash: string
    result_hash?: string
    result_number?: integer
    publication_day?: integer
    publication_month?: integer
    publication_year: integer
  }[]
  owner:#/components/schemas/UserBriefDto
  columns: {
    // The id
    id: string
    // The user-friendly column name
    name: string
    // The data source alias name
    alias?: string
    // The column size, determines the number of digits before the comma as x=size-d where size >= d
    size?: integer
    // The column d
    d?: integer
    // The statistically average numerical value
    mean?: number
    // The statistically most middle numerical value
    median?: number
    concept: {
      // The concept id
      id: string
      // The concept URI
      uri: string
      // The concept name, taken as label from the ontology
      name?: string
      // The concept description giving a user-friendly explanation
      description?: string
    }
    unit: {
      // The unit id
      id: string
      // The unit URI
      uri: string
      // The unit name, taken as label from the ontology
      name?: string
      // The unit description giving a user-friendly explanation
      description?: string
    }
    description?: string
    enums: {
      // The enum id
      id: string
      // The enum value
      value: string
    }[]
    sets: {
      // The set id
      id: string
      // The set value
      value: string
    }[]
    // The database id
    database_id: string
    // The table id
    table_id: string
    // The ordinal position of the colum to order it
    ord: integer
    // The machine-friendly column name
    internal_name: string
    // The length of the index
    index_length?: integer
    // The length of the total data in the table (index + data)
    length?: integer
    // The column type name
    type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
    // The data length
    data_length?: integer
    // The maximum data length
    max_data_length?: integer
    // The number of rows
    num_rows?: integer
    // The statistically highest numerical value
    val_min?: number
    // The statistically lowest numerical value
    val_max?: number
    // The statistically determined standard deviation
    std_dev?: number
    is_null_allowed: boolean
  }[]
  constraints: {
    uniques: {
      // The unique key id
      id: string
      // The unique key name
      name: string
      table: {
        // The id
        id: string
        // The user-friendly table name
        name: string
        // The comment
        description?: string
        // The database id
        database_id: string
        // The machine-friendly table name
        internal_name: string
        // If true, The is using data versioning
        is_versioned: boolean
        // The visibility; if true, The will be displayed publicly and is searchable
        is_public: boolean
        // The insights; if true, The schema will be displayed publicly and is searchable
        is_schema_public: boolean
        // The owner id
        owned_by: string
      }
      columns: {
        // The column id
        id: string
        // The column name
        name: string
        // The data source alias name
        alias?: string
        // The database id
        database_id: string
        // The table id
        table_id: string
        // The machine-friendly internal name
        internal_name: string
        // The column type name
        type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
      }[]
    }[]
    checks?: string[]
    foreign_keys: {
      // The foreign key id
      id?: string
      // The foreign key name
      name: string
      references: {
        // The foreign key reference id
        id?: string
        column:#/components/schemas/ColumnBriefDto
        foreign_key: {
          // The foreign key id
          id?: string
        }
        referenced_column:#/components/schemas/ColumnBriefDto
      }[]
      table:#/components/schemas/TableBriefDto
      referenced_table:#/components/schemas/TableBriefDto
      // The integrity action when updating tuples
      on_update?: enum[restrict, cascade, set_null, no_action, set_default]
      // The integrity action when deleting tuples
      on_delete?: enum[restrict, cascade, set_null, no_action, set_default]
    }[]
    primary_key: {
      // The primary key id
      id?: string
      table:#/components/schemas/TableBriefDto
      column:#/components/schemas/ColumnBriefDto
    }[]
  }
  // The created timestamp
  created: string
  // The timestamp The was last retrieved from the cache
  last_retrieved?: string
  // The database id
  database_id: string
  // The machine-friendly name
  internal_name: string
  // If true, The is using data versioning
  is_versioned: boolean
  // The queue name
  queue_name: string
  // The queue type
  queue_type?: string
  // The routing key
  routing_key: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The statistical number of rows
  num_rows?: integer
  // The data length in bytes
  data_length?: integer
  // The maximum data length in bytes
  max_data_length?: integer
  // The average row length in bytes
  avg_row_length?: integer
}
- 
403 Access to the database is forbidden 
- 
404 Table, database or container could not be found 
[PUT]/api/v1/database/{databaseId}/table/{tableId}¶
- 
Summary 
 Update table
- 
Description 
 Updates a table in the database with id. Requires roleupdate-table.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // The comment
  description?: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
}
Responses¶
- 202 Updated the table
application/json
{
  // The id
  id: string
  // The user-friendly table name
  name: string
  // The comment
  description?: string
  // The database id
  database_id: string
  // The machine-friendly table name
  internal_name: string
  // If true, The is using data versioning
  is_versioned: boolean
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The owner id
  owned_by: string
}
- 
400 Update table visibility payload is malformed 
- 
403 Update table visibility not permitted 
- 
404 Table could not be found 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[DELETE]/api/v1/database/{databaseId}/table/{tableId}¶
- 
Summary 
 Delete table
- 
Description 
 Deletes a table with id. Only the owner of a table can perform this action (requires roledelete-table) or anyone can delete a table (requires roledelete-foreign-table).
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 
202 Delete table successfully 
- 
400 Delete table query resulted in an invalid query statement 
- 
403 Access to the database is forbidden 
- 
404 Table, database or container could not be found 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[PUT]/api/v1/database/{databaseId}/table/{tableId}/statistic¶
- 
Summary 
 Update statistics
- 
Description 
 Updates basic statistical properties (min, max, mean, median, std.dev) for numerical columns in a table with id. This action can only be performed by the table owner. Requires roleupdate-table-statistic.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 
202 Updated table statistics successfully 
- 
400 Failed to map column statistic to known columns 
- 
403 Not the owner 
- 
404 Failed to find database/table in metadata database 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[PUT]/api/v1/database/{databaseId}/table/{tableId}/column/{columnId}¶
- 
Summary 
 Update semantics
- 
Description 
 Updates column semantics of a table column with id. Only the table owner with at least READ access to the associated database can update the column semantics (requires rolemodify-table-column-semantics) or foreign table columns if rolemodify-foreign-table-column-semantics.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // The description
  description?: string
  // The URI of the concept
  concept_uri?: string
  // The URI of the unit
  unit_uri?: string
}
Responses¶
- 202 Updated column semantics successfully
application/json
{
  // The id
  id: string
  // The user-friendly column name
  name: string
  // The data source alias name
  alias?: string
  // The column size, determines the number of digits before the comma as x=size-d where size >= d
  size?: integer
  // The column d
  d?: integer
  // The statistically average numerical value
  mean?: number
  // The statistically most middle numerical value
  median?: number
  concept: {
    // The concept id
    id: string
    // The concept URI
    uri: string
    // The concept name, taken as label from the ontology
    name?: string
    // The concept description giving a user-friendly explanation
    description?: string
  }
  unit: {
    // The unit id
    id: string
    // The unit URI
    uri: string
    // The unit name, taken as label from the ontology
    name?: string
    // The unit description giving a user-friendly explanation
    description?: string
  }
  description?: string
  enums: {
    // The enum id
    id: string
    // The enum value
    value: string
  }[]
  sets: {
    // The set id
    id: string
    // The set value
    value: string
  }[]
  // The database id
  database_id: string
  // The table id
  table_id: string
  // The ordinal position of the colum to order it
  ord: integer
  // The machine-friendly column name
  internal_name: string
  // The length of the index
  index_length?: integer
  // The length of the total data in the table (index + data)
  length?: integer
  // The column type name
  type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
  // The data length
  data_length?: integer
  // The maximum data length
  max_data_length?: integer
  // The number of rows
  num_rows?: integer
  // The statistically highest numerical value
  val_min?: number
  // The statistically lowest numerical value
  val_max?: number
  // The statistically determined standard deviation
  std_dev?: number
  is_null_allowed: boolean
}
- 
400 Update semantic concept query is malformed or update unit of measurement query is malformed 
- 
403 Access to the database is forbidden 
- 
404 Failed to find user/table/database/ontology in metadata database 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[PUT]/api/v1/database/{databaseId}/owner¶
- 
Summary 
 Update database owner
- 
Description 
 Updates the database with id on the owner. Only the database owner can perform this operation. Requires rolemodify-database-owner.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // The username of the new owner
  username: string
}
Responses¶
- 202 Transfer of ownership was successful
application/json
{
  id: string
  // The name
  name: string
  // The comment
  description?: string
  identifiers: {
    id: string
    type: enum[database, subset, table, view]
    creators: {
      id: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    }[]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    doi?: string
    publisher: string
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    publication_year: integer
    owned_by: string
  }[]
  contact: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  // The machine-friendly database name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The owner id
  owner_id: string
  // The preview image
  preview_image?: string
}
- 
400 Owner payload is malformed 
- 
403 Transfer of ownership is not permitted 
- 
404 Database or user could not be found 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[PUT]/api/v1/database/{databaseId}/metadata/view¶
- 
Summary 
 Update database view schemas
- 
Description 
 Updates the database with id with generated metadata from view that are not yet known to the database. Only the database owner can perform this operation. Requires rolefind-database.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 200 Refreshed database views metadata
application/json
{
  id: string
  // The name
  name: string
  // The comment
  description?: string
  identifiers: {
    id: string
    type: enum[database, subset, table, view]
    creators: {
      id: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    }[]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    doi?: string
    publisher: string
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    publication_year: integer
    owned_by: string
  }[]
  contact: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  // The machine-friendly database name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The owner id
  owner_id: string
  // The preview image
  preview_image?: string
}
- 
403 Refresh view metadata is not permitted 
- 
404 Failed to find database in metadata database 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[PUT]/api/v1/database/{databaseId}/metadata/table¶
- 
Summary 
 Update database table schemas
- 
Description 
 Updates the database with id with generated metadata from tables that are not yet known to the database. Only the database owner can perform this operation. Requires rolefind-database.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 200 Refreshed database tables metadata
application/json
{
  id: string
  // The name
  name: string
  // The comment
  description?: string
  identifiers: {
    id: string
    type: enum[database, subset, table, view]
    creators: {
      id: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    }[]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    doi?: string
    publisher: string
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    publication_year: integer
    owned_by: string
  }[]
  contact: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  // The machine-friendly database name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The owner id
  owner_id: string
  // The preview image
  preview_image?: string
}
- 
400 Failed to parse payload at search service 
- 
403 Not allowed to refresh table metadata 
- 
404 Failed to find database in metadata database 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[GET]/api/v1/database/{databaseId}/image¶
- 
Summary 
 Get database preview image
- 
Description 
 Gets the database with id on the preview image.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 200 View of image was successful
*/*
{
  "type": "string",
  "format": "byte"
}
- 404 Database or user could not be found
[PUT]/api/v1/database/{databaseId}/image¶
- 
Summary 
 Update database preview image
- 
Description 
 Updates the database with id on the preview image. Only the database owner can perform this operation. Requires rolemodify-database-image.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // The key of the S3 binary object in the storage service
  key?: string
}
Responses¶
- 202 Modify of image was successful
application/json
{
  id: string
  // The name
  name: string
  // The comment
  description?: string
  identifiers: {
    id: string
    type: enum[database, subset, table, view]
    creators: {
      id: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    }[]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    doi?: string
    publisher: string
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    publication_year: integer
    owned_by: string
  }[]
  contact: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  // The machine-friendly database name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The owner id
  owner_id: string
  // The preview image
  preview_image?: string
}
- 
403 Modify of image is not permitted 
- 
404 Database could not be found 
- 
410 File was not found in the Storage Service 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[GET]/api/v1/ontology¶
- 
Summary 
 List ontologies
- 
Description 
 Lists all ontologies known to the metadata database.
Responses¶
- 200 List ontologies
application/json
{
  id: string
  uri: string
  prefix: string
  sparql: boolean
  rdf: boolean
  uri_pattern?: string
}[]
[POST]/api/v1/ontology¶
- 
Summary 
 Create ontology
- 
Description 
 Creates an ontology in the metadata database. Requires rolecreate-ontology.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  uri: string
  prefix: string
  sparql_endpoint?: string
}
Responses¶
- 201 Registered ontology successfully
application/json
{
  id: string
  uri: string
  prefix: string
  sparql: boolean
  rdf: boolean
  uri_pattern?: string
  sparql_endpoint?: string
  rdf_path?: string
}
[GET]/api/v1/message¶
- 
Summary 
 List messages
- 
Description 
 Lists messages known to the metadata database. Messages can be filtered be filtered with the optionalactiveparameter. If set to true, only active messages (that is, messages whose end time has not been reached) will be returned. Otherwise only inactive messages are returned. If not set, active and inactive messages are returned.
Parameters(Query)¶
active?: boolean
Responses¶
- 200 List messages
application/json
{
  id: string
  type: enum[error, warning, info]
  message: string
  link?: string
  link_text?: string
  display_start?: string
  display_end?: string
}[]
[POST]/api/v1/message¶
- 
Summary 
 Create message
- 
Description 
 Creates a message in the metadata database. Requires rolecreate-maintenance-message.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  type: enum[error, warning, info]
  message: string
  link?: string
  link_text?: string
  display_start?: string
  display_end?: string
}
Responses¶
- 201 Created message
application/json
{
  type: enum[error, warning, info]
  message: string
  link?: string
  link_text?: string
}
[GET]/api/v1/image¶
- 
Summary 
 List images
- 
Description 
 Lists all container images known to the metadata database.
Responses¶
- 200 List images
application/json
{
  // The image id
  id: string
  // The image name
  name: string
  // The image tag
  version: string
  // Marks the image as default
  default: boolean
}[]
[POST]/api/v1/image¶
- 
Summary 
 Create image
- 
Description 
 Creates a container image in the metadata database. Requires rolecreate-image.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // The URL of the registry without protocol
  registry: string
  // The image name
  name: string
  version: string
  // The SQL dialect class name
  dialect: string
  // The default image port to access the database
  default_port: integer
  // The driver class name
  driver_class: string
  // The method used by JDBC
  jdbc_method: string
}
Responses¶
- 201 Created image
application/json
{
  // The image id
  id: string
  // The image name
  name: string
  version: string
  operators: {
    // The operator id
    id: string
    // The machine-friendly name of the operator
    value: string
    // The documentation link
    documentation: string
    // The user-friendly name of the operator
    display_name: string
  }[]
  default: boolean
  data_types: {
    // The id of the data type
    id: string
    // The machine-friendly value of the data type
    value: string
    // The documentation link
    documentation: string
    // The human-friendly name of the data type
    display_name: string
    // The minimum size
    size_min?: integer
    // The maximum size
    size_max?: integer
    // The default size
    size_default?: integer
    // If true, the size parameter cannot be empty
    size_required?: boolean
    // The step increment
    size_step?: integer
    // The minimum d
    d_min?: integer
    // The maximum d
    d_max?: integer
    // The default d
    d_default?: integer
    // If true, the d parameter cannot be empty
    d_required?: boolean
    // The d increment
    d_step?: integer
    // The user-friendly description of the data format
    data_hint?: string
    // The user-friendly description of the data type
    type_hint?: string
    // frontend needs to quote this data type
    is_quoted: boolean
    // frontend can build this data type
    is_buildable: boolean
  }[]
}
- 
400 Image specification is invalid 
- 
409 Image already exists 
[GET]/api/v1/identifier¶
- 
Summary 
 List identifiers
- 
Description 
 Lists all identifiers known to the metadata database
Parameters(Query)¶
type?: enum[database, subset, table, view]
status?: enum[draft, published]
dbid?: string
qid?: string
vid?: string
tid?: string
Headers¶
Accept: string
Responses¶
- 200 Found identifiers successfully
application/json
{
  id: string
  type: enum[database, subset, table, view]
  creators: {
    id: string
    affiliation?: string
    creator_name: string
    name_type?: enum[Personal, Organizational]
    name_identifier?: string
    name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
    affiliation_identifier?: string
    affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
  }[]
  titles: {
    id: string
    title?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
  }[]
  descriptions: {
    id: string
    description?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
  }[]
  doi?: string
  publisher: string
  status: enum[draft, published]
  created?: string
  database_id: string
  query_id?: string
  table_id?: string
  view_id?: string
  publication_year: integer
  owned_by: string
}[][]
application/ld+json
{
  // The name
  name: string
  // The description
  description: string
  // The URL
  url: string
  identifier?: string[]
  license?: string
  creator: {
    // The name
    name: string
    // The unambiguous reference to a person's identifier
    sameAs?: string
    // The firstname
    givenName?: string
    // The lastname
    familyName?: string
    // The type
    @type: string
  }[]
  // The ciration URL
  citation: string
  hasPart:#/components/schemas/LdDatasetDto[]
  // The temporal coverage
  temporalCoverage: string
  // The version
  version: string
  // The context schema URI
  @context: string
  // The type
  @type: string
}[]
[POST]/api/v1/identifier¶
- 
Summary 
 Create identifier
- 
Description 
 Create an identifier with id to create a draft identifier. Identifiers can only be created for objects the user has at least READ access in the associated database (requires rolecreate-identifier) or for any object in any database (requires rolecreate-foreign-identifier).
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // The identifier type
  type: enum[database, subset, table, view]
  // The doi persistent identifier with optional https://doi.org/ prefix
  doi?: string
  titles: {
    // The title
    title: string
    // The language
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    // The type
    type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
  }[]
  descriptions: {
    // The description value
    description: string
    // The language
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    // The type
    type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
  }[]
  funders: {
    // The funder name
    funder_name: string
    // The identifier that identifies the funder unambiguously
    funder_identifier?: string
    // The funder type, when the `funder_identifier` is a DOI, the `funder_identifier_type` field must be `Crossref Funder ID`
    funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
    // The scheme URI of the `funder_identifier`
    scheme_uri?: string
    // The award number
    award_number?: string
    // The award title
    award_title?: string
  }[]
  licenses: {
    // The id
    identifier: string
    // The link to the license such as an SPDX identifier
    uri: string
    // A user-friendly short abstract of key details of the license
    description?: string
  }[]
  // The publisher
  publisher: string
  // The language
  language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  creators: {
    // The given name
    firstname?: string
    // The family name
    lastname?: string
    // The affiliation
    affiliation?: string
    // The full name
    creator_name: string
    // The name type
    name_type?: enum[Personal, Organizational]
    // The persistent identifier that identifies the creator unambiguously
    name_identifier?: string
    // The persistent identifier that identifies the affiliation unambiguously
    affiliation_identifier?: string
  }[]
  // The id
  database_id: string
  // The subset id, is only set when type=`subset`
  query_id?: string
  // The view id, is only set when type=`view`
  view_id?: string
  // The table id, is only set when type=`table`
  table_id?: string
  // The day of publication
  publication_day?: integer
  // The month of publication
  publication_month?: integer
  // The year of publication
  publication_year: integer
  related_identifiers: {
    value: string
    type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
    relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
  }[]
}
Responses¶
- 201 Drafted identifier
application/json
{
  id: string
  links: {
    self: string
    data?: string
    self_html: string
    dashboard_html?: string
  }
  type: enum[database, subset, table, view]
  titles: {
    id: string
    title?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
  }[]
  descriptions: {
    id: string
    description?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
  }[]
  funders: {
    id: string
    funder_name: string
    funder_identifier?: string
    funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
    scheme_uri?: string
    award_number?: string
    award_title?: string
  }[]
  query: string
  execution?: string
  doi?: string
  publisher: string
  owner: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  language: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  licenses: {
    // The id
    identifier: string
    // The link to the license such as an SPDX identifier
    uri: string
    // A user-friendly short abstract of key details of the license
    description?: string
  }[]
  creators: {
    id: string
    firstname?: string
    lastname?: string
    affiliation?: string
    creator_name: string
    name_type?: enum[Personal, Organizational]
    name_identifier?: string
    name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
    name_identifier_scheme_uri?: string
    affiliation_identifier?: string
    affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    affiliation_identifier_scheme_uri?: string
  }[]
  status: enum[draft, published]
  created?: string
  database_id: string
  query_id?: string
  table_id?: string
  view_id?: string
  query_normalized: string
  related_identifiers: {
    id: string
    value: string
    type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
    relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
  }[]
  // query hash in sha512
  query_hash: string
  result_hash?: string
  result_number?: integer
  publication_day?: integer
  publication_month?: integer
  publication_year: integer
}
- 
400 Identifier form contains invalid request data 
- 
403 Insufficient access rights or authorities 
- 
404 Failed to find database, table or view 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[GET]/api/v1/database/{databaseId}/view¶
- 
Summary 
 List views
- 
Description 
 Lists views known to the metadata database.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 200 Find views successfully
application/json
{
  // The id
  id: string
  // The user-friendly name
  name: string
  // The SQL statement used to create the view
  query: string
  // The database id
  database_id: string
  // The machine-friendly name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // If true, the view is default for the database
  initial_view?: boolean
  // The sha256-hash of the query
  query_hash: string
  // The owner id
  owned_by?: string
}[]
- 404 Database or user could not be found
[POST]/api/v1/database/{databaseId}/view¶
- 
Summary 
 Create view
- 
Description 
 Creates a view. This can only be performed by the database owner. Requires rolecreate-database-view.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // The name
  name: string
  query: {
    columns?: string[]
    filter: {
      // The filter type
      type: enum[where, or, and]
      // The filter value
      value?: string
      // The column id
      column_id: string
      // The operator id
      operator_id: string
    }[]
    order: {
      // The sort direction
      direction?: enum[asc, desc]
      // The column id
      column_id: string
    }[]
    // The id of the data source
    datasource_id: string
    datasource_type: enum[table, view]
  }
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
}
Responses¶
- 201 Create view successfully
application/json
{
  // The id
  id: string
  // The user-friendly name
  name: string
  // The SQL statement used to create the view
  query: string
  // The database id
  database_id: string
  // The machine-friendly name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // If true, the view is default for the database
  initial_view?: boolean
  // The sha256-hash of the query
  query_hash: string
  // The owner id
  owned_by?: string
}
- 
400 Create view query is malformed 
- 
403 Credentials missing 
- 
404 Failed to find database/user in metadata database. 
- 
409 View exists with name 
- 
423 Create view resulted in an invalid query statement 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[GET]/api/v1/database/{databaseId}/table¶
- 
Summary 
 List tables
- 
Description 
 Lists all tables known to the metadata database. When a database has a hidden schema (i.e. whenis_schema_publicisfalse), then the user needs to have at least read access and the rolelist-tables.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 200 List tables
application/json
{
  // The id
  id: string
  // The user-friendly table name
  name: string
  // The comment
  description?: string
  // The database id
  database_id: string
  // The machine-friendly table name
  internal_name: string
  // If true, The is using data versioning
  is_versioned: boolean
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The owner id
  owned_by: string
}[]
- 
403 List tables not permitted 
- 
404 Database could not be found 
[POST]/api/v1/database/{databaseId}/table¶
- 
Summary 
 Create table
- 
Description 
 Creates a table in the database with id. Requires rolecreate-table.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // The table name
  name: string
  // The table comment
  description?: string
  columns: {
    // The column name
    name: string
    // The data type
    type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
    // The size determines the number of digits before the comma: x=size-d where size >= d
    size?: integer
    // The digits behind the comma
    d?: integer
    // The column comment
    description?: string
    enums?: string[]
    sets?: string[]
    // The index length
    index_length?: integer
    // If set to true, the column value can be null
    null_allowed: boolean
    // The column concept
    concept_uri?: string
    // The column unit
    unit_uri?: string
  }[]
  constraints: {
    uniques?: string[][]
    checks?: string[]
    foreign_keys: {
      columns?: string[]
      // The name of the foreign table
      referenced_table: string
      referenced_columns?: string[]
      // The integrity action when updating tuples
      on_update?: enum[restrict, cascade, set_null, no_action, set_default]
      // The integrity action when deleting tuples
      on_delete?: enum[restrict, cascade, set_null, no_action, set_default]
    }[]
    primary_key?: string[]
  }
  // The table visibility; if true, the table will be displayed publicly and is searchable
  is_public: boolean
  // The table insights; if true, the table schema will be displayed publicly and is searchable
  is_schema_public: boolean
}
Responses¶
- 201 Created a new table
application/json
{
  // The id
  id: string
  // The user-friendly table name
  name: string
  // The comment
  description?: string
  // The database id
  database_id: string
  // The machine-friendly table name
  internal_name: string
  // If true, The is using data versioning
  is_versioned: boolean
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The owner id
  owned_by: string
}
- 
400 Create table query is malformed 
- 
403 Create table not permitted 
- 
404 Database, container or user could not be found 
- 
409 Create table conflicts with existing table name 
- 
502 Connection to search service failed 
- 
503 Failed to save in search service 
[GET]/api/v1/container¶
- 
Summary 
 List containers
- 
Description 
 List all containers in the metadata database.
Parameters(Query)¶
limit?: integer
Responses¶
- 200 List containers
application/json
{
  // The container id
  id: string
  // The container hash
  hash: string
  // The user-friendly container name
  name: string
  image: {
    // The image id
    id: string
    // The image name
    name: string
    // The image tag
    version: string
    // Marks the image as default
    default: boolean
  }
  // The number of databases the container is capable to hold simultaneously, if null the container has no limit
  quota: integer
  // The number of databases currently in the container
  count: integer
  // The machine-friendly container name
  internal_name: string
}[]
[POST]/api/v1/container¶
- 
Summary 
 Create container
- 
Description 
 Creates a container in the metadata database. Requires rolecreate-container.
- 
Security 
 bearerAuth
 basicAuth
RequestBody¶
- application/json
{
  // The user-friendly container name
  name: string
  // The container hostname
  host: string
  // The container port
  port: integer
  quota: integer
  // The image id used for the container database engine
  image_id: string
  // The username of the privileged user
  privileged_username: string
  // The password of the privileged user
  privileged_password: string
}
Responses¶
- 201 Created a new container
application/json
{
  // The container id
  id: string
  // The user-friendly container name
  name: string
  image: {
    // The image id
    id: string
    // The image name
    name: string
    version: string
    operators: {
      // The operator id
      id: string
      // The machine-friendly name of the operator
      value: string
      // The documentation link
      documentation: string
      // The user-friendly name of the operator
      display_name: string
    }[]
    default: boolean
    data_types: {
      // The id of the data type
      id: string
      // The machine-friendly value of the data type
      value: string
      // The documentation link
      documentation: string
      // The human-friendly name of the data type
      display_name: string
      // The minimum size
      size_min?: integer
      // The maximum size
      size_max?: integer
      // The default size
      size_default?: integer
      // If true, the size parameter cannot be empty
      size_required?: boolean
      // The step increment
      size_step?: integer
      // The minimum d
      d_min?: integer
      // The maximum d
      d_max?: integer
      // The default d
      d_default?: integer
      // If true, the d parameter cannot be empty
      d_required?: boolean
      // The d increment
      d_step?: integer
      // The user-friendly description of the data format
      data_hint?: string
      // The user-friendly description of the data type
      type_hint?: string
      // frontend needs to quote this data type
      is_quoted: boolean
      // frontend can build this data type
      is_buildable: boolean
    }[]
  }
  // The number of databases the container is capable to hold simultaneously, if null the container has no limit
  quota: integer
  // The number of databases currently in the container
  count: integer
  // The username of the privileged user
  username?: string
  // The password of the privileged user
  password?: string
  last_retrieved?: string
  // The machine-friendly container name
  internal_name: string
}
- 
400 Container payload malformed 
- 
403 Create container not permitted, need authority create-container
- 
404 Container image or user could not be found 
- 
409 Container name already exists 
[GET]/api/v1/user¶
- 
Summary 
 List users
- 
Description 
 Lists users known to the metadata database. Internal users are omitted from the result list. If the optional query parameterusernameis present, the result list can be filtered by matching this exact username.
Parameters(Query)¶
username?: string
Responses¶
- 200 List users
application/json
{
  id: string
  // Only contains lowercase characters
  username: string
  name?: string
  orcid?: string
  qualified_name?: string
  given_name?: string
  family_name?: string
}[]
[GET]/api/v1/unit¶
- 
Summary 
 List units
- 
Description 
 Lists units known to the metadata database.
Responses¶
- 200 Find all semantic units
application/json
{
  // The unit id
  id: string
  // The unit URI
  uri: string
  // The unit name, taken as label from the ontology
  name?: string
  // The unit description giving a user-friendly explanation
  description?: string
  columns: {
    // The column id
    id: string
    // The column name
    name: string
    // The data source alias name
    alias?: string
    // The database id
    database_id: string
    // The table id
    table_id: string
    // The machine-friendly internal name
    internal_name: string
    // The column type name
    type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
  }[]
}[]
[GET]/api/v1/ontology/{ontologyId}/entity¶
- 
Summary 
 Find entities
- 
Description 
 Finds semantic entities by label or uri in an ontology with id. Requires roleexecute-semantic-query.
- 
Security 
 bearerAuth
 basicAuth
Parameters(Query)¶
label?: string
uri?: string
Responses¶
- 200 Found entities
application/json
{
  uri: string
  label: string
  description?: string
}[]
- 
400 Filter params are invalid 
- 
404 Could not find ontology 
- 
417 Generated query or uri is malformed 
- 
422 Ontology does not have rdf or sparql endpoint 
[GET]/api/v1/oai¶
- Summary
 Get record
Parameters(Query)¶
{
  "name": "verb",
  "in": "query"
}
parameters: {
  metadataPrefix?: string
  from?: string
  until?: string
  set?: string
  resumptionToken?: string
  parametersString?: string
  fromDate?: string
  untilDate?: string
}
Responses¶
- 200 List containers
text/xml
{
  "type": "string"
}
[GET]/api/v1/message/message/{messageId}¶
- 
Summary 
 Find message
- 
Description 
 Finds a message with id in the metadata database.
Responses¶
- 200 Get messages
application/json
{
  id: string
  type: enum[error, warning, info]
  message: string
  link?: string
  link_text?: string
  display_start?: string
  display_end?: string
}
- 404 Could not find message
[GET]/api/v1/license¶
- 
Summary 
 List licenses
- 
Description 
 Lists licenses known to the metadata database.
Responses¶
- 200 List of licenses
application/json
{
  // The id
  identifier: string
  // The link to the license such as an SPDX identifier
  uri: string
  // A user-friendly short abstract of key details of the license
  description?: string
}[]
[GET]/api/v1/identifier/retrieve¶
- 
Summary 
 Retrieve PID metadata
- 
Description 
 Retrieves Persistent Identifier (PID) metadata from external endpoints. Supported PIDs are: ORCID, ROR, DOI.
Parameters(Query)¶
url: string
Responses¶
- 200 Retrieved metadata from identifier
application/json
{
  id: string
  links: {
    self: string
    data?: string
    self_html: string
    dashboard_html?: string
  }
  type: enum[database, subset, table, view]
  titles: {
    id: string
    title?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
  }[]
  descriptions: {
    id: string
    description?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
  }[]
  funders: {
    id: string
    funder_name: string
    funder_identifier?: string
    funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
    scheme_uri?: string
    award_number?: string
    award_title?: string
  }[]
  query: string
  execution?: string
  doi?: string
  publisher: string
  owner: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  language: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  licenses: {
    // The id
    identifier: string
    // The link to the license such as an SPDX identifier
    uri: string
    // A user-friendly short abstract of key details of the license
    description?: string
  }[]
  creators: {
    id: string
    firstname?: string
    lastname?: string
    affiliation?: string
    creator_name: string
    name_type?: enum[Personal, Organizational]
    name_identifier?: string
    name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
    name_identifier_scheme_uri?: string
    affiliation_identifier?: string
    affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    affiliation_identifier_scheme_uri?: string
  }[]
  status: enum[draft, published]
  created?: string
  database_id: string
  query_id?: string
  table_id?: string
  view_id?: string
  query_normalized: string
  related_identifiers: {
    id: string
    value: string
    type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
    relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
  }[]
  // query hash in sha512
  query_hash: string
  result_hash?: string
  result_number?: integer
  publication_day?: integer
  publication_month?: integer
  publication_year: integer
}
- 404 Failed to find metadata for identifier
[GET]/api/v1/database/{databaseId}¶
- 
Summary 
 Find database
- 
Description 
 Finds a database with id.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 200 Database found successfully
application/json
{
  id: string
  // The name
  name: string
  // The comment
  description?: string
  identifiers: {
    id: string
    type: enum[database, subset, table, view]
    creators: {
      id: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    }[]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    doi?: string
    publisher: string
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    publication_year: integer
    owned_by: string
  }[]
  contact: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  // The machine-friendly database name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The owner id
  owner_id: string
  // The preview image
  preview_image?: string
}
- 
403 Not allowed to view database 
- 
404 Database could not be found 
[GET]/api/v1/database/{databaseId}/table/{tableId}/suggest¶
- 
Summary 
 Suggest semantics
- 
Description 
 Suggests semantic concepts for a table. This action can only be performed by the table owner. Requires roletable-semantic-analyse.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 200 Suggested table semantics successfully
application/json
{
  uri: string
  label: string
  description?: string
}[]
- 
400 Failed to parse statistic in search service 
- 
403 Not the table owner. 
- 
404 Failed to find database/table in metadata database 
- 
417 Generated query is malformed 
- 
422 Ontology does not have rdf or sparql endpoint 
[GET]/api/v1/database/{databaseId}/table/{tableId}/column/{columnId}/suggest¶
- 
Summary 
 Suggest semantics
- 
Description 
 Suggests column semantics. Requires roletable-semantic-analyse.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 200 Suggested table column semantics successfully
application/json
{
  uri: string
  label?: string
  description?: string
  database_id: string
  table_id: string
  column_id: string
}[]
- 
400 Generated query is malformed 
- 
404 Failed to find database/table in metadata database 
- 
422 Ontology does not have rdf or sparql endpoint 
[GET]/api/v1/container/{containerId}¶
- 
Summary 
 Find container
- 
Description 
 Finds a container in the metadata database.
Responses¶
- 200 Found container
application/json
{
  // The container id
  id: string
  // The user-friendly container name
  name: string
  image: {
    // The image id
    id: string
    // The image name
    name: string
    version: string
    operators: {
      // The operator id
      id: string
      // The machine-friendly name of the operator
      value: string
      // The documentation link
      documentation: string
      // The user-friendly name of the operator
      display_name: string
    }[]
    default: boolean
    data_types: {
      // The id of the data type
      id: string
      // The machine-friendly value of the data type
      value: string
      // The documentation link
      documentation: string
      // The human-friendly name of the data type
      display_name: string
      // The minimum size
      size_min?: integer
      // The maximum size
      size_max?: integer
      // The default size
      size_default?: integer
      // If true, the size parameter cannot be empty
      size_required?: boolean
      // The step increment
      size_step?: integer
      // The minimum d
      d_min?: integer
      // The maximum d
      d_max?: integer
      // The default d
      d_default?: integer
      // If true, the d parameter cannot be empty
      d_required?: boolean
      // The d increment
      d_step?: integer
      // The user-friendly description of the data format
      data_hint?: string
      // The user-friendly description of the data type
      type_hint?: string
      // frontend needs to quote this data type
      is_quoted: boolean
      // frontend can build this data type
      is_buildable: boolean
    }[]
  }
  // The number of databases the container is capable to hold simultaneously, if null the container has no limit
  quota: integer
  // The number of databases currently in the container
  count: integer
  // The username of the privileged user
  username?: string
  // The password of the privileged user
  password?: string
  last_retrieved?: string
  // The machine-friendly container name
  internal_name: string
}
- 404 Container image could not be found
[DELETE]/api/v1/container/{containerId}¶
- 
Summary 
 Delete container
- 
Description 
 Deletes a container in the metadata database. Requires roledelete-container.
- 
Security 
 bearerAuth
 basicAuth
Responses¶
- 
202 Deleted container 
- 
403 Create container not permitted, need authority delete-container
- 
404 Container not found 
[GET]/api/v1/concept¶
- 
Summary 
 List concepts
- 
Description 
 List all semantic concepts known to the metadata database
Responses¶
- 200 List concepts
application/json
{
  // The concept id
  id: string
  // The concept URI
  uri: string
  // The concept name, taken as label from the ontology
  name?: string
  // The concept description giving a user-friendly explanation
  description?: string
  columns: {
    // The column id
    id: string
    // The column name
    name: string
    // The data source alias name
    alias?: string
    // The database id
    database_id: string
    // The table id
    table_id: string
    // The machine-friendly internal name
    internal_name: string
    // The column type name
    type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
  }[]
}[]
[GET]/api/v1/search¶
- 
Summary 
 Performs a fuzzy search
- 
Description 
 Performs a fuzzy search
Parameters(Query)¶
q: string
Responses¶
- 200 OK, contains the elements formatted as an array of JSON arrays
application/json
[]
- 415 Wrong accept type
[POST]/api/v1/search/{field_type}¶
- 
Summary 
 Performs a general search
- 
Description 
 Performs a general search
Parameters(Query)¶
t1?: integer
t2?: integer
Parameters(Body)¶
body: {
  field_value_pairs: {
  }
  search_term: string
}
Responses¶
- 200 OK, contains the elements formatted as an array of JSON arrays
application/json
{
  results: {
  }[]
  // Same as the requested type
  type?: enum[database, table, view, column, user, identifier, concept, unit]
}
[GET]/api/v1/search/{field_type}/fields¶
- Summary
 Get searchable fields
Responses¶
- 200 List of fields
application/json
{
  results: {
    attr_friendly_name: string
    attr_name: string
    // OpenSearch data types.
    type: string
  }[]
}
- 404 Invalid type.
[GET]/api/v1/search/{index}¶
- 
Summary 
 Gets the index
- 
Description 
 Gets the index
Parameters(Body)¶
body: {
  field_value_pairs: {
  }
  search_term?: string
  t1?: integer
  t2?: integer
}
Responses¶
- 200 OK, contains the elements formatted as an array of JSON arrays
application/json
{
  "properties": {
    "results": {
      "items": {
        "type": "object"
      },
      "type": "array"
    },
    "type": {
      "description": "Same as the requested type",
      "enum": [
        "database",
        "table",
        "view",
        "column",
        "user",
        "identifier",
        "concept",
        "unit"
      ],
      "type": "string"
    }
  },
  "required": [
    "results",
    "type"
  ]
}
References¶
#/components/securitySchemes/basicAuth¶
{
  "in": "header",
  "scheme": "basic",
  "type": "http"
}
#/components/securitySchemes/bearerAuth¶
{
  "bearerFormat": "JWT",
  "in": "header",
  "scheme": "bearer",
  "type": "http"
}
#/components/schemas/DatabaseAccessDto¶
{
  user: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  type: enum[read, write_own, write_all]
}
#/components/schemas/UserBriefDto¶
{
  id: string
  // Only contains lowercase characters
  username: string
  name?: string
  orcid?: string
  qualified_name?: string
  given_name?: string
  family_name?: string
}
#/components/schemas/TupleUpdateDto¶
{
  // The key-value data map
  data: {
  }
  // The map of conditions
  keys: {
  }
}
#/components/schemas/QueryPersistDto¶
{
  // If false, the query is marked for deletion at a later point in time
  persist: boolean
}
#/components/schemas/CreatorBriefDto¶
{
  id: string
  affiliation?: string
  creator_name: string
  name_type?: enum[Personal, Organizational]
  name_identifier?: string
  name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
  affiliation_identifier?: string
  affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
}
#/components/schemas/IdentifierBriefDto¶
{
  id: string
  type: enum[database, subset, table, view]
  creators: {
    id: string
    affiliation?: string
    creator_name: string
    name_type?: enum[Personal, Organizational]
    name_identifier?: string
    name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
    affiliation_identifier?: string
    affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
  }[]
  titles: {
    id: string
    title?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
  }[]
  descriptions: {
    id: string
    description?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
  }[]
  doi?: string
  publisher: string
  status: enum[draft, published]
  created?: string
  database_id: string
  query_id?: string
  table_id?: string
  view_id?: string
  publication_year: integer
  owned_by: string
}
#/components/schemas/IdentifierDescriptionDto¶
{
  id: string
  description?: string
  language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
}
#/components/schemas/IdentifierTitleDto¶
{
  id: string
  title?: string
  language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
}
#/components/schemas/QueryDto¶
{
  // The query id
  id: string
  owner: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  // The timestamp when the query was executed
  execution: string
  // The mapped SQL query
  query: string
  // The query type
  type?: enum[query, view]
  identifiers: {
    id: string
    type: enum[database, subset, table, view]
    creators: {
      id: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    }[]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    doi?: string
    publisher: string
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    publication_year: integer
    owned_by: string
  }[]
  // The database id
  database_id: string
  // The normalized SQL query as executed
  query_normalized: string
  // The sha256-hash of the mapped query
  query_hash: string
  // The sha256-hash of the result
  result_hash?: string
  // The row count of the result
  result_number?: integer
  // If false, the query is marked for deletion at a later point in time
  is_persisted: boolean
}
#/components/schemas/CreatorDto¶
{
  id: string
  firstname?: string
  lastname?: string
  affiliation?: string
  creator_name: string
  name_type?: enum[Personal, Organizational]
  name_identifier?: string
  name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
  name_identifier_scheme_uri?: string
  affiliation_identifier?: string
  affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
  affiliation_identifier_scheme_uri?: string
}
#/components/schemas/EnumDto¶
{
  // The enum id
  id: string
  // The enum value
  value: string
}
#/components/schemas/IdentifierDto¶
{
  id: string
  links: {
    self: string
    data?: string
    self_html: string
    dashboard_html?: string
  }
  type: enum[database, subset, table, view]
  titles: {
    id: string
    title?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
  }[]
  descriptions: {
    id: string
    description?: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
  }[]
  funders: {
    id: string
    funder_name: string
    funder_identifier?: string
    funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
    scheme_uri?: string
    award_number?: string
    award_title?: string
  }[]
  query: string
  execution?: string
  doi?: string
  publisher: string
  owner: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  language: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  licenses: {
    // The id
    identifier: string
    // The link to the license such as an SPDX identifier
    uri: string
    // A user-friendly short abstract of key details of the license
    description?: string
  }[]
  creators: {
    id: string
    firstname?: string
    lastname?: string
    affiliation?: string
    creator_name: string
    name_type?: enum[Personal, Organizational]
    name_identifier?: string
    name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
    name_identifier_scheme_uri?: string
    affiliation_identifier?: string
    affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    affiliation_identifier_scheme_uri?: string
  }[]
  status: enum[draft, published]
  created?: string
  database_id: string
  query_id?: string
  table_id?: string
  view_id?: string
  query_normalized: string
  related_identifiers: {
    id: string
    value: string
    type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
    relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
  }[]
  // query hash in sha512
  query_hash: string
  result_hash?: string
  result_number?: integer
  publication_day?: integer
  publication_month?: integer
  publication_year: integer
}
#/components/schemas/IdentifierFunderDto¶
{
  id: string
  funder_name: string
  funder_identifier?: string
  funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
  scheme_uri?: string
  award_number?: string
  award_title?: string
}
#/components/schemas/LicenseDto¶
{
  // The id
  identifier: string
  // The link to the license such as an SPDX identifier
  uri: string
  // A user-friendly short abstract of key details of the license
  description?: string
}
#/components/schemas/LinksDto¶
{
  self: string
  data?: string
  self_html: string
  dashboard_html?: string
}
#/components/schemas/RelatedIdentifierDto¶
{
  id: string
  value: string
  type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
  relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
}
#/components/schemas/SetDto¶
{
  // The set id
  id: string
  // The set value
  value: string
}
#/components/schemas/ViewColumnDto¶
{
  // The id
  id: string
  // The user-friendly column name
  name: string
  // The column size, determines the number of digits before the comma as x=size-d where size >= d
  size?: integer
  // The column d
  d?: integer
  description?: string
  enums: {
    // The enum id
    id: string
    // The enum value
    value: string
  }[]
  sets: {
    // The set id
    id: string
    // The set value
    value: string
  }[]
  // The database id
  database_id: string
  // The ordinal position of the colum to order it
  ord: integer
  // The machine-friendly column name
  internal_name: string
  // The length of the index
  index_length?: integer
  // The length of the total data in the table (index + data)
  length?: integer
  // The column type name
  type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
  is_null_allowed: boolean
}
#/components/schemas/ViewDto¶
{
  // The id
  id: string
  // The user-friendly name
  name: string
  identifiers: {
    id: string
    links: {
      self: string
      data?: string
      self_html: string
      dashboard_html?: string
    }
    type: enum[database, subset, table, view]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    funders: {
      id: string
      funder_name: string
      funder_identifier?: string
      funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
      scheme_uri?: string
      award_number?: string
      award_title?: string
    }[]
    query: string
    execution?: string
    doi?: string
    publisher: string
    owner: {
      id: string
      // Only contains lowercase characters
      username: string
      name?: string
      orcid?: string
      qualified_name?: string
      given_name?: string
      family_name?: string
    }
    language: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    licenses: {
      // The id
      identifier: string
      // The link to the license such as an SPDX identifier
      uri: string
      // A user-friendly short abstract of key details of the license
      description?: string
    }[]
    creators: {
      id: string
      firstname?: string
      lastname?: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      name_identifier_scheme_uri?: string
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
      affiliation_identifier_scheme_uri?: string
    }[]
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    query_normalized: string
    related_identifiers: {
      id: string
      value: string
      type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
      relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
    }[]
    // query hash in sha512
    query_hash: string
    result_hash?: string
    result_number?: integer
    publication_day?: integer
    publication_month?: integer
    publication_year: integer
  }[]
  // The SQL statement used to create the view
  query: string
  owner:#/components/schemas/UserBriefDto
  columns: {
    // The id
    id: string
    // The user-friendly column name
    name: string
    // The column size, determines the number of digits before the comma as x=size-d where size >= d
    size?: integer
    // The column d
    d?: integer
    description?: string
    enums: {
      // The enum id
      id: string
      // The enum value
      value: string
    }[]
    sets: {
      // The set id
      id: string
      // The set value
      value: string
    }[]
    // The database id
    database_id: string
    // The ordinal position of the colum to order it
    ord: integer
    // The machine-friendly column name
    internal_name: string
    // The length of the index
    index_length?: integer
    // The length of the total data in the table (index + data)
    length?: integer
    // The column type name
    type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
    is_null_allowed: boolean
  }[]
  // The created timestamp
  created: string
  // The timestamp The was last retrieved from the cache
  last_retrieved?: string
  // The database id
  database_id: string
  // The machine-friendly name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // If true, the view is default for the database
  initial_view?: boolean
  // The sha256-hash of the query
  query_hash: string
}
#/components/schemas/TupleDto¶
{
  // The key-value data map
  data: {
  }
}
#/components/schemas/ImportDto¶
{
  // The key of the S3 binary object in the storage service
  location: string
  // If true, the first line contains the column names, otherwise it contains only data
  header: boolean
  // The column delimiter of the dataset
  separator: string
  // The quote symbol around values in the dataset
  quote?: string
  // The newline symbol
  line_termination?: string
}
#/components/schemas/FilterDto¶
{
  // The filter type
  type: enum[where, or, and]
  // The filter value
  value?: string
  // The column id
  column_id: string
  // The operator id
  operator_id: string
}
#/components/schemas/OrderDto¶
{
  // The sort direction
  direction?: enum[asc, desc]
  // The column id
  column_id: string
}
#/components/schemas/SubsetDto¶
{
  columns?: string[]
  filter: {
    // The filter type
    type: enum[where, or, and]
    // The filter value
    value?: string
    // The column id
    column_id: string
    // The operator id
    operator_id: string
  }[]
  order: {
    // The sort direction
    direction?: enum[asc, desc]
    // The column id
    column_id: string
  }[]
  // The id of the data source
  datasource_id: string
  datasource_type: enum[table, view]
}
#/components/schemas/ColumnAnalysisResultDto¶
{
  // The column name
  name: string
  // The column data type
  datatype: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
  // The size determines the number of digits before the comma: x=size-d where size >= d
  size?: integer
  // The digits behind the comma
  d?: integer
  enums?: string[]
  sets?: string[]
  // If set to true, the column value can be null
  null_allowed?: boolean
  // The column is a candidate to be part of a composite primary key
  primary_key?: boolean
}
#/components/schemas/SchemaAnalysisResultDto¶
{
  // The column delimiter of the dataset
  delimiter: string
  // The quote symbol around values in the dataset
  quote: string
  // The escape symbol
  escape: string
  // The comment symbol
  comment: string
  columns: {
    // The column name
    name: string
    // The column data type
    datatype: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
    // The size determines the number of digits before the comma: x=size-d where size >= d
    size?: integer
    // The digits behind the comma
    d?: integer
    enums?: string[]
    sets?: string[]
    // If set to true, the column value can be null
    null_allowed?: boolean
    // The column is a candidate to be part of a composite primary key
    primary_key?: boolean
  }[]
  // The newline symbol
  newline_delimiter: string
  // The number of rows to skip
  skip_rows: integer
  // Detected the first line as header
  has_header: boolean
  // The format of the date
  date_format?: string
  // The format of the timestamp
  timestamp_format?: string
}
#/components/schemas/TableHistoryDto¶
{
  // The timestamp
  timestamp: string
  // The event type
  event: enum[insert, delete]
  // The total number of rows affected by the event
  total: integer
}
#/components/schemas/TupleDeleteDto¶
{
  // The map of conditions
  keys: {
  }
}
#/components/schemas/UserAttributesDto¶
{
  theme: string
  orcid?: string
  affiliation?: string
  language: string
}
#/components/schemas/UserDto¶
{
  id: string
  name?: string
  username: string
  password: string
  attributes: {
    theme: string
    orcid?: string
    affiliation?: string
    language: string
  }
  last_retrieved?: string
  qualified_name?: string
  given_name?: string
  family_name?: string
}
#/components/schemas/DatabaseBriefDto¶
{
  id: string
  // The name
  name: string
  // The comment
  description?: string
  identifiers: {
    id: string
    type: enum[database, subset, table, view]
    creators: {
      id: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
    }[]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    doi?: string
    publisher: string
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    publication_year: integer
    owned_by: string
  }[]
  contact: {
    id: string
    // Only contains lowercase characters
    username: string
    name?: string
    orcid?: string
    qualified_name?: string
    given_name?: string
    family_name?: string
  }
  // The machine-friendly database name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The owner id
  owner_id: string
  // The preview image
  preview_image?: string
}
#/components/schemas/UserUpdateDto¶
{
  firstname?: string
  lastname?: string
  affiliation?: string
  orcid?: string
  theme: string
  language: string
}
#/components/schemas/OntologyModifyDto¶
{
  uri: string
  prefix: string
  sparql_endpoint?: string
  rdf_path?: string
}
#/components/schemas/OntologyDto¶
{
  id: string
  uri: string
  prefix: string
  sparql: boolean
  rdf: boolean
  uri_pattern?: string
  sparql_endpoint?: string
  rdf_path?: string
}
#/components/schemas/BannerMessageUpdateDto¶
{
  type: enum[error, warning, info]
  message: string
  link?: string
  link_text?: string
  display_start?: string
  display_end?: string
}
#/components/schemas/BannerMessageBriefDto¶
{
  type: enum[error, warning, info]
  message: string
  link?: string
  link_text?: string
}
#/components/schemas/ImageChangeDto¶
{
  // The URL of the registry without protocol
  registry: string
  // The SQL dialect class name
  dialect: string
  // The default image port to access the database
  default_port: integer
  // The driver class name
  driver_class: string
  // The method used by JDBC
  jdbc_method: string
}
#/components/schemas/DataTypeDto¶
{
  // The id of the data type
  id: string
  // The machine-friendly value of the data type
  value: string
  // The documentation link
  documentation: string
  // The human-friendly name of the data type
  display_name: string
  // The minimum size
  size_min?: integer
  // The maximum size
  size_max?: integer
  // The default size
  size_default?: integer
  // If true, the size parameter cannot be empty
  size_required?: boolean
  // The step increment
  size_step?: integer
  // The minimum d
  d_min?: integer
  // The maximum d
  d_max?: integer
  // The default d
  d_default?: integer
  // If true, the d parameter cannot be empty
  d_required?: boolean
  // The d increment
  d_step?: integer
  // The user-friendly description of the data format
  data_hint?: string
  // The user-friendly description of the data type
  type_hint?: string
  // frontend needs to quote this data type
  is_quoted: boolean
  // frontend can build this data type
  is_buildable: boolean
}
#/components/schemas/ImageDto¶
{
  // The image id
  id: string
  // The image name
  name: string
  version: string
  operators: {
    // The operator id
    id: string
    // The machine-friendly name of the operator
    value: string
    // The documentation link
    documentation: string
    // The user-friendly name of the operator
    display_name: string
  }[]
  default: boolean
  data_types: {
    // The id of the data type
    id: string
    // The machine-friendly value of the data type
    value: string
    // The documentation link
    documentation: string
    // The human-friendly name of the data type
    display_name: string
    // The minimum size
    size_min?: integer
    // The maximum size
    size_max?: integer
    // The default size
    size_default?: integer
    // If true, the size parameter cannot be empty
    size_required?: boolean
    // The step increment
    size_step?: integer
    // The minimum d
    d_min?: integer
    // The maximum d
    d_max?: integer
    // The default d
    d_default?: integer
    // If true, the d parameter cannot be empty
    d_required?: boolean
    // The d increment
    d_step?: integer
    // The user-friendly description of the data format
    data_hint?: string
    // The user-friendly description of the data type
    type_hint?: string
    // frontend needs to quote this data type
    is_quoted: boolean
    // frontend can build this data type
    is_buildable: boolean
  }[]
}
#/components/schemas/OperatorDto¶
{
  // The operator id
  id: string
  // The machine-friendly name of the operator
  value: string
  // The documentation link
  documentation: string
  // The user-friendly name of the operator
  display_name: string
}
#/components/schemas/IdentifierSaveDto¶
{
  id: string
  type: enum[database, subset, table, view]
  doi?: string
  titles: {
    id: string
    title: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
  }[]
  descriptions: {
    id: string
    description: string
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
  }[]
  funders: {
    id: string
    funder_name: string
    funder_identifier?: string
    funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
    scheme_uri?: string
    award_number?: string
    award_title?: string
  }[]
  licenses: {
    // The id
    identifier: string
    // The link to the license such as an SPDX identifier
    uri: string
    // A user-friendly short abstract of key details of the license
    description?: string
  }[]
  publisher: string
  language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  creators: {
    id: string
    firstname?: string
    lastname?: string
    affiliation?: string
    creator_name: string
    name_type?: enum[Personal, Organizational]
    name_identifier?: string
    affiliation_identifier?: string
  }[]
  database_id: string
  query_id?: string
  view_id?: string
  table_id?: string
  publication_day?: integer
  publication_month?: integer
  publication_year: integer
  related_identifiers: {
    id: string
    value: string
    type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
    relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
  }[]
}
#/components/schemas/SaveIdentifierCreatorDto¶
{
  id: string
  firstname?: string
  lastname?: string
  affiliation?: string
  creator_name: string
  name_type?: enum[Personal, Organizational]
  name_identifier?: string
  affiliation_identifier?: string
}
#/components/schemas/SaveIdentifierDescriptionDto¶
{
  id: string
  description: string
  language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
}
#/components/schemas/SaveIdentifierFunderDto¶
{
  id: string
  funder_name: string
  funder_identifier?: string
  funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
  scheme_uri?: string
  award_number?: string
  award_title?: string
}
#/components/schemas/SaveIdentifierTitleDto¶
{
  id: string
  title: string
  language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
}
#/components/schemas/SaveRelatedIdentifierDto¶
{
  id: string
  value: string
  type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
  relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
}
#/components/schemas/DatabaseModifyVisibilityDto¶
{
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // If true, the dashboard will be managed
  is_dashboard_enabled: boolean
}
#/components/schemas/ViewUpdateDto¶
{
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
}
#/components/schemas/ViewBriefDto¶
{
  // The id
  id: string
  // The user-friendly name
  name: string
  // The SQL statement used to create the view
  query: string
  // The database id
  database_id: string
  // The machine-friendly name
  internal_name: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // If true, the view is default for the database
  initial_view?: boolean
  // The sha256-hash of the query
  query_hash: string
  // The owner id
  owned_by?: string
}
#/components/schemas/TableUpdateDto¶
{
  // The comment
  description?: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
}
#/components/schemas/TableBriefDto¶
{
  // The id
  id: string
  // The user-friendly table name
  name: string
  // The comment
  description?: string
  // The database id
  database_id: string
  // The machine-friendly table name
  internal_name: string
  // If true, The is using data versioning
  is_versioned: boolean
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The owner id
  owned_by: string
}
#/components/schemas/ColumnSemanticsUpdateDto¶
{
  // The description
  description?: string
  // The URI of the concept
  concept_uri?: string
  // The URI of the unit
  unit_uri?: string
}
#/components/schemas/ColumnDto¶
{
  // The id
  id: string
  // The user-friendly column name
  name: string
  // The data source alias name
  alias?: string
  // The column size, determines the number of digits before the comma as x=size-d where size >= d
  size?: integer
  // The column d
  d?: integer
  // The statistically average numerical value
  mean?: number
  // The statistically most middle numerical value
  median?: number
  concept: {
    // The concept id
    id: string
    // The concept URI
    uri: string
    // The concept name, taken as label from the ontology
    name?: string
    // The concept description giving a user-friendly explanation
    description?: string
  }
  unit: {
    // The unit id
    id: string
    // The unit URI
    uri: string
    // The unit name, taken as label from the ontology
    name?: string
    // The unit description giving a user-friendly explanation
    description?: string
  }
  description?: string
  enums: {
    // The enum id
    id: string
    // The enum value
    value: string
  }[]
  sets: {
    // The set id
    id: string
    // The set value
    value: string
  }[]
  // The database id
  database_id: string
  // The table id
  table_id: string
  // The ordinal position of the colum to order it
  ord: integer
  // The machine-friendly column name
  internal_name: string
  // The length of the index
  index_length?: integer
  // The length of the total data in the table (index + data)
  length?: integer
  // The column type name
  type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
  // The data length
  data_length?: integer
  // The maximum data length
  max_data_length?: integer
  // The number of rows
  num_rows?: integer
  // The statistically highest numerical value
  val_min?: number
  // The statistically lowest numerical value
  val_max?: number
  // The statistically determined standard deviation
  std_dev?: number
  is_null_allowed: boolean
}
#/components/schemas/ConceptBriefDto¶
{
  // The concept id
  id: string
  // The concept URI
  uri: string
  // The concept name, taken as label from the ontology
  name?: string
  // The concept description giving a user-friendly explanation
  description?: string
}
#/components/schemas/UnitBriefDto¶
{
  // The unit id
  id: string
  // The unit URI
  uri: string
  // The unit name, taken as label from the ontology
  name?: string
  // The unit description giving a user-friendly explanation
  description?: string
}
#/components/schemas/DatabaseTransferDto¶
{
  // The username of the new owner
  username: string
}
#/components/schemas/DatabaseModifyImageDto¶
{
  // The key of the S3 binary object in the storage service
  key?: string
}
#/components/schemas/CreateAccessDto¶
{
  // The access type
  type: enum[read, write_own, write_all]
}
#/components/schemas/OntologyCreateDto¶
{
  uri: string
  prefix: string
  sparql_endpoint?: string
}
#/components/schemas/BannerMessageCreateDto¶
{
  type: enum[error, warning, info]
  message: string
  link?: string
  link_text?: string
  display_start?: string
  display_end?: string
}
#/components/schemas/ImageCreateDto¶
{
  // The URL of the registry without protocol
  registry: string
  // The image name
  name: string
  version: string
  // The SQL dialect class name
  dialect: string
  // The default image port to access the database
  default_port: integer
  // The driver class name
  driver_class: string
  // The method used by JDBC
  jdbc_method: string
}
#/components/schemas/CreateIdentifierCreatorDto¶
{
  // The given name
  firstname?: string
  // The family name
  lastname?: string
  // The affiliation
  affiliation?: string
  // The full name
  creator_name: string
  // The name type
  name_type?: enum[Personal, Organizational]
  // The persistent identifier that identifies the creator unambiguously
  name_identifier?: string
  // The persistent identifier that identifies the affiliation unambiguously
  affiliation_identifier?: string
}
#/components/schemas/CreateIdentifierDescriptionDto¶
{
  // The description value
  description: string
  // The language
  language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  // The type
  type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
}
#/components/schemas/CreateIdentifierDto¶
{
  // The identifier type
  type: enum[database, subset, table, view]
  // The doi persistent identifier with optional https://doi.org/ prefix
  doi?: string
  titles: {
    // The title
    title: string
    // The language
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    // The type
    type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
  }[]
  descriptions: {
    // The description value
    description: string
    // The language
    language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    // The type
    type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
  }[]
  funders: {
    // The funder name
    funder_name: string
    // The identifier that identifies the funder unambiguously
    funder_identifier?: string
    // The funder type, when the `funder_identifier` is a DOI, the `funder_identifier_type` field must be `Crossref Funder ID`
    funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
    // The scheme URI of the `funder_identifier`
    scheme_uri?: string
    // The award number
    award_number?: string
    // The award title
    award_title?: string
  }[]
  licenses: {
    // The id
    identifier: string
    // The link to the license such as an SPDX identifier
    uri: string
    // A user-friendly short abstract of key details of the license
    description?: string
  }[]
  // The publisher
  publisher: string
  // The language
  language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  creators: {
    // The given name
    firstname?: string
    // The family name
    lastname?: string
    // The affiliation
    affiliation?: string
    // The full name
    creator_name: string
    // The name type
    name_type?: enum[Personal, Organizational]
    // The persistent identifier that identifies the creator unambiguously
    name_identifier?: string
    // The persistent identifier that identifies the affiliation unambiguously
    affiliation_identifier?: string
  }[]
  // The id
  database_id: string
  // The subset id, is only set when type=`subset`
  query_id?: string
  // The view id, is only set when type=`view`
  view_id?: string
  // The table id, is only set when type=`table`
  table_id?: string
  // The day of publication
  publication_day?: integer
  // The month of publication
  publication_month?: integer
  // The year of publication
  publication_year: integer
  related_identifiers: {
    value: string
    type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
    relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
  }[]
}
#/components/schemas/CreateIdentifierFunderDto¶
{
  // The funder name
  funder_name: string
  // The identifier that identifies the funder unambiguously
  funder_identifier?: string
  // The funder type, when the `funder_identifier` is a DOI, the `funder_identifier_type` field must be `Crossref Funder ID`
  funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
  // The scheme URI of the `funder_identifier`
  scheme_uri?: string
  // The award number
  award_number?: string
  // The award title
  award_title?: string
}
#/components/schemas/CreateIdentifierTitleDto¶
{
  // The title
  title: string
  // The language
  language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
  // The type
  type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
}
#/components/schemas/CreateRelatedIdentifierDto¶
{
  value: string
  type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
  relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
}
#/components/schemas/CreateDatabaseDto¶
{
  // The name
  name: string
  // The container id
  container_id: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
}
#/components/schemas/CreateViewDto¶
{
  // The name
  name: string
  query: {
    columns?: string[]
    filter: {
      // The filter type
      type: enum[where, or, and]
      // The filter value
      value?: string
      // The column id
      column_id: string
      // The operator id
      operator_id: string
    }[]
    order: {
      // The sort direction
      direction?: enum[asc, desc]
      // The column id
      column_id: string
    }[]
    // The id of the data source
    datasource_id: string
    datasource_type: enum[table, view]
  }
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
}
#/components/schemas/CreateForeignKeyDto¶
{
  columns?: string[]
  // The name of the foreign table
  referenced_table: string
  referenced_columns?: string[]
  // The integrity action when updating tuples
  on_update?: enum[restrict, cascade, set_null, no_action, set_default]
  // The integrity action when deleting tuples
  on_delete?: enum[restrict, cascade, set_null, no_action, set_default]
}
#/components/schemas/CreateTableColumnDto¶
{
  // The column name
  name: string
  // The data type
  type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
  // The size determines the number of digits before the comma: x=size-d where size >= d
  size?: integer
  // The digits behind the comma
  d?: integer
  // The column comment
  description?: string
  enums?: string[]
  sets?: string[]
  // The index length
  index_length?: integer
  // If set to true, the column value can be null
  null_allowed: boolean
  // The column concept
  concept_uri?: string
  // The column unit
  unit_uri?: string
}
#/components/schemas/CreateTableConstraintsDto¶
{
  uniques?: string[][]
  checks?: string[]
  foreign_keys: {
    columns?: string[]
    // The name of the foreign table
    referenced_table: string
    referenced_columns?: string[]
    // The integrity action when updating tuples
    on_update?: enum[restrict, cascade, set_null, no_action, set_default]
    // The integrity action when deleting tuples
    on_delete?: enum[restrict, cascade, set_null, no_action, set_default]
  }[]
  primary_key?: string[]
}
#/components/schemas/CreateTableDto¶
{
  // The table name
  name: string
  // The table comment
  description?: string
  columns: {
    // The column name
    name: string
    // The data type
    type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
    // The size determines the number of digits before the comma: x=size-d where size >= d
    size?: integer
    // The digits behind the comma
    d?: integer
    // The column comment
    description?: string
    enums?: string[]
    sets?: string[]
    // The index length
    index_length?: integer
    // If set to true, the column value can be null
    null_allowed: boolean
    // The column concept
    concept_uri?: string
    // The column unit
    unit_uri?: string
  }[]
  constraints: {
    uniques?: string[][]
    checks?: string[]
    foreign_keys: {
      columns?: string[]
      // The name of the foreign table
      referenced_table: string
      referenced_columns?: string[]
      // The integrity action when updating tuples
      on_update?: enum[restrict, cascade, set_null, no_action, set_default]
      // The integrity action when deleting tuples
      on_delete?: enum[restrict, cascade, set_null, no_action, set_default]
    }[]
    primary_key?: string[]
  }
  // The table visibility; if true, the table will be displayed publicly and is searchable
  is_public: boolean
  // The table insights; if true, the table schema will be displayed publicly and is searchable
  is_schema_public: boolean
}
#/components/schemas/CreateContainerDto¶
{
  // The user-friendly container name
  name: string
  // The container hostname
  host: string
  // The container port
  port: integer
  quota: integer
  // The image id used for the container database engine
  image_id: string
  // The username of the privileged user
  privileged_username: string
  // The password of the privileged user
  privileged_password: string
}
#/components/schemas/ContainerDto¶
{
  // The container id
  id: string
  // The user-friendly container name
  name: string
  image: {
    // The image id
    id: string
    // The image name
    name: string
    version: string
    operators: {
      // The operator id
      id: string
      // The machine-friendly name of the operator
      value: string
      // The documentation link
      documentation: string
      // The user-friendly name of the operator
      display_name: string
    }[]
    default: boolean
    data_types: {
      // The id of the data type
      id: string
      // The machine-friendly value of the data type
      value: string
      // The documentation link
      documentation: string
      // The human-friendly name of the data type
      display_name: string
      // The minimum size
      size_min?: integer
      // The maximum size
      size_max?: integer
      // The default size
      size_default?: integer
      // If true, the size parameter cannot be empty
      size_required?: boolean
      // The step increment
      size_step?: integer
      // The minimum d
      d_min?: integer
      // The maximum d
      d_max?: integer
      // The default d
      d_default?: integer
      // If true, the d parameter cannot be empty
      d_required?: boolean
      // The d increment
      d_step?: integer
      // The user-friendly description of the data format
      data_hint?: string
      // The user-friendly description of the data type
      type_hint?: string
      // frontend needs to quote this data type
      is_quoted: boolean
      // frontend can build this data type
      is_buildable: boolean
    }[]
  }
  // The number of databases the container is capable to hold simultaneously, if null the container has no limit
  quota: integer
  // The number of databases currently in the container
  count: integer
  // The username of the privileged user
  username?: string
  // The password of the privileged user
  password?: string
  last_retrieved?: string
  // The machine-friendly container name
  internal_name: string
}
#/components/schemas/ColumnBriefDto¶
{
  // The column id
  id: string
  // The column name
  name: string
  // The data source alias name
  alias?: string
  // The database id
  database_id: string
  // The table id
  table_id: string
  // The machine-friendly internal name
  internal_name: string
  // The column type name
  type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
}
#/components/schemas/UnitDto¶
{
  // The unit id
  id: string
  // The unit URI
  uri: string
  // The unit name, taken as label from the ontology
  name?: string
  // The unit description giving a user-friendly explanation
  description?: string
  columns: {
    // The column id
    id: string
    // The column name
    name: string
    // The data source alias name
    alias?: string
    // The database id
    database_id: string
    // The table id
    table_id: string
    // The machine-friendly internal name
    internal_name: string
    // The column type name
    type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
  }[]
}
#/components/schemas/OntologyBriefDto¶
{
  id: string
  uri: string
  prefix: string
  sparql: boolean
  rdf: boolean
  uri_pattern?: string
}
#/components/schemas/EntityDto¶
{
  uri: string
  label: string
  description?: string
}
#/components/schemas/OaiListRecordsParameters¶
{
  metadataPrefix?: string
  from?: string
  until?: string
  set?: string
  resumptionToken?: string
  parametersString?: string
  fromDate?: string
  untilDate?: string
}
#/components/schemas/BannerMessageDto¶
{
  id: string
  type: enum[error, warning, info]
  message: string
  link?: string
  link_text?: string
  display_start?: string
  display_end?: string
}
#/components/schemas/ImageBriefDto¶
{
  // The image id
  id: string
  // The image name
  name: string
  // The image tag
  version: string
  // Marks the image as default
  default: boolean
}
#/components/schemas/LdCreatorDto¶
{
  // The name
  name: string
  // The unambiguous reference to a person's identifier
  sameAs?: string
  // The firstname
  givenName?: string
  // The lastname
  familyName?: string
  // The type
  @type: string
}
#/components/schemas/LdDatasetDto¶
{
  // The name
  name: string
  // The description
  description: string
  // The URL
  url: string
  identifier?: string[]
  license?: string
  creator: {
    // The name
    name: string
    // The unambiguous reference to a person's identifier
    sameAs?: string
    // The firstname
    givenName?: string
    // The lastname
    familyName?: string
    // The type
    @type: string
  }[]
  // The ciration URL
  citation: string
  hasPart: {
    // The name
    name: string
    // The description
    description: string
    // The URL
    url: string
    identifier?: string[]
    license?: string
    creator:#/components/schemas/LdCreatorDto[]
    // The ciration URL
    citation: string
    hasPart:#/components/schemas/LdDatasetDto[]
    // The temporal coverage
    temporalCoverage: string
    // The version
    version: string
    // The context schema URI
    @context: string
    // The type
    @type: string
  }[]
  // The temporal coverage
  temporalCoverage: string
  // The version
  version: string
  // The context schema URI
  @context: string
  // The type
  @type: string
}
#/components/schemas/ConstraintsDto¶
{
  uniques: {
    // The unique key id
    id: string
    // The unique key name
    name: string
    table: {
      // The id
      id: string
      // The user-friendly table name
      name: string
      // The comment
      description?: string
      // The database id
      database_id: string
      // The machine-friendly table name
      internal_name: string
      // If true, The is using data versioning
      is_versioned: boolean
      // The visibility; if true, The will be displayed publicly and is searchable
      is_public: boolean
      // The insights; if true, The schema will be displayed publicly and is searchable
      is_schema_public: boolean
      // The owner id
      owned_by: string
    }
    columns: {
      // The column id
      id: string
      // The column name
      name: string
      // The data source alias name
      alias?: string
      // The database id
      database_id: string
      // The table id
      table_id: string
      // The machine-friendly internal name
      internal_name: string
      // The column type name
      type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
    }[]
  }[]
  checks?: string[]
  foreign_keys: {
    // The foreign key id
    id?: string
    // The foreign key name
    name: string
    references: {
      // The foreign key reference id
      id?: string
      column:#/components/schemas/ColumnBriefDto
      foreign_key: {
        // The foreign key id
        id?: string
      }
      referenced_column:#/components/schemas/ColumnBriefDto
    }[]
    table:#/components/schemas/TableBriefDto
    referenced_table:#/components/schemas/TableBriefDto
    // The integrity action when updating tuples
    on_update?: enum[restrict, cascade, set_null, no_action, set_default]
    // The integrity action when deleting tuples
    on_delete?: enum[restrict, cascade, set_null, no_action, set_default]
  }[]
  primary_key: {
    // The primary key id
    id?: string
    table:#/components/schemas/TableBriefDto
    column:#/components/schemas/ColumnBriefDto
  }[]
}
#/components/schemas/ForeignKeyBriefDto¶
{
  // The foreign key id
  id?: string
}
#/components/schemas/ForeignKeyDto¶
{
  // The foreign key id
  id?: string
  // The foreign key name
  name: string
  references: {
    // The foreign key reference id
    id?: string
    column: {
      // The column id
      id: string
      // The column name
      name: string
      // The data source alias name
      alias?: string
      // The database id
      database_id: string
      // The table id
      table_id: string
      // The machine-friendly internal name
      internal_name: string
      // The column type name
      type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
    }
    foreign_key: {
      // The foreign key id
      id?: string
    }
    referenced_column:#/components/schemas/ColumnBriefDto
  }[]
  table: {
    // The id
    id: string
    // The user-friendly table name
    name: string
    // The comment
    description?: string
    // The database id
    database_id: string
    // The machine-friendly table name
    internal_name: string
    // If true, The is using data versioning
    is_versioned: boolean
    // The visibility; if true, The will be displayed publicly and is searchable
    is_public: boolean
    // The insights; if true, The schema will be displayed publicly and is searchable
    is_schema_public: boolean
    // The owner id
    owned_by: string
  }
  referenced_table:#/components/schemas/TableBriefDto
  // The integrity action when updating tuples
  on_update?: enum[restrict, cascade, set_null, no_action, set_default]
  // The integrity action when deleting tuples
  on_delete?: enum[restrict, cascade, set_null, no_action, set_default]
}
#/components/schemas/ForeignKeyReferenceDto¶
{
  // The foreign key reference id
  id?: string
  column: {
    // The column id
    id: string
    // The column name
    name: string
    // The data source alias name
    alias?: string
    // The database id
    database_id: string
    // The table id
    table_id: string
    // The machine-friendly internal name
    internal_name: string
    // The column type name
    type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
  }
  foreign_key: {
    // The foreign key id
    id?: string
  }
  referenced_column:#/components/schemas/ColumnBriefDto
}
#/components/schemas/PrimaryKeyDto¶
{
  // The primary key id
  id?: string
  table: {
    // The id
    id: string
    // The user-friendly table name
    name: string
    // The comment
    description?: string
    // The database id
    database_id: string
    // The machine-friendly table name
    internal_name: string
    // If true, The is using data versioning
    is_versioned: boolean
    // The visibility; if true, The will be displayed publicly and is searchable
    is_public: boolean
    // The insights; if true, The schema will be displayed publicly and is searchable
    is_schema_public: boolean
    // The owner id
    owned_by: string
  }
  column: {
    // The column id
    id: string
    // The column name
    name: string
    // The data source alias name
    alias?: string
    // The database id
    database_id: string
    // The table id
    table_id: string
    // The machine-friendly internal name
    internal_name: string
    // The column type name
    type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
  }
}
#/components/schemas/TableDto¶
{
  // The id
  id: string
  // The user-friendly name
  name: string
  // The comment
  description?: string
  // The alias
  alias?: string
  identifiers: {
    id: string
    links: {
      self: string
      data?: string
      self_html: string
      dashboard_html?: string
    }
    type: enum[database, subset, table, view]
    titles: {
      id: string
      title?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[AlternativeTitle, Subtitle, TranslatedTitle, Other]
    }[]
    descriptions: {
      id: string
      description?: string
      language?: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
      type?: enum[Abstract, Methods, SeriesInformation, TableOfContents, TechnicalInfo, Other]
    }[]
    funders: {
      id: string
      funder_name: string
      funder_identifier?: string
      funder_identifier_type?: enum[Crossref Funder ID, ROR, GND, ISNI, Other]
      scheme_uri?: string
      award_number?: string
      award_title?: string
    }[]
    query: string
    execution?: string
    doi?: string
    publisher: string
    owner: {
      id: string
      // Only contains lowercase characters
      username: string
      name?: string
      orcid?: string
      qualified_name?: string
      given_name?: string
      family_name?: string
    }
    language: enum[ab, aa, af, ak, sq, am, ar, an, hy, as, av, ae, ay, az, bm, ba, eu, be, bn, bh, bi, bs, br, bg, my, ca, km, ch, ce, ny, zh, cu, cv, kw, co, cr, hr, cs, da, dv, nl, dz, en, eo, et, ee, fo, fj, fi, fr, ff, gd, gl, lg, ka, de, ki, el, kl, gn, gu, ht, ha, he, hz, hi, ho, hu, is, io, ig, id, ia, ie, iu, ik, ga, it, ja, jv, kn, kr, ks, kk, rw, kv, kg, ko, kj, ku, ky, lo, la, lv, lb, li, ln, lt, lu, mk, mg, ms, ml, mt, gv, mi, mr, mh, ro, mn, na, nv, nd, ng, ne, se, no, nb, nn, ii, oc, oj, or, om, os, pi, pa, ps, fa, pl, pt, qu, rm, rn, ru, sm, sg, sa, sc, sr, sn, sd, si, sk, sl, so, st, nr, es, su, sw, ss, sv, tl, ty, tg, ta, tt, te, th, bo, ti, to, ts, tn, tr, tk, tw, ug, uk, ur, uz, ve, vi, vo, wa, cy, fy, wo, xh, yi, yo, za, zu]
    licenses: {
      // The id
      identifier: string
      // The link to the license such as an SPDX identifier
      uri: string
      // A user-friendly short abstract of key details of the license
      description?: string
    }[]
    creators: {
      id: string
      firstname?: string
      lastname?: string
      affiliation?: string
      creator_name: string
      name_type?: enum[Personal, Organizational]
      name_identifier?: string
      name_identifier_scheme?: enum[ORCID, ROR, ISNI, GRID]
      name_identifier_scheme_uri?: string
      affiliation_identifier?: string
      affiliation_identifier_scheme?: enum[ROR, GRID, ISNI]
      affiliation_identifier_scheme_uri?: string
    }[]
    status: enum[draft, published]
    created?: string
    database_id: string
    query_id?: string
    table_id?: string
    view_id?: string
    query_normalized: string
    related_identifiers: {
      id: string
      value: string
      type: enum[DOI, URL, URN, ARK, arXiv, bibcode, EAN13, EISSN, Handle, IGSN, ISBN, ISTC, LISSN, LSID, PMID, PURL, UPC, w3id]
      relation: enum[IsCitedBy, Cites, IsSupplementTo, IsSupplementedBy, IsContinuedBy, Continues, IsDescribedBy, Describes, HasMetadata, IsMetadataFor, HasVersion, IsVersionOf, IsNewVersionOf, IsPreviousVersionOf, IsPartOf, HasPart, IsPublishedIn, IsReferencedBy, References, IsDocumentedBy, Documents, IsCompiledBy, Compiles, IsVariantFormOf, IsOriginalFormOf, IsIdenticalTo, IsReviewedBy, Reviews, IsDerivedFrom, IsSourceOf, IsRequiredBy, Requires, IsObsoletedBy, Obsoletes]
    }[]
    // query hash in sha512
    query_hash: string
    result_hash?: string
    result_number?: integer
    publication_day?: integer
    publication_month?: integer
    publication_year: integer
  }[]
  owner:#/components/schemas/UserBriefDto
  columns: {
    // The id
    id: string
    // The user-friendly column name
    name: string
    // The data source alias name
    alias?: string
    // The column size, determines the number of digits before the comma as x=size-d where size >= d
    size?: integer
    // The column d
    d?: integer
    // The statistically average numerical value
    mean?: number
    // The statistically most middle numerical value
    median?: number
    concept: {
      // The concept id
      id: string
      // The concept URI
      uri: string
      // The concept name, taken as label from the ontology
      name?: string
      // The concept description giving a user-friendly explanation
      description?: string
    }
    unit: {
      // The unit id
      id: string
      // The unit URI
      uri: string
      // The unit name, taken as label from the ontology
      name?: string
      // The unit description giving a user-friendly explanation
      description?: string
    }
    description?: string
    enums: {
      // The enum id
      id: string
      // The enum value
      value: string
    }[]
    sets: {
      // The set id
      id: string
      // The set value
      value: string
    }[]
    // The database id
    database_id: string
    // The table id
    table_id: string
    // The ordinal position of the colum to order it
    ord: integer
    // The machine-friendly column name
    internal_name: string
    // The length of the index
    index_length?: integer
    // The length of the total data in the table (index + data)
    length?: integer
    // The column type name
    type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
    // The data length
    data_length?: integer
    // The maximum data length
    max_data_length?: integer
    // The number of rows
    num_rows?: integer
    // The statistically highest numerical value
    val_min?: number
    // The statistically lowest numerical value
    val_max?: number
    // The statistically determined standard deviation
    std_dev?: number
    is_null_allowed: boolean
  }[]
  constraints: {
    uniques: {
      // The unique key id
      id: string
      // The unique key name
      name: string
      table: {
        // The id
        id: string
        // The user-friendly table name
        name: string
        // The comment
        description?: string
        // The database id
        database_id: string
        // The machine-friendly table name
        internal_name: string
        // If true, The is using data versioning
        is_versioned: boolean
        // The visibility; if true, The will be displayed publicly and is searchable
        is_public: boolean
        // The insights; if true, The schema will be displayed publicly and is searchable
        is_schema_public: boolean
        // The owner id
        owned_by: string
      }
      columns: {
        // The column id
        id: string
        // The column name
        name: string
        // The data source alias name
        alias?: string
        // The database id
        database_id: string
        // The table id
        table_id: string
        // The machine-friendly internal name
        internal_name: string
        // The column type name
        type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
      }[]
    }[]
    checks?: string[]
    foreign_keys: {
      // The foreign key id
      id?: string
      // The foreign key name
      name: string
      references: {
        // The foreign key reference id
        id?: string
        column:#/components/schemas/ColumnBriefDto
        foreign_key: {
          // The foreign key id
          id?: string
        }
        referenced_column:#/components/schemas/ColumnBriefDto
      }[]
      table:#/components/schemas/TableBriefDto
      referenced_table:#/components/schemas/TableBriefDto
      // The integrity action when updating tuples
      on_update?: enum[restrict, cascade, set_null, no_action, set_default]
      // The integrity action when deleting tuples
      on_delete?: enum[restrict, cascade, set_null, no_action, set_default]
    }[]
    primary_key: {
      // The primary key id
      id?: string
      table:#/components/schemas/TableBriefDto
      column:#/components/schemas/ColumnBriefDto
    }[]
  }
  // The created timestamp
  created: string
  // The timestamp The was last retrieved from the cache
  last_retrieved?: string
  // The database id
  database_id: string
  // The machine-friendly name
  internal_name: string
  // If true, The is using data versioning
  is_versioned: boolean
  // The queue name
  queue_name: string
  // The queue type
  queue_type?: string
  // The routing key
  routing_key: string
  // The visibility; if true, The will be displayed publicly and is searchable
  is_public: boolean
  // The insights; if true, The schema will be displayed publicly and is searchable
  is_schema_public: boolean
  // The statistical number of rows
  num_rows?: integer
  // The data length in bytes
  data_length?: integer
  // The maximum data length in bytes
  max_data_length?: integer
  // The average row length in bytes
  avg_row_length?: integer
}
#/components/schemas/UniqueDto¶
{
  // The unique key id
  id: string
  // The unique key name
  name: string
  table: {
    // The id
    id: string
    // The user-friendly table name
    name: string
    // The comment
    description?: string
    // The database id
    database_id: string
    // The machine-friendly table name
    internal_name: string
    // If true, The is using data versioning
    is_versioned: boolean
    // The visibility; if true, The will be displayed publicly and is searchable
    is_public: boolean
    // The insights; if true, The schema will be displayed publicly and is searchable
    is_schema_public: boolean
    // The owner id
    owned_by: string
  }
  columns: {
    // The column id
    id: string
    // The column name
    name: string
    // The data source alias name
    alias?: string
    // The database id
    database_id: string
    // The table id
    table_id: string
    // The machine-friendly internal name
    internal_name: string
    // The column type name
    type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
  }[]
}
#/components/schemas/TableColumnEntityDto¶
{
  uri: string
  label?: string
  description?: string
  database_id: string
  table_id: string
  column_id: string
}
#/components/schemas/ContainerBriefDto¶
{
  // The container id
  id: string
  // The container hash
  hash: string
  // The user-friendly container name
  name: string
  image: {
    // The image id
    id: string
    // The image name
    name: string
    // The image tag
    version: string
    // Marks the image as default
    default: boolean
  }
  // The number of databases the container is capable to hold simultaneously, if null the container has no limit
  quota: integer
  // The number of databases currently in the container
  count: integer
  // The machine-friendly container name
  internal_name: string
}
#/components/schemas/ConceptDto¶
{
  // The concept id
  id: string
  // The concept URI
  uri: string
  // The concept name, taken as label from the ontology
  name?: string
  // The concept description giving a user-friendly explanation
  description?: string
  columns: {
    // The column id
    id: string
    // The column name
    name: string
    // The data source alias name
    alias?: string
    // The database id
    database_id: string
    // The table id
    table_id: string
    // The machine-friendly internal name
    internal_name: string
    // The column type name
    type: enum[char, varchar, binary, varbinary, tinyblob, tinytext, text, blob, mediumtext, mediumblob, longtext, longblob, enum, set, serial, bit, tinyint, bool, smallint, mediumint, int, bigint, float, double, decimal, date, datetime, timestamp, time, year]
  }[]
}
#/components/schemas/ApiError¶
{
  code?: string
  message?: string
  status?: string
}
#/components/schemas/IndexDto¶
{
  "properties": {
    "results": {
      "items": {
        "type": "object"
      },
      "type": "array"
    },
    "type": {
      "description": "Same as the requested type",
      "enum": [
        "database",
        "table",
        "view",
        "column",
        "user",
        "identifier",
        "concept",
        "unit"
      ],
      "type": "string"
    }
  },
  "required": [
    "results",
    "type"
  ]
}
#/components/schemas/IndexFieldDto¶
{
  attr_friendly_name: string
  attr_name: string
  // OpenSearch data types.
  type: string
}
#/components/schemas/IndexFieldsDto¶
{
  results: {
    attr_friendly_name: string
    attr_name: string
    // OpenSearch data types.
    type: string
  }[]
}
#/components/schemas/SearchRequestDto¶
{
  field_value_pairs: {
  }
  search_term: string
}