# Get event trail for payment

Gets an audit trail of a payment's state changes on a local RippleNet instance.

Endpoint: GET /audit/payment/{id}
Version: 4.0.0
Security: Bearer

## Path parameters:

  - `id` (string, required)
    Unique identifier of a payment.

## Response 200 fields (application/json):

  - `featureName` (string)
    Feature name associated with the entityId. Possible values are payment.
    Example: "payment"

  - `eventDetail` (string)
    Detailed description of the event.
    Example: "Updated Payment to state PREPARED"

  - `entityId` (string)
    UUID representing an event.
    Example: "d485f100-2af7-4e48-9ab1-3c7e28775691"

  - `messageAction` (string)
    String representation of the action being taken, where DS = downstream and US = upstream in the messaging processing pipeline.
    Enum: "DS_STARTED", "DS_COMPLETED", "US_STARTED", "US_COMPLETED", "STATE_CHANGE", "FAILURE"

  - `createdAt` (string)
    Timestamp of the audit event.
    Example: "2019-10-01T18:24:28.040000Z"

  - `messageSender` (string)
    The RippleNetAddress of the originator of the message that triggered the creation of this event.
    Example: "default"

  - `messageType` (string)
    The type of message that was being processed that triggered the creation of this event.
    Example: "SETTLEMENT_PREPARE"

## Response 400 fields (application/json):

  - `type` (string)
    URL to the error documentation.
    Example: "https://errors.ripplenet.ripple.com/error/json-processing-error"

  - `title` (string)
    Summary of the returned problem.
    Example: "Invalid Request Object"

  - `detail` (string)
    Description of the returned problem.
    Example: "The request parameter [account_id] is not in the correct format."

  - `status` (number)
    HTTP error code.
    Example: 400

  - `ripplenet_error_code` (string)
    RippleNet specific error code.
    Example: "E0104"

  - `finality` (string)
    Specifies if the request can be retried for a successful response.
    Example: "PERMANENT"


