The user that owns a project, served from /new_api/projects/{projectId}/owner.

1. Get owner

Returns the user that currently owns the project.

1.1. HTTP request

GET /minerva/new_api/projects/empty/owner HTTP/1.1

1.2. Path Parameters

Table 1. /minerva/new_api/projects/{projectId}/owner
Parameter Description

projectId

project identifier

1.3. CURL sample

$ curl 'https://minerva-dev.lcsb.uni.lu/minerva/new_api/projects/empty/owner' -X GET

1.4. HTTP response

HTTP/1.1 200 OK

1.5. Response Fields

Path Type Description

id

Number

identifier

login

String

user login

orcidId

String

orcid identifier

name

String

first name

surname

String

last name

email

String

email address

removed

Boolean

is user removed

active

Boolean

is the account active

confirmed

Boolean

is the account email confirmed

connectedToLdap

Boolean

is user connected to ldap

ldapAccountAvailable

Boolean

is the ldap account available

termsOfUseConsent

Boolean

did user accept terms of consent

lastActive

String

last activity timestamp

privileges

Array

list of privileges

privileges[].privilegeType

String

privilege name

privileges[].objectId

String

associated object

lastLoginDate

String

timestamp of the last login

1.6. Sample Response

{
  "id" : 1,
  "login" : "admin",
  "name" : "",
  "surname" : "",
  "email" : "",
  "orcidId" : null,
  "removed" : false,
  "connectedToLdap" : false,
  "termsOfUseConsent" : false,
  "privileges" : [ {
    "privilegeType" : "READ_PROJECT",
    "objectId" : "empty"
  }, {
    "privilegeType" : "IS_ADMIN",
    "objectId" : null
  }, {
    "privilegeType" : "IS_CURATOR",
    "objectId" : null
  } ],
  "active" : true,
  "confirmed" : true,
  "lastLoginDate" : "2026-09-23T23:12:29Z",
  "ldapAccountAvailable" : false,
  "lastActive" : "2026-09-23T23:12:29Z"
}

2. Update owner

Changes the owner of the project to an existing user (identified by id).

Note
Supports optimistic locking via the If-Match header.

2.1. HTTP request

PUT /minerva/new_api/projects/test_project/owner HTTP/1.1

2.2. Path Parameters

Table 2. /minerva/new_api/projects/{projectId}/owner
Parameter Description

projectId

project identifier

2.3. Request Fields

Path Type Description

id

Number

identifier of an existing user that should become the project owner

2.4. CURL sample

$ curl 'https://minerva-dev.lcsb.uni.lu/minerva/new_api/projects/test_project/owner' -X PUT \
    -H 'Authorization: Bearer xxxxxxxx' \
    -d '{"id":3}' \
    -H 'Content-Type: application/json'

2.5. HTTP response

HTTP/1.1 200 OK

2.6. Response Fields

Path Type Description

id

Number

identifier

login

String

user login

orcidId

String

orcid identifier

name

String

first name

surname

String

last name

email

String

email address

removed

Boolean

is user removed

active

Boolean

is the account active

confirmed

Boolean

is the account email confirmed

connectedToLdap

Boolean

is user connected to ldap

ldapAccountAvailable

Boolean

is the ldap account available

termsOfUseConsent

Boolean

did user accept terms of consent

lastActive

String

last activity timestamp

privileges

Array

list of privileges

privileges[].privilegeType

String

privilege name

privileges[].objectId

String

associated object

lastLoginDate

String

timestamp of the last login

2.7. Sample Response

{
  "id" : 3,
  "login" : "anonymous",
  "name" : "",
  "surname" : "",
  "email" : null,
  "orcidId" : null,
  "removed" : false,
  "connectedToLdap" : false,
  "termsOfUseConsent" : false,
  "privileges" : [ {
    "privilegeType" : "READ_PROJECT",
    "objectId" : "empty"
  } ],
  "active" : true,
  "confirmed" : true,
  "lastLoginDate" : null,
  "ldapAccountAvailable" : false,
  "lastActive" : null
}