This is documentation of a bèta release.
For documentation on the current version, please check Knowledge Base.

3DM Publisher Admin API - User Management

Model: User

A User models a well-known user of the server.

Properties:

Property Required Type Description
id * number Unique identifier.
username * number Unique name of the user.
email number E-mail address of the user.
first_name number First name of the user.
last_name number Last name of the user.
description number Description of the user.
passwordForceChange boolean User is required to set a new password on first login?
passwordLastModified number Unix timestamp that was updated on the last password update of the user.

Model: Usergroup

A Usergroup is a list of users.

Properties:

Property Required Type Description
id * number Unique identifier.
name * number Name of the group.
type team (default) Type of the group.
user User[] The list of users that are in this group.
Defines a user reference only (an object with only the id field set)

Operation: List Users

Discussion

This operation retrieves all users.

Request

GET /api/3/user

Response (http 200)

[
    {
        "id": 28,
        "username": "test",
        "email": "test@company.com",
        "first_name": "Test",
        "last_name": "User",
        "password": "test123",
        "description": "Test user"
        "language": "english",
        "preferences": "{}",
        "description": "Supportl",
        "passwordLastModified": 1651217754682
    },
    ...
]

Operation: Create User

Discussion

This operation creates a new user account.
The password can be provided in plain text using the password field.

Fields: Model: User

Request

POST /api/3/user

{
    "username": "test",
    "email": "test@company.com",
    "first_name": "Test",
    "last_name": "User",
    "password": "test123",
    "passwordForceChange": true,
    "description": "Test user"
}

Response (http 200)

{
    "id": 28,
    "email": "test@company.com",
    "username": "test",
    "first_name": "Test",
    "last_name": "User",
    "language": "english",
    "preferences": "{}",
    "password": "ecd71870d1963316a97e3ac3408c9835ad8cf0f3c1bc703527c30265534f75ae",
    "description": "Test user",
    "passwordForceChange": true,
    "passwordLastModified": 1753874442231
}

Response (http 400)

{
    "code": "field_not_unique",
    "message": "Uniqueness check failed: Another item with this name value 'test' already exists.",
}

Operation: Update User

Discussion

The following fields can be updated:

  • username
  • email
  • first_name
  • last_name
  • description
  • password
  • passwordForceChange

Fields: see Model: User

Request

POST /api/3/user/123

{
    "first_name": "John"
}

Response (http 204)

No content

Operation: Delete User

Discussion

This operation deletes an existing user account.

  • Usergroup memberships of the user are removed.
  • Publication permissions for the user are removed.
  • Publication user bookmarks for the user are removed.

Request

DELETE /api/3/user/123

Response (http 204)

No content

Response (http 404)

{
    "code": "not_found",
    "message": "Delete failed: An item with this id does not exist."
}

Operation: List Usergroups

Discussion

This operation retrieves all usergroups.

  • Users in each group are also returned, but only with the id field filled in.

Request

GET /api/3/usergroup

Response (http 200)

[
    {
        "id": 4,
        "name": "TestGroup",
        "description": "description",
        "type": "team",
        "user": [
            {
                "id": 20
            }
        ]
    },
    ...
]

Operation: Create Usergroup

Discussion

This operation creates a new usergroup.

Fields: Model: User Group Fields: Model: User

Request

POST /api/3/usergroup

{
    "name": "TestGroup",
    "description": "description",
    "type": "team",
    "user": [
        {
            "id": 20
        }
    ]
}

Response (http 200)

{
    "id": 4,
    "name": "TestGroup",
    "description": "description",
    "type": "team",
    "user": [
        {
            "id": 20
        }
    ]
}

Response (http 400)

{
    "code": "field_not_unique",
    "message": "Uniqueness check failed: Another item with this name value 'TestGroup' already exists.",
}

Operation: Update Usergroup

Discussion

The following fields can be updated:

  • name
  • description
  • user

Fields: Model: Usergroup
Fields: Model: User

Request

POST /api/3/usergroup/123

{
    "name": "Users2",
    "user": [
        {
            "id": 22
        }
    ]
}

Response (http 204)

No content

Operation: Delete Usergroup

Discussion

This operation deletes an existing usergroup.

  • Only the usergroup is deleted, not the users in it.
  • Publication permissions for the usergroup are removed.

Request

DELETE /api/3/usergroup/123

Response (http 204)

No content

Response (http 404)

{
    "code": "not_found",
    "message": "Delete failed: An item with this id does not exist."
}
 
Last modified:: 2025/08/01 07:31