# (NEW) Get all fees

Returns the fee transactions accrued by the logged-in identity — every `FeeTransaction` posted against any of the identity's instruments, filterable by time window.
For surfaces that need fees inline with their parent activity, the same `FeeTransaction` records are also exposed via the Transaction Activity API and on Statements V2.

Endpoint: GET /fees
Version: v3
Security: auth_token, api-key

## Query parameters:

  - `offset` (integer)
    The offset value for paging, indicating the initial item number to be returned from the data set satisfying the given criteria. Leave out to fetch the first page of results.

  - `limit` (integer)
    The limit of the results for paging, starting at the offset. Limit is always capped at 100.

  - `creationTimestampFrom` (integer)
    Filter for transactions created after this timestamp. Epoch timestamp using millisecond precision.

  - `creationTimestampTo` (integer)
    Filter for transactions created before this timestamp. Epoch timestamp using millisecond precision.

  - `sortOrder` (string)
    Sort order for the results:
  - ASC: Ascending order, oldest first.
  - DESC: Descending order, most recent first.

## Response 200 fields (application/json):

  - `fees` (array)

  - `fees.id` (string, required)
    The unique identifier of the fee transaction.

  - `fees.feeType` (string, required)
    The category of fee — indicates the activity or instrument-lifecycle event the fee relates to.
    Enum: "fee_reversals", "incoming_wire_fees", "withdrawal_fees", "purchase_fees", "refund_fees", "atm_withdrawal_fees", "chargeback_fees", "transfer_fees", "send_fees", "outgoing_wire_transfer_fees", "custom_fees", "other_fees", "instrument_delete_fees", "funds_redemption_fees", "system_transaction_fees"

  - `fees.amount` (object, required)
    The object representing a monetary amount in a particular currency.

  - `fees.amount.currency` (string, required)
    The currency expressed in ISO-4217 code. Example: GBP, EUR, USD.

  - `fees.amount.amount` (integer, required)
    The monetary amount, scaled to the lowest denomination of the currency.

Example, an amount of 1000 for a EUR currency is actually 1000 Euro cents or EUR 10.00.

  - `fees.instrument` (object, required)

  - `fees.instrument.id` (string, required)

  - `fees.instrument.type` (string, required)
    Enum: "managed_cards", "managed_accounts"

  - `fees.status` (string, required)
    Lifecycle status of a fee transaction:
- PENDING: Fee accompanies a transaction that is still processing; it may still be cancelled.
- COMPLETED: Fee was charged and posted to the instrument balance.
- CANCELLED: Fee was cancelled before being charged.
- REVERSED: Fee was previously charged and has been reversed.
    Enum: "PENDING", "COMPLETED", "CANCELLED", "REVERSED"

  - `fees.description` (string)

  - `fees.relatedTransactionId` (string)
    The parent transaction this fee relates to, if any.

  - `fees.creationTimestamp` (integer, required)

  - `fees.lastUpdatedTimestamp` (integer)

  - `count` (integer)
    The total number of records matching the filter criteria.

  - `responseCount` (integer)

## Response 400 fields (application/json):

  - `message` (string)
    When present helps to identify and fix the problem.

  - `syntaxErrors` (object)
    Is returned as part of an HTTP error response whenever a syntax error is detected. A list of the fields together with their syntax error will be provided.

  - `syntaxErrors.invalidFields` (array)

  - `syntaxErrors.invalidFields.params` (array)

  - `syntaxErrors.invalidFields.fieldName` (string)

  - `syntaxErrors.invalidFields.error` (string)
    Enum: "REQUIRED", "HAS_TEXT", "REQUIRES", "SIZE", "RANGE", "IN", "NOT_IN", "REGEX", "EXACTLY", "AT_LEAST", "AT_MOST", "ALL_OR_NONE"

## Response 403 fields (application/json):

  - `errorCode` (string)
    Enum: "INSUFFICIENT_PERMISSIONS"

## Response default fields (application/json):

  - `code` (string)

  - `message` (string)

