Actioning Users

Overview

This page contains the APIs that are used for actioning users.

Refer to the User Actions guide for an overview of how to use User Actions.

Once you have created the User Actions, either via the administrative user interface or the User Actions API, you use this API to invoke a User Action on a User.

Take an Action on a User

This API is used to take a User Action on a User. User Actions are the method that FusionAuth uses to discipline, reward and interact with Users.

Request

API Key Authentication
Take an action on a User
POST /api/user/action

Request Headers

X-FusionAuth-TenantIdString

The unique Id of the tenant used to scope this API request.

The tenant Id is not required on this request even when more than one tenant has been configured because the tenant can be identified based upon the request parameters or it is otherwise not required.

Specify a tenant Id on this request when you want to ensure the request is scoped to a specific tenant. The tenant Id may be provided through this header or by using a tenant locked API key to achieve the same result.

See Making an API request using a Tenant Id for additional information.

Request Body

action.actioneeUserIdUUIDrequired

The Id of the User that is being actioned.

action.actionerUserIdUUIDrequired

The Id of the User that is taking the action on the User.

action.applicationIdsArray<UUID>

The list of Application ids that the action is being performed in.

action.commentString

The comment left by the actioner.

action.emailUserBooleanDefaults to false

Whether FusionAuth should send an email to the User.

action.expiryLong

The expiration instant of this User Action. This value is required for time-based User Actions.

To cause the action to be applied indefinitely, or until the action is canceled or modified, set this value to 9223372036854775807.

action.notifyUserBooleanDefaults to false

The notifyUser flag that is passed along in any events FusionAuth sends to registered Webhooks.

action.optionString

The User Action Option that the actioner selected.

action.reasonIdUUID

The Id of the User Action Reason that the actioner selected.

action.userActionIdUUIDrequired

The Id of the User Action that the actioner is performing on the User.

broadcastBooleanDefaults to false

Whether or not FusionAuth will broadcast the User Action to any registered Webhooks.

Example Request JSON

{
  "broadcast": true,
  "action": {
    "actioneeUserId": "00000000-0000-0000-0000-000000000001",
    "actionerUserId": "00000000-0000-0000-0000-000000000002",
    "comment": "This user is being a jerk",
    "emailUser": true,
    "expiry": 1471586483322,
    "notifyUser": true,
    "reasonId": "00000000-0000-0000-0000-000000000020",
    "userActionId": "00000000-0000-0000-0000-000000000011"
  }
}

Response

The response for this API contains the User Action along with any event and email information that was generated by FusionAuth.

Response Codes
Code Description
200 The request was successful. The response will contain a JSON body.
400 The request was invalid and/or malformed. The response will contain an Errors JSON Object with the specific errors. This status will also be returned if a paid FusionAuth license is required and is not present.
401 You did not supply a valid Authorization header. The header was omitted or your API key was not valid. The response will be empty. See Authentication.
500 There was an internal error. A stack trace is provided and logged in the FusionAuth log files. The response will be empty.
503 The search index is not available or encountered an exception so the request cannot be completed. The response will contain a JSON body.
504 One or more Webhook endpoints returned an invalid response or were unreachable. Based on the transaction configuration for this event your action cannot be completed. A stack trace is provided and logged in the FusionAuth log files.

Response Body

action.actioneeUserIdUUID

The Id of the User that was actioned.

action.actionerUserIdUUID

The Id of the User that took the action on the User. If the action was initiated by FusionAuth this value will not be provided.

action.applicationIdsArray<UUID>

This parameter if provided specifies the scope of the User Action. When an Action is scoped to one or more Applications the Application Ids will be provided in this parameter.

action.commentString

An optional comment provided when the Action was created, updated or canceled. This value will always be the last comment set on the action, see history for previous values.

action.emailUserOnEndBoolean

Whether FusionAuth will email the User when a time-based User Actions expires.

action.endEventSentBoolean

Whether FusionAuth will send events when a time-based User Actions expires.

action.expiryLong

The expiration instant of the User Action.

action.idUUID

The Id of the User Action record.

action.insertInstantLong

The instant that the User Action was taken.

action.localizedOptionString

The localized version of the User Action Option that was selected by the actioner.

action.localizedReasonString

The localized version of the User Action Reason that was selected by the actioner.

action.notifyUserOnEndString

Whether or not FusionAuth will send events to registered Webhooks when a time-based User Action expires.

action.optionString

The non-localized version of the User Action Option that was selected by the actioner.

action.reasonString

The non-localized version of the User Action Reason that was selected by the actioner.

action.reasonCodeString

The User Action Reason code that was selected by the actioner.

action.userActionIdUUID

The unique Id of the User Action. This Id can be used to retrieve the User Action using the Retrieve a User Action API.

Example Response JSON for a Single User Action

{
  "action": {
    "actioneeUserId": "00000000-0000-0000-0000-000000000001",
    "actionerUserId": "00000000-0000-0000-0000-000000000002",
    "applicationIds": [
      "00000000-0000-0000-0000-000000000042",
      "00000000-0000-0000-0000-000000000043"
    ],
    "comment": "This user is being a jerk",
    "createInstant": 1471786483322,
    "emailUserOnEnd": false,
    "endEventSent": false,
    "expiry": 1471586483322,
    "id": "00000000-0000-0000-0000-013500000002",
    "insertInstant": 1595361142909,
    "lastUpdateInstant": 1595361143101,
    "localizedOption": "Lock account full",
    "localizedReason": "Community rules infraction",
    "event": {
      "action": "Lock account full",
      "actionId": "00000000-0000-0000-0000-000000000010",
      "actioneeUserId": "00000000-0000-0000-0000-000000000001",
      "actionerUserId": "00000000-0000-0000-0000-000000000002",
      "comment": "This user is being a jerk",
      "createInstant": 1471786483322,
      "email": {
        "from": {
          "address": "support@fusionauth.io",
          "display": "FusionAuth Support"
        },
        "html": "...",
        "subject": "You account has been locked",
        "text": "...",
        "to": {
          "address": "foo@bar.com",
          "display": "Foo Jones"
        }
      },
      "expiry": 1471586483322,
      "localizedAction": "Lock account",
      "localizedOption": "Lock account full",
      "localizedReason": "Community rules infraction",
      "notifyUser": false,
      "option": "Lock account full",
      "emailedUser": false,
      "phase": "modify",
      "reason": "Community rules infraction",
      "reasonCode": "FRAC"
    },
    "notifyUserOnEnd": true,
    "option": "Lock account full",
    "reason": "Community rules infraction",
    "reasonCode": "FRAC",
    "userActionId": "00000000-0000-0000-0000-000000000010"
  }
}

Retrieve a Previously Taken Action

This API is used to retrieve a User Action that was previously taken on a User, this can be thought of as the log or historical record.

Request

API Key Authentication
Retrieve a specific User Action Log by Id.
GET /api/user/action/{actionId}

Request Parameters

actionIdUUIDrequired

The unique Id of the Action to retrieve.

Request Headers

X-FusionAuth-TenantIdString

The unique Id of the tenant used to scope this API request.

The tenant Id is not required on this request even when more than one tenant has been configured because the tenant can be identified based upon the request parameters or it is otherwise not required.

Specify a tenant Id on this request when you want to ensure the request is scoped to a specific tenant. The tenant Id may be provided through this header or by using a tenant locked API key to achieve the same result.

See Making an API request using a Tenant Id for additional information.

API Key Authentication
Retrieve all the Actions for a specific User by the User Id.
GET /api/user/action?userId={userId}&active={active}&preventingLogin={preventingLogin}

Request Parameters

userIdUUIDrequired

The unique Id of the User for which to retrieve all of the Actions.

activeBoolean

When this parameter is provided and set to true, only active actions will be returned. When this parameter is provided and set to false, only the inactive actions will be returned. When this parameter is omitted, all actions will be returned.

An active action is a time based action that has not yet expired or been canceled. An inactive action is either a time based action that has expired, canceled or an action that is not time based.

This parameter and preventingLogin are mutually exclusive.

preventingLoginBooleanAvailable since 1.4.0

When this value is provided and set to true, only active actions that are preventing the user from login will be returned. Omitting this parameter, or setting this parameter to false does not affect the API behavior.

This parameter and active are mutually exclusive because an action that is preventing login is always active.

Request Headers

X-FusionAuth-TenantIdString

The unique Id of the tenant used to scope this API request.

The tenant Id is not required on this request even when more than one tenant has been configured because the tenant can be identified based upon the request parameters or it is otherwise not required.

Specify a tenant Id on this request when you want to ensure the request is scoped to a specific tenant. The tenant Id may be provided through this header or by using a tenant locked API key to achieve the same result.

See Making an API request using a Tenant Id for additional information.

Response

The response for this API contains either a single User Action Log or a list of User Actions Logs for a User. If you specified an actionId on the URI the response will contain the User Action Log for that Id. If you pass in a userId as a URL parameter the response will contain all of the User Action Logs for that User. Both responses are defined below along with an example JSON response.

Response Codes
Code Description
200 The request was successful. The response will contain a JSON body.
400 The request was invalid and/or malformed. The response will contain an Errors JSON Object with the specific errors. This status will also be returned if a paid FusionAuth license is required and is not present.
401 You did not supply a valid Authorization header. The header was omitted or your API key was not valid. The response will be empty. See Authentication.
404 The object you requested doesn't exist. The response will be empty.
500 There was an internal error. A stack trace is provided and logged in the FusionAuth log files. The response will be empty.
503 The search index is not available or encountered an exception so the request cannot be completed. The response will contain a JSON body.

Response Body

action.actioneeUserIdUUID

The Id of the User that was actioned.

action.actionerUserIdUUID

The Id of the User that took the action on the User. If the action was initiated by FusionAuth this value will not be provided.

action.applicationIdsArray<UUID>

This parameter if provided specifies the scope of the User Action. When an Action is scoped to one or more Applications the Application Ids will be provided in this parameter.

action.commentString

An optional comment provided when the Action was created, updated or canceled. This value will always be the last comment set on the action, see history for previous values.

action.emailUserOnEndBoolean

Whether FusionAuth will email the User when a time-based User Actions expires.

action.endEventSentBoolean

Whether FusionAuth will send events when a time-based User Actions expires.

action.expiryLong

The expiration instant of the User Action.

action.history.historyItemsArray

The historical data for the User Action Log. Each time the User Action is modified or when the User Action is canceled a new historyItem is recorded.

action.history.historyItems[x].actionerUserIdUUID

The Id of the User that took the modified (or created) the User Action.

action.history.historyItems[x].commentString

An optional comment provided when the Action was created, updated or canceled.

action.history.historyItems[x].createInstantLong

The instant that this historical modification or creation was performed.

action.history.historyItems[x].expiryLong

The instant that the User Action expired at previously.

action.idUUID

The Id of the User Action record.

action.insertInstantLong

The instant that the User Action was taken.

action.localizedOptionString

The localized version of the User Action Option that was selected by the actioner.

action.localizedReasonString

The localized version of the User Action Reason that was selected by the actioner.

action.notifyUserOnEndString

Whether or not FusionAuth will send events to registered Webhooks when a time-based User Action expires.

action.optionString

The non-localized version of the User Action Option that was selected by the actioner.

action.reasonString

The non-localized version of the User Action Reason that was selected by the actioner.

action.reasonCodeString

The User Action Reason code that was selected by the actioner.

action.userActionIdUUID

The unique Id of the User Action. This Id can be used to retrieve the User Action using the Retrieve a User Action API.

Example Response JSON for a Single User Action

{
  "action": {
    "actioneeUserId": "00000000-0000-0000-0000-000000000001",
    "actionerUserId": "00000000-0000-0000-0000-000000000002",
    "applicationIds": [
      "00000000-0000-0000-0000-000000000042",
      "00000000-0000-0000-0000-000000000043"
    ],
    "comment": "This user is still being a jerk",
    "createInstant": 1471786483322,
    "emailUserOnEnd": false,
    "endEventSent": false,
    "expiry": 1471586483322,
    "historyItems": [
      {
        "actionerUserId": "00000000-0000-0000-0000-000000000002",
        "comment": "This user is still being a jerk",
        "createInstant": 1471786433322,
        "expiry": 1471496483322
      }
    ],
    "id": "00000000-0000-0000-0000-013500000002",
    "insertInstant": 1595361142909,
    "lastUpdateInstant": 1595361143101,
    "localizedOption": "Lock account full",
    "localizedReason": "Community rules infraction",
    "notifyUserOnEnd": true,
    "option": "Lock account full",
    "reason": "Community rules infraction",
    "reasonCode": "FRAC",
    "userActionId": "00000000-0000-0000-0000-000000000010"
  }
}

Response Body

actionsArray

The list of User Actions.

actions[x].actioneeUserIdUUID

The Id of the User that was actioned.

actions[x].actionerUserIdUUID

The Id of the User that was took the action on the User.

actions[x].applicationIdsArray<UUID>

The list of Application ids that the action was performed in.

actions[x].commentString

The comment left by the actioner. This is the last User to touch the User Action (i.e. if the User Action was updated, this will be the comment left by the User that updated it).

actions[x].emailUserOnEndBoolean

Whether FusionAuth will email the User when a time-based User Actions expires.

actions[x].endEventSentBoolean

Whether FusionAuth will send events when a time-based User Actions expires.

actions[x].expiryLong

The expiration instant of the User Action.

actions[x].history.historyItemsArray

The historical data for the User Action. Each time the User Action is modified a new historyItem is added to the list.

actions[x].history.historyItems[x].actionerUserIdUUID

The Id of the User that took the modified (or created) the User Action.

actions[x].history.historyItems[x].commentString

The message that the actioner added when they modified (or created) this User Action.

actions[x].history.historyItems[x].createInstantLong

The instant that this historical modification or creation was performed.

actions[x].history.historyItems[x].expiryLong

The instant that the User Action expired at previously.

actions[x].idUUID

The Id of the User Action.

action[x].insertInstantLong

The instant that the User Action was taken.

actions[x].localizedOptionString

The localized version of the User Action Option that was selected by the actioner.

actions[x].localizedReasonString

The localized version of the User Action Reason that was selected by the actioner.

actions[x].notifyUserOnEndString

Whether or not FusionAuth will send events to registered Webhooks when a time-based User Action expires.

actions[x].optionString

The non-localized version of the User Action Option that was selected by the actioner.

actions[x].reasonString

The non-localized version of the User Action Reason that was selected by the actioner.

actions[x].reasonCodeString

The User Action Reason code that was selected by the actioner.

Example Response JSON for all the User Actions

{
  "actions": [
    {
      "actioneeUserId": "00000000-0000-0000-0000-000000000001",
      "actionerUserId": "00000000-0000-0000-0000-000000000002",
      "applicationIds": [
        "00000000-0000-0000-0000-000000000042",
        "00000000-0000-0000-0000-000000000043"
      ],
      "comment": "This user is still being a jerk",
      "createInstant": 1471786483322,
      "emailUserOnEnd": false,
      "endEventSent": false,
      "expiry": 1471586483322,
      "historyItems": [
        {
          "actionerUserId": "00000000-0000-0000-0000-000000000002",
          "comment": "This user is still being a jerk",
          "createInstant": 1471786433322,
          "expiry": 1471496483322
        }
      ],
      "id": "00000000-0000-0000-0000-013500000002",
      "insertInstant": 1595361142909,
      "lastUpdateInstant": 1595361143101,
      "localizedOption": "Lock account full",
      "localizedReason": "Community rules infraction",
      "notifyUserOnEnd": true,
      "option": "Lock account full",
      "reason": "Community rules infraction",
      "reasonCode": "FRAC",
      "userActionId": "00000000-0000-0000-0000-000000000010"
    }
  ]
}

Update a Previously Taken Action

This API is used to update a User Action that was previously taken on a User. User Actions are the method that FusionAuth uses to discipline, reward and interact with Users.

Request

API Key Authentication
Update an in progress Action by Id
PUT /api/user/action/{actionId}

Request Parameters

actionIdUUIDrequired

The Id of the User Action being updated.

Request Headers

X-FusionAuth-TenantIdString

The unique Id of the tenant used to scope this API request.

The tenant Id is not required on this request even when more than one tenant has been configured because the tenant can be identified based upon the request parameters or it is otherwise not required.

Specify a tenant Id on this request when you want to ensure the request is scoped to a specific tenant. The tenant Id may be provided through this header or by using a tenant locked API key to achieve the same result.

See Making an API request using a Tenant Id for additional information.

Request Body

action.actionerUserIdUUIDrequired

The Id of the User that is taking the action on the User.

action.commentString

The comment left by the actioner.

action.emailUserBooleanDefaults to false

Whether FusionAuth should send an email to the User.

action.expiryLong

The expiration instant of this User Action. This is required for time-based User Actions.

action.notifyUserBooleanDefaults to false

The notifyUser flag that is passed along in any events FusionAuth sends to registered Webhooks.

broadcastBooleanDefaults to false

Whether or not FusionAuth will broadcast the User Action to any registered Webhooks.

Example Request JSON

{
  "broadcast": true,
  "action": {
    "actionerUserId": "00000000-0000-0000-0000-000000000002",
    "comment": "This user is still being a jerk",
    "emailUser": true,
    "expiry": 1471586483322,
    "notifyUser": true
  }
}

Response

The response for this API contains the User Action along with any event and email information that was generated by FusionAuth.

Response Codes
Code Description
200 The request was successful. The response will contain a JSON body.
400 The request was invalid and/or malformed. The response will contain an Errors JSON Object with the specific errors. This status will also be returned if a paid FusionAuth license is required and is not present.
401 You did not supply a valid Authorization header. The header was omitted or your API key was not valid. The response will be empty. See Authentication.
404 The object you are trying to update doesn't exist. The response will be empty.
500 There was an internal error. A stack trace is provided and logged in the FusionAuth log files. The response will be empty.
503 The search index is not available or encountered an exception so the request cannot be completed. The response will contain a JSON body.
504 One or more Webhook endpoints returned an invalid response or were unreachable. Based on the transaction configuration for this event your action cannot be completed. A stack trace is provided and logged in the FusionAuth log files.

Response Body

action.actioneeUserIdUUID

The Id of the User that was actioned.

action.actionerUserIdUUID

The Id of the User that took the action on the User. If the action was initiated by FusionAuth this value will not be provided.

action.applicationIdsArray<UUID>

This parameter if provided specifies the scope of the User Action. When an Action is scoped to one or more Applications the Application Ids will be provided in this parameter.

action.commentString

An optional comment provided when the Action was created, updated or canceled. This value will always be the last comment set on the action, see history for previous values.

action.emailUserOnEndBoolean

Whether FusionAuth will email the User when a time-based User Actions expires.

action.endEventSentBoolean

Whether FusionAuth will send events when a time-based User Actions expires.

action.expiryLong

The expiration instant of the User Action.

action.history.historyItemsArray

The historical data for the User Action Log. Each time the User Action is modified or when the User Action is canceled a new historyItem is recorded.

action.history.historyItems[x].actionerUserIdUUID

The Id of the User that took the modified (or created) the User Action.

action.history.historyItems[x].commentString

An optional comment provided when the Action was created, updated or canceled.

action.history.historyItems[x].createInstantLong

The instant that this historical modification or creation was performed.

action.history.historyItems[x].expiryLong

The instant that the User Action expired at previously.

action.idUUID

The Id of the User Action record.

action.insertInstantLong

The instant that the User Action was taken.

action.localizedOptionString

The localized version of the User Action Option that was selected by the actioner.

action.localizedReasonString

The localized version of the User Action Reason that was selected by the actioner.

action.notifyUserOnEndString

Whether or not FusionAuth will send events to registered Webhooks when a time-based User Action expires.

action.optionString

The non-localized version of the User Action Option that was selected by the actioner.

action.reasonString

The non-localized version of the User Action Reason that was selected by the actioner.

action.reasonCodeString

The User Action Reason code that was selected by the actioner.

action.userActionIdUUID

The unique Id of the User Action. This Id can be used to retrieve the User Action using the Retrieve a User Action API.

Example Response JSON for a Single User Action

{
  "action": {
    "actioneeUserId": "00000000-0000-0000-0000-000000000001",
    "actionerUserId": "00000000-0000-0000-0000-000000000002",
    "applicationIds": [
      "00000000-0000-0000-0000-000000000042",
      "00000000-0000-0000-0000-000000000043"
    ],
    "comment": "This user is still being a jerk",
    "createInstant": 1471786483322,
    "emailUserOnEnd": false,
    "endEventSent": false,
    "expiry": 1471586483322,
    "historyItems": [
      {
        "actionerUserId": "00000000-0000-0000-0000-000000000002",
        "comment": "This user is still being a jerk",
        "createInstant": 1471786433322,
        "expiry": 1471496483322
      }
    ],
    "id": "00000000-0000-0000-0000-013500000002",
    "insertInstant": 1595361142909,
    "lastUpdateInstant": 1595361143101,
    "localizedOption": "Lock account full",
    "localizedReason": "Community rules infraction",
    "notifyUserOnEnd": true,
    "option": "Lock account full",
    "reason": "Community rules infraction",
    "reasonCode": "FRAC",
    "userActionId": "00000000-0000-0000-0000-000000000010"
  }
}

Cancel a Previously Taken Action

This API is used to cancel a User Action that was previously taken on a User. User Actions are the method that FusionAuth uses to discipline, reward and interact with Users.

Request

API Key Authentication
Cancel in progress Action by Id
DELETE /api/user/action/{actionId}

Request Parameters

actionIdUUIDrequired

The Id of the User Action being canceled.

Request Headers

X-FusionAuth-TenantIdString

The unique Id of the tenant used to scope this API request.

The tenant Id is not required on this request even when more than one tenant has been configured because the tenant can be identified based upon the request parameters or it is otherwise not required.

Specify a tenant Id on this request when you want to ensure the request is scoped to a specific tenant. The tenant Id may be provided through this header or by using a tenant locked API key to achieve the same result.

See Making an API request using a Tenant Id for additional information.

Request Body

action.actionerUserIdUUIDrequired

The Id of the User that is taking the action on the User.

action.commentString

The comment left by the actioner.

action.emailUserBooleanDefaults to false

Whether FusionAuth should send an email to the User.

action.expiryLong

The expiration instant of this User Action. This is required for time-based User Actions.

action.notifyUserBooleanDefaults to false

The notifyUser flag that is passed along in any events FusionAuth sends to registered Webhooks.

broadcastBooleanDefaults to false

Whether or not FusionAuth will broadcast the User Action to any registered Webhooks.

Example Request JSON

{
  "broadcast": true,
  "action": {
    "actionerUserId": "00000000-0000-0000-0000-000000000002",
    "comment": "This user is behaving now",
    "emailUser": true,
    "notifyUser": true
  }
}

Response

The response for this API contains the User Action along with any event and email information that was generated by FusionAuth.

Response Codes
Code Description
200 The request was successful. The response will contain a JSON body.
400 The request was invalid and/or malformed. The response will contain an Errors JSON Object with the specific errors. This status will also be returned if a paid FusionAuth license is required and is not present.
401 You did not supply a valid Authorization header. The header was omitted or your API key was not valid. The response will be empty. See Authentication.
404 The object you requested doesn't exist. The response will be empty.
500 There was an internal error. A stack trace is provided and logged in the FusionAuth log files. The response will be empty.
503 The search index is not available or encountered an exception so the request cannot be completed. The response will contain a JSON body.
504 One or more Webhook endpoints returned an invalid response or were unreachable. Based on the transaction configuration for this event your action cannot be completed. A stack trace is provided and logged in the FusionAuth log files.

Response Body

action.actioneeUserIdUUID

The Id of the User that was actioned.

action.actionerUserIdUUID

The Id of the User that took the action on the User. If the action was initiated by FusionAuth this value will not be provided.

action.applicationIdsArray<UUID>

This parameter if provided specifies the scope of the User Action. When an Action is scoped to one or more Applications the Application Ids will be provided in this parameter.

action.commentString

An optional comment provided when the Action was created, updated or canceled. This value will always be the last comment set on the action, see history for previous values.

action.emailUserOnEndBoolean

Whether FusionAuth will email the User when a time-based User Actions expires.

action.endEventSentBoolean

Whether FusionAuth will send events when a time-based User Actions expires.

action.expiryLong

The expiration instant of the User Action.

action.history.historyItemsArray

The historical data for the User Action Log. Each time the User Action is modified or when the User Action is canceled a new historyItem is recorded.

action.history.historyItems[x].actionerUserIdUUID

The Id of the User that took the modified (or created) the User Action.

action.history.historyItems[x].commentString

An optional comment provided when the Action was created, updated or canceled.

action.history.historyItems[x].createInstantLong

The instant that this historical modification or creation was performed.

action.history.historyItems[x].expiryLong

The instant that the User Action expired at previously.

action.idUUID

The Id of the User Action record.

action.insertInstantLong

The instant that the User Action was taken.

action.localizedOptionString

The localized version of the User Action Option that was selected by the actioner.

action.localizedReasonString

The localized version of the User Action Reason that was selected by the actioner.

action.notifyUserOnEndString

Whether or not FusionAuth will send events to registered Webhooks when a time-based User Action expires.

action.optionString

The non-localized version of the User Action Option that was selected by the actioner.

action.reasonString

The non-localized version of the User Action Reason that was selected by the actioner.

action.reasonCodeString

The User Action Reason code that was selected by the actioner.

action.userActionIdUUID

The unique Id of the User Action. This Id can be used to retrieve the User Action using the Retrieve a User Action API.

Example Response JSON for a Single User Action

{
  "action": {
    "actioneeUserId": "00000000-0000-0000-0000-000000000001",
    "actionerUserId": "00000000-0000-0000-0000-000000000002",
    "applicationIds": [
      "00000000-0000-0000-0000-000000000042",
      "00000000-0000-0000-0000-000000000043"
    ],
    "comment": "This user is behaving now",
    "createInstant": 1471786483322,
    "emailUserOnEnd": false,
    "endEventSent": false,
    "expiry": 1471586483322,
    "historyItems": [
      {
        "actionerUserId": "00000000-0000-0000-0000-000000000002",
        "comment": "This user is being a jerk",
        "createInstant": 1471786433322,
        "expiry": 1471496483322
      },
      {
        "actionerUserId": "00000000-0000-0000-0000-000000000002",
        "comment": "This user is still being a jerk",
        "createInstant": 1471786433322,
        "expiry": 1471496483322
      }
    ],
    "id": "00000000-0000-0000-0000-013500000003",
    "insertInstant": 1595361142909,
    "event": {
      "action": "Lock account full",
      "actionId": "00000000-0000-0000-0000-000000000010",
      "actioneeUserId": "00000000-0000-0000-0000-000000000001",
      "actionerUserId": "00000000-0000-0000-0000-000000000002",
      "comment": "This user is behaving now",
      "createInstant": 1471786483322,
      "email": {
        "from": {
          "address": "support@fusionauth.io",
          "display": "FusionAuth Support"
        },
        "html": "...",
        "subject": "You account has been unlocked",
        "text": "...",
        "to": {
          "address": "foo@bar.com",
          "display": "Foo Jones"
        }
      },
      "expiry": 1471586483322,
      "lastUpdateInstant": 1595361143101,
      "localizedAction": "Lock account",
      "localizedOption": "Lock account full",
      "localizedReason": "Community rules infraction",
      "notifyUser": false,
      "option": "Lock account full",
      "emailedUser": false,
      "phase": "cancel",
      "reason": "Community rules infraction",
      "reasonCode": "FRAC"
    },
    "notifyUserOnEnd": true,
    "option": "Lock account full",
    "reason": "Community rules infraction",
    "reasonCode": "FRAC",
    "userActionId": "00000000-0000-0000-0000-000000000010"
  }
}