Create a service account.
POST /api/admin/service-account
Creates a new service account.
Request
- application/json
Body
required
#/components/schemas/createServiceAccountSchema
- username stringThe username of the service account 
- name stringThe name of the service account 
- rootRole integer requiredThe id of the root role for the service account 
- 201
- 400
- 401
- 403
- 409
- 415
The resource was successfully created.
Response Headers
- location string- The location of the newly created resource. 
- application/json
- Schema
- Example (from schema)
Schema
- id number requiredThe service account id 
- isAPI boolean deprecatedDeprecated: for internal use only, should not be exposed through the API 
- name stringThe name of the service account 
- email string deprecatedDeprecated: service accounts don't have emails associated with them 
- username stringThe service account username 
- imageUrl stringThe service account image url 
- inviteLink string deprecatedDeprecated: service accounts cannot be invited via an invitation link 
- loginAttempts number deprecatedDeprecated: service accounts cannot log in to Unleash 
- emailSent boolean deprecatedDeprecated: internal use only 
- rootRole integerThe root role id associated with the service account 
- seenAt date-time nullable deprecatedDeprecated. This property is always null. To find out when a service account was last seen, check itstokenslist and refer to each token'slastSeenproperty instead.
- createdAt date-timeThe service account creation date 
- tokens object[]- The list of tokens associated with the service account Array [id integer required- Possible values: - >= 1- The PAT's ID. PAT IDs are incrementing integers. In other words, a more recently created PAT will always have a higher ID than an older one. secret string- The token used for authentication. It is automatically generated by Unleash when the PAT is created and that is the only time this property is returned. createdAt date-time required- The date and time of when the PAT was created. seenAt date-time nullable- When the PAT was last seen/used to authenticate with. - nullif it has not been used yet.userId integer- The ID of the user this PAT belongs to. description string required- The PAT's description. expiresAt date-time required- The PAT's expiration date. ]
{
  "id": 54321,
  "name": "My Service Account",
  "username": "my-service-account",
  "imageUrl": "https://example.com/my-service-account.png",
  "rootRole": 1,
  "createdAt": "2021-01-01T00:00:00.000Z",
  "tokens": [
    {
      "id": 1,
      "secret": "user:xyzrandomstring",
      "createdAt": "2023-04-19T08:15:14.000Z",
      "seenAt": "2023-04-19T08:15:14.000Z",
      "userId": 1337,
      "description": "user:xyzrandomstring",
      "expiresAt": "2023-04-19T08:15:14.000Z"
    }
  ]
}
The request data does not match what we expect.
- application/json
- Schema
- Example (from schema)
Schema
- id stringThe ID of the error instance 
- name stringThe name of the error kind 
- message stringA description of what went wrong. 
{
  "id": "9c40958a-daac-400e-98fb-3bb438567008",
  "name": "ValidationError",
  "message": "The request payload you provided doesn't conform to the schema. The .parameters property should be object. You sent []."
}
Authorization information is missing or invalid. Provide a valid API token as the authorization header, e.g. authorization:*.*.my-admin-token.
- application/json
- Schema
- Example (from schema)
Schema
- id stringThe ID of the error instance 
- name stringThe name of the error kind 
- message stringA description of what went wrong. 
{
  "id": "9c40958a-daac-400e-98fb-3bb438567008",
  "name": "AuthenticationRequired",
  "message": "You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login."
}
The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation
- application/json
- Schema
- Example (from schema)
Schema
- id stringThe ID of the error instance 
- name stringThe name of the error kind 
- message stringA description of what went wrong. 
{
  "id": "9c40958a-daac-400e-98fb-3bb438567008",
  "name": "NoAccessError",
  "message": "You need the \"UPDATE_ADDON\" permission to perform this action in the \"development\" environment."
}
The provided resource can not be created or updated because it would conflict with the current state of the resource or with an already existing resource, respectively.
- application/json
- Schema
- Example (from schema)
Schema
- id stringThe ID of the error instance 
- name stringThe name of the error kind 
- message stringA description of what went wrong. 
{
  "id": "9c40958a-daac-400e-98fb-3bb438567008",
  "name": "NameExistsError",
  "message": "There is already a feature called \"my-awesome-feature\"."
}
The operation does not support request payloads of the provided type. Please ensure that you're using one of the listed payload types and that you have specified the right content type in the "content-type" header.
- application/json
- Schema
- Example (from schema)
Schema
- id stringThe ID of the error instance 
- name stringThe name of the error kind 
- message stringA description of what went wrong. 
{
  "id": "9c40958a-daac-400e-98fb-3bb438567008",
  "name": "ContentTypeerror",
  "message": "We do not accept the content-type you provided (application/xml). Try using one of the content-types we do accept instead (application/json) and make sure the body is in the corresponding format."
}