# Input Types

Input types are used as arguments for mutations and queries to provide input data to an operation.

Source: https://www.twisp.com/docs/reference/graphql/types/input

## AccountConfigInput
Fields to create a system configuration for an account.
#### Input Fields

---
* ``enableConcurrentPosting`` - [`Boolean`](/docs/reference/graphql/types/scalar#boolean)
* When `true`, allow concurrent posting to the account.
  See `BalanceType` for balance retrieval options available for concurrent-enabled accounts.
  Defaults to `false`.
---
* ``upsert`` - [`Boolean`](/docs/reference/graphql/types/scalar#boolean)
* When `true` use an upsert on the accountId index to upsert and avoid unique constraint violation.

  If account already created, the existing account is unchanged.
---
* ``idempotent`` - [`Boolean`](/docs/reference/graphql/types/scalar#boolean)
* Enables idempotent account creation. When true, if an account with this ID already exists,
  the original creation arguments are compared against the request. If they match, the existing
  account is returned instead of failing with a unique constraint violation.

  Guarantees:
  - Idempotency is keyed on `accountId` — the caller must supply a stable ID.
  - The creation arguments (name, code, description, normalBalanceType, status, externalId,
    metadata, enableConcurrentPosting) must match the original creation. A mismatch fails
    with `BAD_REQUEST`.
  - Each entry in `accountSetIds` is validated against the existing memberships. If the
    account is not already a member of every requested set, the request fails with `BAD_REQUEST`.

  Cannot be used together with `upsert`.

## AccountEntriesFilterInput
Filter conditions for entries on an Account.
Since accountId is already known from the parent Account, only journalId and currency filtering is needed.
#### Input Fields

---
* ``journalId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter by journal ID. If omitted, entries from all journals are returned.
---
* ``currency`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter by currency. Defaults to USD if not specified.

## AccountFilterInput
Filter conditions to apply to an account query.
Filters are only applied if the field is used by the specified index.
#### Input Fields

---
* ``accountId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `accountId` field. Required when using index `AccountIndex.ACCOUNT_ID`.
---
* ``externalId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `externalId` field. Required when using index `AccountIndex.EXTERNAL_ID`.
---
* ``name`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `name` field. Only available when using index `AccountIndex.NAME`.
---
* ``code`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `code` field. Only available when using index `AccountIndex.CODE`.
---
* ``status`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `status` field. Only available when using index `AccountIndex.STATUS`.
---
* ``custom`` - [`CustomIndexFilter`](/docs/reference/graphql/types/input#custom-index-filter)
* Filter conditions for a custom index. Only available when using index `AccountIndex.CUSTOM`.
---
* ``search`` - [`SearchFilter`](/docs/reference/graphql/types/input#search-filter)
* Filter conditions for a search.  Only available when using index `AccountIndex.SEARCH`.
---
* ``codeUnique`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `code` field. Required when using index `AccountIndex.CODE_UNIQUE`.

## AccountIndexInput
Specify the pre-defined AccountIndex and sort order to use in a query.
#### Input Fields

---
* ``name`` - [`AccountIndex!`](/docs/reference/graphql/types/enum#account-index)
* Indexes for querying Accounts. To optimize query performance and apply desired filters, choose the appropriate index.
---
* ``sort`` - [`SortOrder`](/docs/reference/graphql/types/enum#sort-order)
* `ASC` (ascending) or `DESC` (descending).

## AccountInput
Fields to create a new account.
#### Input Fields

---
* ``accountId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Unique identifier for the account.
---
* ``externalId`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Allows specifying a unique external ID associated with this account.
---
* ``code`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Shorthand code for the account.
---
* ``name`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Account name.
---
* ``normalBalanceType`` - [`DebitOrCredit!`](/docs/reference/graphql/types/enum#debit-or-credit)
* Determines whether account should use a debit- or credit-normal balance. _Default:_ ``CREDIT``
---
* ``accountSetIds`` - [`[UUID]`]($gql:scalar:UUID)
* IDs of AccountSets to add this account to.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Description of the account.
---
* ``status`` - [`Status!`](/docs/reference/graphql/types/enum#status)
* Current status for the account. _Default:_ ``ACTIVE``
---
* ``metadata`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* Metadata attached to this account.
---
* ``config`` - [`AccountConfigInput`](/docs/reference/graphql/types/input#account-config-input)
* System config for the account.

## AccountSetConfigInput
Fields to create a system configuration for an account set.
#### Input Fields

---
* ``enableConcurrentPosting`` - [`Boolean`](/docs/reference/graphql/types/scalar#boolean)
* When `true`, allow concurrent posting to the account.
  See `BalanceType` for balance retrieval options available for concurrent-enabled accounts.
  Defaults to `false`.
---
* ``upsert`` - [`Boolean`](/docs/reference/graphql/types/scalar#boolean)
* When `true` use an upsert on the accountSetId index to upsert and avoid unique constraint violation.

  If account set already created, the existing account set is unchanged.
---
* ``idempotent`` - [`Boolean`](/docs/reference/graphql/types/scalar#boolean)
* Enables idempotent account set creation. When true, if an account set with this ID already exists,
  the original creation arguments are compared against the request. If they match, the existing
  account set is returned instead of failing with a unique constraint violation.

  Guarantees:
  - Idempotency is keyed on `accountSetId` — the caller must supply a stable ID.
  - The creation arguments (name, description, journalId, normalBalanceType, code, metadata,
    enableConcurrentPosting) must match the original creation. A mismatch fails with `BAD_REQUEST`.
  - Each entry in `accountSetIds` is validated against the existing memberships. If the
    account set is not already a member of every requested set, the request fails with `BAD_REQUEST`.

  Cannot be used together with `upsert`.

## AccountSetEntriesFilterInput
Filter conditions for entries on an AccountSet.
Since accountId and journalId are already known from the parent AccountSet, only currency filtering is needed.
#### Input Fields

---
* ``currency`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter by currency. Defaults to USD if not specified.

## AccountSetFilterInput
Filter conditions to apply to an account set query.
Filters are only applied if the field is used by the specified index.
#### Input Fields

---
* ``accountSetId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `accountSetId` field. Required when using index `AccountSetIndex.ACCOUNT_SET_ID`.
---
* ``journalId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Specify the Journal to use with `eq`. Required for all indexes.
---
* ``name`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `name` field. Only available when using index `AccountSetIndex.NAME`.
---
* ``code`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Fitler on the `code` field. Only available when using index `AccountSetIndex.CODE`.
---
* ``custom`` - [`CustomIndexFilter`](/docs/reference/graphql/types/input#custom-index-filter)
* Filter conditions for a custom index. Only available when using index `AccountSetIndex.CUSTOM`.
---
* ``search`` - [`SearchFilter`](/docs/reference/graphql/types/input#search-filter)
* Filter conditions for a search.  Only available when using index `AccountSetIndex.SEARCH`.

## AccountSetIndexInput
Specify the pre-defined AccountSetIndex and sort order to use in a query.
#### Input Fields

---
* ``name`` - [`AccountSetIndex!`](/docs/reference/graphql/types/enum#account-set-index)
* Indexes for querying AccountSets. To optimize query performance and apply desired filters, choose the appropriate index.
---
* ``sort`` - [`SortOrder`](/docs/reference/graphql/types/enum#sort-order)
* `ASC` (ascending) or `DESC` (descending).

## AccountSetInput
Fields to create a new account set.
#### Input Fields

---
* ``accountSetId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Unique identifier for the set.
---
* ``journalId`` - [`UUID`](/docs/reference/graphql/types/scalar#uuid)
* The journal for the set. If omitted, the default journal will be used.
---
* ``name`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Name for the set.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Description of the account set.
---
* ``normalBalanceType`` - [`DebitOrCredit!`](/docs/reference/graphql/types/enum#debit-or-credit)
* Determines whether the account set should use a debit- or credit-normal balance. _Default:_ ``CREDIT``
---
* ``metadata`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* Metadata attached to this account set.
---
* ``config`` - [`AccountSetConfigInput`](/docs/reference/graphql/types/input#account-set-config-input)
* System config for the account set.
---
* ``accountSetIds`` - [`[UUID]`]($gql:scalar:UUID)
* IDs of AccountSets to add this account set to.
---
* ``code`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Shorthand code for the account set. If not provided, a default code will be generated.

## AccountSetMemberInput
#### Input Fields

---
* ``memberType`` - [`AccountSetMemberType`](/docs/reference/graphql/types/enum#account-set-member-type)
* Whether the member to add is an Account or AccountSet
---
* ``memberId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Identifier for the member to add.
  When adding accounts, this is the `accountId`.
  When adding account sets, this is the `accountSetId`.

## AccountSetMembersFilterInput
Filter conditions to apply when querying members of an account set.
#### Input Fields

---
* ``accountSetId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `accountSetId` field.
---
* ``memberId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `memberId` field: the UUID of a member `Account` or `AccountSet`.

## AccountSetUpdateInput
AccountSet fields to update.
#### Input Fields

---
* ``name`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Name for the set.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Description of the account set.
---
* ``normalBalanceType`` - [`DebitOrCredit`](/docs/reference/graphql/types/enum#debit-or-credit)
* Determines whether the account set should use a debit- or credit-normal balance.
---
* ``metadata`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* Metadata attached to this account set.
---
* ``config`` - [`AccountSetConfigInput`](/docs/reference/graphql/types/input#account-set-config-input)
* System config for the account set.
---
* ``code`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Shorthand code for the account set.

## AccountUpdateInput
Account fields to update.
#### Input Fields

---
* ``externalId`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Allows specifying a unique external ID associated with this account.
---
* ``code`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Shorthand code for the account.
---
* ``name`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Account name.
---
* ``normalBalanceType`` - [`DebitOrCredit`](/docs/reference/graphql/types/enum#debit-or-credit)
* Determines whether account should use a debit- or credit-normal balance.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Description of the account.
---
* ``status`` - [`Status`](/docs/reference/graphql/types/enum#status)
* Current status for the account.
---
* ``metadata`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* Metadata attached to this account.
---
* ``config`` - [`AccountConfigInput`](/docs/reference/graphql/types/input#account-config-input)
* System config for the account.

## AchCreateConfigurationInput
#### Input Fields

---
* ``configId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Unique identifier for this configuration.
---
* ``endpointId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Endpoint to use for decisioning this ACH file.
---
* ``journalId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Journal to post settlements into.
---
* ``settlementAccountId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* ACH Settlement Account.
---
* ``exceptionAccountId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Account to post to when an exception occurs, such as a Velocity Control
  or Account in a locked state. Funds in this account will be returned.
---
* ``suspenseAccountId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Account to post to when an account is not found. Funds in this account will be
  returned.
---
* ``feeAccountId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* ACH Fee Account.
---
* ``odfiHeaderConfiguration`` - [`AchOdfiHeaderConfigurationInput!`](/docs/reference/graphql/types/input#ach-odfi-header-configuration-input)
* ACH Processor information for files.
---
* ``timeZone`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* IANA Timezone identifier for the configuration. _Example:_ ``"America/Chicago"``

## AchFileInfoFilterInput
#### Input Fields

---
* ``configId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Conditional logic by which to apply a filter on a query.

  Each FilterValue object must contain just one key/value pair.

  Valid: `{ eq: "123" }`\
  Invalid: `{ eq: "123", gt: "100" }`
---
* ``processingStatus`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Conditional logic by which to apply a filter on a query.

  Each FilterValue object must contain just one key/value pair.

  Valid: `{ eq: "123" }`\
  Invalid: `{ eq: "123", gt: "100" }`
---
* ``created`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Conditional logic by which to apply a filter on a query.

  Each FilterValue object must contain just one key/value pair.

  Valid: `{ eq: "123" }`\
  Invalid: `{ eq: "123", gt: "100" }`

## AchFileInfoIndexInput
#### Input Fields

---
* ``name`` - [`AchFileInfoIndex!`](/docs/reference/graphql/types/enum#ach-file-info-index)
*

## AchGenerateFileInput
#### Input Fields

---
* ``configId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* The configuration to use for generating return file.
---
* ``fileKey`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The key to store this file.
---
* ``fileType`` - [`AchFileType!`](/docs/reference/graphql/types/enum#ach-file-type)
* The type of file to generate.
---
* ``generateEmpty`` - [`Boolean!`](/docs/reference/graphql/types/scalar#boolean)
* If true, generate empty files. Defaults to true. _Default:_ ``true``

## AchOdfiHeaderConfigurationInput
#### Input Fields

---
* ``immediateDestination`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``immediateDestinationName`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``immediateOrigin`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``immediateOriginName`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## AchProcessFileInput
#### Input Fields

---
* ``configId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Configuration to use to process this file.
---
* ``fileKey`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The file key to use for this file.
---
* ``fileType`` - [`AchFileType!`](/docs/reference/graphql/types/enum#ach-file-type)
* The type of file being processed.
---
* ``options`` - [`AchProcessFileOptionsInput`](/docs/reference/graphql/types/input#ach-process-file-options-input)
* Additional ACH processing options.

## AchProcessFileOptionsInput
#### Input Fields

---
* ``preprocessedFileKey`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Output file key for preprocessed files.
---
* ``preprocessedExcludedFileKey`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Optionally output file key for excluded preprocessed entries.

## AchUpdateConfigurationInput
#### Input Fields

---
* ``endpointId`` - [`UUID`](/docs/reference/graphql/types/scalar#uuid)
* Endpoint to use for decisioning this ACH file.
---
* ``journalId`` - [`UUID`](/docs/reference/graphql/types/scalar#uuid)
* Journal to post settlements into.
---
* ``settlementAccountId`` - [`UUID`](/docs/reference/graphql/types/scalar#uuid)
* ACH Settlement Account.
---
* ``exceptionAccountId`` - [`UUID`](/docs/reference/graphql/types/scalar#uuid)
* Account to post to when an exception occurs, such as a Velocity Control
  or Account in a locked state. Funds in this account will be returned.
---
* ``suspenseAccountId`` - [`UUID`](/docs/reference/graphql/types/scalar#uuid)
* Account to post to when an account is not found. Funds in this account will be returned.
---
* ``feeAccountId`` - [`UUID`](/docs/reference/graphql/types/scalar#uuid)
* ACH Fee Account.
---
* ``odfiHeaderConfiguration`` - [`AchOdfiHeaderConfigurationInput`](/docs/reference/graphql/types/input#ach-odfi-header-configuration-input)
* ACH Processor information for files.
  **Note:** replaces existing `odfiHeaderConfiguration`
---
* ``timeZone`` - [`String`](/docs/reference/graphql/types/scalar#string)
* IANA Timezone identifier for the configuration. _Example:_ ``"America/Chicago"``

## AttachCalculationInput
#### Input Fields

---
* ``journalId`` - [`UUID`](/docs/reference/graphql/types/scalar#uuid)
* Journal to attach calculation to. This parameter is ignored when attaching to an account set.
  Defaults to the default journal if not provided when attaching to an account.
---
* ``accountId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Account or Account Set to attach calculation to.
---
* ``calculationId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Calculation to attach.

## BalanceFilterInput
Filter conditions to apply to a balance query.
Filters are only applied if the field is used by the specified index.
#### Input Fields

---
* ``journalId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Specify the Journal to use with `eq`. If omitted, the default journal will be used.
---
* ``accountId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `accountId` field. Required when using index `BalanceIndex.ACCOUNT_ID`.
---
* ``currency`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `currency` field.
---
* ``calculationId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on `calculationId` field when using `BalanceIndex.DIMENSION`
---
* ``dimension`` - [`DimensionFilterValue`](/docs/reference/graphql/types/input#dimension-filter-value)
* Filter on `dimension` field when using `BalanceIndex.Dimension`
---
* ``custom`` - [`CustomIndexFilter`](/docs/reference/graphql/types/input#custom-index-filter)
* Filter conditions for a custom index. Only available when using index `BalanceIndex.CUSTOM`.
---
* ``search`` - [`SearchFilter`](/docs/reference/graphql/types/input#search-filter)
* Filter conditions for a search.  Only available when using index `BalanceIndex.SEARCH`.

## BalanceHistoryFilterInput
Filter conditions to apply to a balance history query.
#### Input Fields

---
* ``modified`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `modified` timestamp.
---
* ``committed`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the transaction commit timestamp for the specific balance record version.

## BalanceIndexInput
Specify the pre-defined BalanceIndex and sort order to use in a query.
#### Input Fields

---
* ``name`` - [`BalanceIndex!`](/docs/reference/graphql/types/enum#balance-index)
* Indexes for querying Balances. To optimize query performance and apply desired filters, choose the appropriate index.
---
* ``sort`` - [`SortOrder`](/docs/reference/graphql/types/enum#sort-order)
* `ASC` (ascending) or `DESC` (descending).

## BalanceLimitInput
#### Input Fields

---
* ``layer`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* The layer this balance limit is enforced at.
  Must resolve to `SETTLED`, `PENDING` or `ENCUMBRANCE`.
---
* ``amount`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* The maximum amount at this layer that can be spent. Must resolve to a decimal.
---
* ``normalBalanceType`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* The direction this balance enforces on as an upper limit.
  Must resolve to `CREDIT` or `DEBIT`.
---
* ``start`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* The timestamp at which this balance limit begins to be effective.
  If provided, must resolve to a `timestamp`.
  Defaults to the creation stamp of the underlying control.
  @example("timestamp('2022-01-01T14:00:00.000Z')")
---
* ``end`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* The timestamp at which this balance limit ceases to be effective.
  If provided, must resolve to a `timestamp`.
  Defaults to infinite timestamp.
  @example("timestamp('2022-01-01T15:00:00.000Z')")

## BatchExecuteStatementInput
#### Input Fields

---
* ``sqls`` - [`[String]`]($gql:scalar:String)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## Between
#### Input Fields

---
* ``begin`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``end`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## BulkQueryExecutionFilterInput
Filter conditions to apply to a bulk execution query.
Filters are only applied if the field is used by the specified index.
#### Input Fields

---
* ``status`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `status` field. Required when using index `BulkQueryExecutionIndex.STATUS`.
---
* ``created`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `created` field. Available as sort key on `BulkQueryExecutionIndex.STATUS`.

## BulkQueryExecutionIndexInput
Specify the pre-defined BulkQueryExecutionIndex and sort order to use in a query.
#### Input Fields

---
* ``name`` - [`BulkQueryExecutionIndex!`](/docs/reference/graphql/types/enum#bulk-query-execution-index)
* Indexes for querying bulk executions.
---
* ``sort`` - [`SortOrder`](/docs/reference/graphql/types/enum#sort-order)
* `ASC` (ascending) or `DESC` (descending).

## BulkQueryInput
#### Input Fields

---
* ``name`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Human readable name of this bulk execution. _Default:_ ``"Bulk Query"``
---
* ``key`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Key to file to execute.
---
* ``executionId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Unique Identifier for this execution of a bulk query.
---
* ``query`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Parameterized GraphQL query string to execute.
---
* ``transform`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Optional jq transform to run on variables in file identified by `key`.
  The result of the transform must be a list of json variables.

  @example("map(.accountId)")

## CalculationConfigInput
#### Input Fields

---
* ``enableEffectiveBalances`` - [`Boolean!`](/docs/reference/graphql/types/scalar#boolean)
* Enable effective date calculations. Creates 3 child calculations for YYYY, YYYY_MM, and YYYY_MM_DD.
  Effective date dimensions are prepended to custom dimensions. _Default:_ ``false``
---
* ``effectiveDateSource`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* CEL expression resolving to a date, used as the base for effective date dimensions.
  Defaults to context.vars.transaction.effective when empty.
  Requires enableEffectiveBalances to be true.

## CalculationFilterInput
#### Input Fields

---
* ``calculationId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Conditional logic by which to apply a filter on a query.

  Each FilterValue object must contain just one key/value pair.

  Valid: `{ eq: "123" }`\
  Invalid: `{ eq: "123", gt: "100" }`
---
* ``code`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Conditional logic by which to apply a filter on a query.

  Each FilterValue object must contain just one key/value pair.

  Valid: `{ eq: "123" }`\
  Invalid: `{ eq: "123", gt: "100" }`
---
* ``status`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Conditional logic by which to apply a filter on a query.

  Each FilterValue object must contain just one key/value pair.

  Valid: `{ eq: "123" }`\
  Invalid: `{ eq: "123", gt: "100" }`

## CalculationIndexInput
#### Input Fields

---
* ``name`` - [`CalculationIndex!`](/docs/reference/graphql/types/enum#calculation-index)
*
---
* ``sort`` - [`SortOrder`](/docs/reference/graphql/types/enum#sort-order)
* `ASC` (ascending) or `DESC` (descending).

## CalculationUpdateInput
#### Input Fields

---
* ``code`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Unique shorthand code for this calculation.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Human readable description of this calculation.

## CancelStatementInput
#### Input Fields

---
* ``id`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## CardInitializeInput
#### Input Fields

---
* ``journalId`` - [`UUID`](/docs/reference/graphql/types/scalar#uuid)
* The unique identifier for the journal that card transactions will post to by default.
  If omitted, the default journal will be used.
---
* ``settlementAccountId`` - [`UUID`](/docs/reference/graphql/types/scalar#uuid)
* A unique identifier to an existing settlement account that
  card transactions will post to by default. If not provided,
  a default card transaction account will be used as the
  settlement account.

## CreateCalculationInput
#### Input Fields

---
* ``calculationId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Unique identifier for this calculation.
---
* ``code`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Unique shorthand code for this balance calculation.
---
* ``description`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Human readable description of this calculation.
---
* ``scope`` - [`CalculationScope!`](/docs/reference/graphql/types/enum#calculation-scope)
* The calculation scope of this calculation. Defaults to `GLOBAL`. _Default:_ ``GLOBAL``
---
* ``dimensions`` - [`[PartitionKeyInput]!`]($gql:input:PartitionKeyInput)
* Group by these values to index the calculation.

  The `account`, `transaction` and `entry` are available for use in the dimension computation on `context.vars`.
---
* ``condition`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* A boolean expression indicating if an balance entry should be written.
  The `account`, `transaction`, `tranCode` and `entry` are available for use in the dimension computation on `context.vars`.
  @example("has(context.vars.account.metadata.policyPayment)")
---
* ``config`` - [`CalculationConfigInput`](/docs/reference/graphql/types/input#calculation-config-input)
* Configuration options for this calculation.

## CreateClientInput
#### Input Fields

---
* ``principal`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Principal that this client applies to.
  If you're supplying your own OIDC this will be the `iss` claim on your JWT.
  If using Twisp IAM/OIDC token exchange, this will be the IAM principal you signed with, typically a role ARN.
---
* ``name`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Unique name of the client.
---
* ``policies`` - [`[PolicyInput]!`]($gql:input:PolicyInput)
* The policies to evaluate.

## CreateGroupInput
#### Input Fields

---
* ``id`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Unique ID for the group.
---
* ``name`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* A human-friendly name for the group, such as 'Admins' or 'DataAnalysts'.
---
* ``description`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* A brief description of the group's purpose, intended to provide additional context.
---
* ``policy`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* A set of policies to apply to this group, formatted as a JSON list that define the permissions granted to users within this group.

  The structure of these policies matches the Policy type, but serialized as a JSON string.

  Example:

  ```
  policy: "[{\"actions\": [\"*\"],\"effect\": \"DENY\",\"resources\":[\"*\"],\"assertions\": {\"always false\": \"1 == 0\"}}]"
  ```

## CreateIndexInput
#### Input Fields

---
* ``name`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Unique identifier of this index. Typically human readable.
---
* ``on`` - [`IndexOnEnum!`](/docs/reference/graphql/types/enum#index-on-enum)
* The type of record this index applies to.
---
* ``viewName`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Name of the target view. Required when `on: View`; ignored otherwise.
---
* ``async`` - [`Boolean`](/docs/reference/graphql/types/scalar#boolean)
* Indicates if this index is populated asynchronously.
---
* ``unique`` - [`Boolean`](/docs/reference/graphql/types/scalar#boolean)
* Indicates if this index is unique.
---
* ``partition`` - [`[PartitionKeyInput]!`]($gql:input:PartitionKeyInput)
* The partition key used for this index.
---
* ``partitionShardCount`` - [`Int`](/docs/reference/graphql/types/scalar#int)
* Specifies the number of shards for partition write scaling.

  This parameter defines how many shards the partition key is
  automatically split into, similarly to RAID-style disk striping.
  Increasing this value allows the index to distribute write
  throughput across multiple shards while sacrificing global sort
  order on the partition.

  For instance, setting `partitionShardCount` to 4 splits each unique
  partition into four shards, effectively allowing 4000 writes per
  second for a single partition key.
---
* ``sort`` - [`[IndexKeyInput]!`]($gql:input:IndexKeyInput)
* The sort key to use for supporting range queries.
---
* ``constraints`` - [`ExpressionMap`](/docs/reference/graphql/types/scalar#expression-map)
* Map of named CEL expressions specifying the conditions for including
  a record in this index.

  Records are only included in the index if _all_ expressions evaluate
  to `true`, i.e. they are combined with a logical AND. Each
  expression must return a boolean value.

  For example, a custom index on a `metadata.category` field might use
  the constraints `{ hasCategory: "has(document.metadata.category)" }`
  to ensure that only records whose `metadata` document has a defined
  value for the `category` field are included.

## CreateScheduleInput
#### Input Fields

---
* ``jobType`` - [`JobType!`](/docs/reference/graphql/types/enum#job-type)
* The job type to create the schedule for. Currently only one schedule
  per job-type is supported.
---
* ``jobName`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* A job name that's unique per job type.
---
* ``principal`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The Twisp principal to run the job on a schedule.
  This should have a matching `client` policy.
---
* ``scheduleExpression`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* A schedule expression to run this job on.  cron/rate/once supported
  see https://docs.aws.amazon.com/scheduler/latest/UserGuide/schedule-types.html for valid syntax.
---
* ``timezone`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The timezone to run this schedule on based on https://www.iana.org/time-zones

  example: "America/Los_Angeles" or "UTC"

  Supports ST rules defined in https://docs.aws.amazon.com/scheduler/latest/UserGuide/schedule-types.html
---
* ``metadata`` - [`JSON!`](/docs/reference/graphql/types/scalar#json)
* JSON metadata to pass to running job.

## CreateSearchIndexInput
#### Input Fields

---
* ``name`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Unique identifier of this index. Typically human readable.
---
* ``on`` - [`IndexOnEnum!`](/docs/reference/graphql/types/enum#index-on-enum)
* The type of record this index applies to.
---
* ``viewName`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Name of the target view. Required when `on: View`; ignored otherwise.
---
* ``constraints`` - [`ExpressionMap`](/docs/reference/graphql/types/scalar#expression-map)
* Map of named CEL expressions specifying the conditions for including a record in this index.

  Records are only included in the index if _all_ expressions evaluate to `true`, i.e. they are combined with a logical AND. Each expression must return a boolean value.

  For example, a custom index on a `metadata.category` field might use the constraints `{ hasCategory: "has(document.metadata.category)" }` to ensure that only records whose `metadata` document has a defined value for the `category` field are included.
---
* ``opensearchSchema`` - [`OpensearchSchemaInput!`](/docs/reference/graphql/types/input#opensearch-schema-input)
* Opensearch mapping (with CEL expressions) applied to the document prior to indexing.

  Required. Every search index must declare its field types explicitly so that
  sort, filter, and aggregation behavior is stable across index creations. Indexes
  created without a schema rely on Opensearch dynamic mapping defaults, which have
  drifted over time and across Opensearch Serverless versions, producing cursors
  and sort behaviors that are not portable between indexes — so this path is no
  longer supported.

## CreateTenantInput
#### Input Fields

---
* ``id`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Unique ID for the tenant.
---
* ``accountId`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* A globally unique identifier representing an environment within the organization.

  This accountId, when combined with an AWS region, is used to calculate the database tenant.
---
* ``name`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* A human-friendly name for the tenant, used for display purposes and easier identification.
---
* ``description`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* A brief description of the tenant, providing additional context about its purpose or characteristics.

## CreateUpload
#### Input Fields

---
* ``key`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Unique identifier of file. e.g. `path/to/file.json`
---
* ``uploadType`` - [`UploadType!`](/docs/reference/graphql/types/enum#upload-type)
* The type of upload:
  `BULK_GRAPHQL_VARIABLES` - The content-type is `application/json` and is an array of json objects for a bulk graphql query execution.
  `ACH` - The content-type is `text/plain` and is a NACHA formatted text file. _Default:_ ``BULK_GRAPHQL_VARIABLES``
---
* ``contentType`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* `contentType` of file.
---
* ``contentEncoding`` - [`String`](/docs/reference/graphql/types/scalar#string)
* `contentEncoding` of file. Only `gzip` is supported. Only allowed for `BULK_GRAPHQL_VARIABLES` uploads.

## CreateUserInput
#### Input Fields

---
* ``id`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Unique ID for the user.
---
* ``groupIds`` - [`[UUID!]!`]($gql:scalar:UUID)
* A list of unique identifiers for the groups to which the user belongs. The user's permissions are determined by the combined policies of these groups.
---
* ``email`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The user's email address, which serves as a unique identifier and primary means of contact.

## CreateViewInput
Input for creating a new view materialized view.
#### Input Fields

---
* ``name`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Unique identifier of this view. Will be used as the table name in the public namespace.
  Should be a short, human-readable name.
---
* ``document`` - [`[DocumentElementInput!]!`]($gql:input:DocumentElementInput)
* Cel Expressions and Type that define the aggregation.

  `context.source` will have the triggering document.
---
* ``sources`` - [`[ViewSourceInput!]!`]($gql:input:ViewSourceInput)
* List of source tables that trigger updates to this view.
  When records in these tables are inserted, updated, or deleted, the view will be recalculated.
---
* ``partition`` - [`[PartitionKeyInput!]!`]($gql:input:PartitionKeyInput)
* Partition for this aggregation.

  Use `context.source` for defining the index.
---
* ``sort`` - [`[IndexKeyInput!]!`]($gql:input:IndexKeyInput)
* Sort for this aggregation.

  Use `context.source` for defining the index.
---
* ``filters`` - [`ExpressionMap`](/docs/reference/graphql/types/scalar#expression-map)
* Map of named CEL expressions that filter when the view should be updated.
  Only source changes that satisfy all filter conditions will trigger an update to the view.
  Each expression must return a boolean value.

  Default: { enabled: "true" } (all changes trigger an update)
---
* ``description`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Human readable description of this view. _Default:_ ``""``
---
* ``config`` - [`ViewConfigInput`](/docs/reference/graphql/types/input#view-config-input)
* Extra config options for view.
---
* ``normalize`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* A CEL expression to normalize the source object by.
  If provided, must evaluate to a list. The trigger will be repeated for
  each item in the list and the value will be available on `context.trigger.normalize`.

  If evaluates to an empty list, will behave as if the normalize expression not provided.
---
* ``indexes`` - [`[ViewIndexInput]`]($gql:input:ViewIndexInput)
*
---
* ``searchIndexes`` - [`[ViewSearchIndexInput]`]($gql:input:ViewSearchIndexInput)
*

## CustomIndexFilter
Query conditions for a custom index.
#### Input Fields

---
* ``index`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `name` of the custom index to use.
---
* ``partition`` - [`[CustomIndexFilterValue]`]($gql:input:CustomIndexFilterValue)
* Query conditions for specifying the index partition to use.
---
* ``sort`` - [`[CustomIndexFilterValue]`]($gql:input:CustomIndexFilterValue)
* Query conditions for specifying sort order.

## CustomIndexFilterValue
Filter conditionals for querying the partition or sort key of a custom index.
#### Input Fields

---
* ``alias`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Identifier for the key to apply the filter to.
---
* ``value`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Conditions to apply at this key.

## DescribeStatementInput
#### Input Fields

---
* ``id`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## DescribeTableInput
#### Input Fields

---
* ``database`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``maxResults`` - [`Int!`](/docs/reference/graphql/types/scalar#int)
* The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
---
* ``nextToken`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``schema`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``table`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## DestinationInput
#### Input Fields

---
* ``files`` - [`FilesDestinationInput!`](/docs/reference/graphql/types/input#files-destination-input)
*

## DetachCalculationInput
#### Input Fields

---
* ``journalId`` - [`UUID`](/docs/reference/graphql/types/scalar#uuid)
* Journal to detach calculation.
---
* ``accountId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Account or set to detach calculation.
---
* ``calculationId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Calculation to detach.

## DimensionBetween
#### Input Fields

---
* ``begin`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* JSON object.
---
* ``end`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* JSON object.

## DimensionFilterValue
#### Input Fields

---
* ``eq`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* JSON object.
---
* ``like`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* JSON object.
---
* ``lt`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* JSON object.
---
* ``lte`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* JSON object.
---
* ``gt`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* JSON object.
---
* ``gte`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* JSON object.
---
* ``between`` - [`DimensionBetween`](/docs/reference/graphql/types/input#dimension-between)
*

## DocumentElementInput
#### Input Fields

---
* ``alias`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Alias for this element.
---
* ``value`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* The CEL expression for the value of this document element. _Example:_ ``"context.source.account_id"``
---
* ``type`` - [`CelType!`](/docs/reference/graphql/types/enum#cel-type)
* The type this document element resolves to.
---
* ``listOfType`` - [`Boolean!`](/docs/reference/graphql/types/scalar#boolean)
* If `true` resolves the type as a list of `type` (i.e. `[type]`) _Default:_ ``false``

## Effective
#### Input Fields

---
* ``cumulative`` - [`Date`](/docs/reference/graphql/types/scalar#date)
* Cumulative account balance as of a particular effective date. _Example:_ ``"2023-10-17"``
---
* ``period`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Account balance of a particular effective time period. Supported periods are in formats: `YYYY`, `YYYY-MM`, `YYYY-MM-DD`.
  Useful for reconciliation/balances files. _Example:_ ``"2023-10"``
---
* ``range`` - [`PeriodRange`](/docs/reference/graphql/types/input#period-range)
* Effective account balances over a range of time periods. Useful for income statement. _Example:_ ``{gte: "2023-10", lte: "2023-12"}``
---
* ``periods`` - [`Periods`](/docs/reference/graphql/types/input#periods)
* Per-period balances across the half-open interval `[gte, lt)`. Granularity
  is inferred from the format of `gte`/`lt` (`YYYY`, `YYYY-MM`, or
  `YYYY-MM-DD`); both bounds must use the same format and `lt` must be
  strictly greater than `gte`.

  With `accumulate: false` (default), each `effectiveBalances` entry is that
  period's own activity and the top-level balance is the sum across the
  range — useful for income-statement-style queries.

  With `accumulate: true`, each entry is the cumulative balance through the
  end of its period and the top-level balance is the closing cumulative just
  before `lt` — useful for daily statement snapshots and "as-of" queries.
  The opening balance for the range can be recovered either by querying the
  prior period with `cumulative`, or by subtracting the first entry's
  activity from its cumulative. _Example:_ ``{gte: "2024-03-01", lt: "2024-04-01", accumulate: true}``
---
* ``where`` - [`BalanceHistoryFilterInput`](/docs/reference/graphql/types/input#balance-history-filter-input)
* Optional point-in-time filter for resolving historical effective balances.

## EndpointFilterInput
#### Input Fields

---
* ``endpointId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `endpointId` field. Required when using index `EndpointInded.ENDPOINT_ID`.
---
* ``status`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `status` field. Only available when using index `EndpointIndex.STATUS`.

## EndpointIndexInput
#### Input Fields

---
* ``name`` - [`EndpointIndex!`](/docs/reference/graphql/types/enum#endpoint-index)
*
---
* ``sort`` - [`SortOrder`](/docs/reference/graphql/types/enum#sort-order)
* `ASC` (ascending) or `DESC` (descending).

## EndpointInput
Fields to create a new endpoint.
#### Input Fields

---
* ``endpointId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Unique identifier for the endpoint.
---
* ``status`` - [`EndpointStatus`](/docs/reference/graphql/types/enum#endpoint-status)
* Current status of the endpoint. _Default:_ ``ENABLED``
---
* ``endpointType`` - [`EndpointType`](/docs/reference/graphql/types/enum#endpoint-type)
* The type of endpoint this endpoint is. _Default:_ ``WEBHOOK``
---
* ``url`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The url where this endpoint will transmit subscribed events to.
---
* ``subscription`` - [`[String!]!`]($gql:scalar:String)
* A list of subscriptions that are available, supporting wildcards `*`.

  Format: `<entity>.<inserted|updated|deleted>`
  Supported entities:
  - journal
  - account
  - accountcontext
  - accountset
  - accountsetmember
  - trancode
  - transaction
  - entry
  - balance
  - customindex
  - custombalance
  - endpoint
---
* ``description`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* description of this endpoint.
---
* ``filters`` - [`ExpressionMap`](/docs/reference/graphql/types/scalar#expression-map)
* Map of named CEL expressions specifying conditions for sending an event to the endpoint.

  Record is only sent if _all_ expressions evaluate to true, i.e. they are combined with a logical AND. Each expression must return a boolean value.

## EndpointUpdateInput
Fields to update an existing endpoint.
#### Input Fields

---
* ``status`` - [`EndpointStatus`](/docs/reference/graphql/types/enum#endpoint-status)
* Current status of the endpoint.
---
* ``endpointType`` - [`EndpointType`](/docs/reference/graphql/types/enum#endpoint-type)
* The type of endpoint this endpoint is.
---
* ``url`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The url where this endpoint will transmit subscribed events to.
---
* ``subscription`` - [`[String]`]($gql:scalar:String)
* A list of subscriptions that are available, supporting wildcards `*`.

  Format: `<entity>.<created|updated|deleted>`
  Supported entities:
  - journal
  - account
  - accountcontext
  - accountset
  - accountsetmember
  - trancode
  - transaction
  - entry
  - balance
  - customindex
  - custombalance
  - endpoint
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* description of this endpoint.
---
* ``filters`` - [`ExpressionMap`](/docs/reference/graphql/types/scalar#expression-map)
* Map of named CEL expressions specifying conditions for sending an event to the endpoint.

  Record is only sent if _all_ expressions evaluate to true, i.e. they are combined with a logical AND. Each expression must return a boolean value.

## EntryFilterInput
Filter conditions to apply to an entry query.
Filters are only applied if the field is used by the specified index.
#### Input Fields

---
* ``entryId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `entryId` field. Required when using index `EntryIndex.ENTRY_ID`.
---
* ``journalId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Conditional logic by which to apply a filter on a query.

  Each FilterValue object must contain just one key/value pair.

  Valid: `{ eq: "123" }`\
  Invalid: `{ eq: "123", gt: "100" }`
---
* ``currency`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Conditional logic by which to apply a filter on a query.

  Each FilterValue object must contain just one key/value pair.

  Valid: `{ eq: "123" }`\
  Invalid: `{ eq: "123", gt: "100" }`
---
* ``layer`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Conditional logic by which to apply a filter on a query.

  Each FilterValue object must contain just one key/value pair.

  Valid: `{ eq: "123" }`\
  Invalid: `{ eq: "123", gt: "100" }`
---
* ``transactionId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `transactionId` field. Required when using index `EntryIndex.TRANSACTION_ID`.
---
* ``custom`` - [`CustomIndexFilter`](/docs/reference/graphql/types/input#custom-index-filter)
* Filter conditions for a custom index. Only available when using index `EntryIndex.CUSTOM`.
---
* ``search`` - [`SearchFilter`](/docs/reference/graphql/types/input#search-filter)
* Filter conditions for a search.  Only available when using index `EntryIndex.SEARCH`.

## EntryIndexInput
Specify the pre-defined EntryIndex and sort order to use in a query.
#### Input Fields

---
* ``name`` - [`EntryIndex!`](/docs/reference/graphql/types/enum#entry-index)
* Indexes for querying Entries. To optimize query performance and apply desired filters, choose the appropriate index.
---
* ``sort`` - [`SortOrder`](/docs/reference/graphql/types/enum#sort-order)
* `ASC` (ascending) or `DESC` (descending).

## EntryUpdateInput
Entry fields to update.
#### Input Fields

---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Description of the entry.
---
* ``metadata`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* Metadata attached to this entry.

## ExecuteStatementInput
#### Input Fields

---
* ``sql`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## ExecuteStatementSyncInput
#### Input Fields

---
* ``sql`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## ExportInput
#### Input Fields

---
* ``entity`` - [`ExportEntity!`](/docs/reference/graphql/types/enum#export-entity)
* Which Entity to export.
---
* ``version`` - [`ExportVersion!`](/docs/reference/graphql/types/enum#export-version)
* If `HISTORICAL`, exports every version of the entity.
  If `LATEST`, exports the latest version of the entity.
---
* ``format`` - [`ExportFormat!`](/docs/reference/graphql/types/enum#export-format)
* Output format for the export. Reccomend JSON or Parquet.
---
* ``compression`` - [`ExportCompression!`](/docs/reference/graphql/types/enum#export-compression)
* Compression options for the export. Recommend picking one, for lower read units.
---
* ``destination`` - [`DestinationInput!`](/docs/reference/graphql/types/input#destination-input)
* Destination for export. Currently only files API supported.
---
* ``formatOptions`` - [`FormatOptions`](/docs/reference/graphql/types/input#format-options)
* Additional formatting options for export files.
---
* ``fromTimestamp`` - [`Timestamp`](/docs/reference/graphql/types/scalar#timestamp)
* Optionally define export from timestamp.
  Returns records which were created with `timestamp >= fromTimestamp`
  Used together with `toTimestamp` is the half open interval `fromTimestamp >= timestamp && timestamp < toTimestamp`.
---
* ``toTimestamp`` - [`Timestamp`](/docs/reference/graphql/types/scalar#timestamp)
* Optionall define export to timestamp.
  Returns records which were created with `timestamp < toTimestamp`
  Used together with `fromTimestamp` is the half open interval `fromTimestamp >= timestamp && timestamp < toTimestamp`.

## FilesDestinationInput
#### Input Fields

---
* ``keyPrefix`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## FilterValue
Conditional logic by which to apply a filter on a query.

Each FilterValue object must contain just one key/value pair.

Valid: `{ eq: "123" }`\
Invalid: `{ eq: "123", gt: "100" }`
#### Input Fields

---
* ``eq`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``like`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``lt`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``lte`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``gt`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``gte`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``between`` - [`Between`](/docs/reference/graphql/types/input#between)
*

## FormatOptions
#### Input Fields

---
* ``nullAs`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``header`` - [`Boolean`](/docs/reference/graphql/types/scalar#boolean)
* The `Boolean` scalar type represents `true` or `false`.
---
* ``delimiter`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## GetStatementResultInput
#### Input Fields

---
* ``id`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``nextToken`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## ISO8583CreateConfigInput
#### Input Fields

---
* ``configId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Unique identifier for this configuration.
---
* ``journalId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Journal to post settlements into.
---
* ``settlementAccountId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* ISO8583 Settlement Account.
---
* ``timeZone`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* IANA Timezone identifier for the configuration. _Example:_ ``"America/Chicago"``
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Description of this configuration.
---
* ``processor`` - [`ISO8583ProcessorType!`](/docs/reference/graphql/types/enum#iso8583processor-type)
* Processor type for this configuration.
---
* ``processorSpec`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* Processor configuration.
---
* ``openToBuyConfig`` - [`OpenToBuyConfigInput`](/docs/reference/graphql/types/input#open-to-buy-config-input)
* Balance to use for balance inquiry and partial authorizations.

## ISO8583UpdateConfigInput
#### Input Fields

---
* ``timeZone`` - [`String`](/docs/reference/graphql/types/scalar#string)
* IANA Timezone identifier for the configuration. _Example:_ ``"America/Chicago"``
---
* ``openToBuyConfig`` - [`OpenToBuyConfigInput`](/docs/reference/graphql/types/input#open-to-buy-config-input)
* Balance to use for balance inquiry and partial authorizations.
---
* ``processor`` - [`ISO8583ProcessorType`](/docs/reference/graphql/types/enum#iso8583processor-type)
* Processor type for this configuration.
---
* ``processorSpec`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* Processor configuration.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Description of this configuration.

## IndexKeyInput
Specify a named expression to sort the records within a custom index.

Used for sorting and for querying by range conditions.
#### Input Fields

---
* ``alias`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Identifier for this key. Should be a short, human-readable name.
---
* ``value`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* CEL expression which resolves to the value that is to be sorted.

  Within the expression, the `document` object represents the record. To sort by a field on the record, use `document.<field_name>`.
---
* ``sort`` - [`SortOrder!`](/docs/reference/graphql/types/enum#sort-order)
* Whether the sort is in ascending or descending order.
---
* ``type`` - [`IndexDataType`](/docs/reference/graphql/types/enum#index-data-type)
* Optionally provide explicit type for value. Useful for metadata values which may be list of monomorphic types. _Example:_ ``"type: STRING"``

## JournalConfigInput
Fields to create a system configuration for a journal.
#### Input Fields

---
* ``enableEffectiveBalances`` - [`Boolean`](/docs/reference/graphql/types/scalar#boolean)
* When `true`, records point-in-time effective balances for all accounts in the journal.
  Defaults to `false`.

## JournalFilterInput
Filter conditions to apply to a journal query.
Filters are only applied if the field is used by the specified index.
#### Input Fields

---
* ``journalId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `journalId` field. Required when using index `JournalIndex.JOURNAL_ID`.
---
* ``name`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `name` field. Only available when using index `JournalIndex.NAME`.
---
* ``status`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `status` field. Only available when using index `JournalIndex.STATUS`.
---
* ``code`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `code` field. Only available when using index `JournalIndex.CODE`.

## JournalIndexInput
Specify the pre-defined JournalIndex and sort order to use in a query.
#### Input Fields

---
* ``name`` - [`JournalIndex!`](/docs/reference/graphql/types/enum#journal-index)
* Indexes for querying Journals. To optimize query performance and apply desired filters, choose the appropriate index.
---
* ``sort`` - [`SortOrder`](/docs/reference/graphql/types/enum#sort-order)
* `ASC` (ascending) or `DESC` (descending).

## JournalInput
Fields to create a new Journal.
#### Input Fields

---
* ``journalId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Unique identifier for the journal.
---
* ``name`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Name for the journal.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Description of the journal.
---
* ``status`` - [`Status!`](/docs/reference/graphql/types/enum#status)
* Operational status of the journal. _Default:_ ``ACTIVE``
---
* ``code`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Optional unique code for the journal.
---
* ``config`` - [`JournalConfigInput`](/docs/reference/graphql/types/input#journal-config-input)
* System config for the journal.

## JournalUpdateInput
Journal fields to update.
#### Input Fields

---
* ``name`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Name for the journal.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Description of the journal.
---
* ``status`` - [`Status`](/docs/reference/graphql/types/enum#status)
* Operational status of the journal.
---
* ``code`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The code used to refer to this journal.

## KVFilterInput
#### Input Fields

---
* ``namespace`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the built-in `namespace` field.
---
* ``key`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the built-in `key` field.
---
* ``custom`` - [`CustomIndexFilter`](/docs/reference/graphql/types/input#custom-index-filter)
* Filter on a custom index.

## KVIndexInput
#### Input Fields

---
* ``name`` - [`KVIndex!`](/docs/reference/graphql/types/enum#kvindex)
* Index to query.
---
* ``sort`` - [`SortOrder!`](/docs/reference/graphql/types/enum#sort-order)
* Sort order within the selected index. _Default:_ ``ASC``

## KVPutInput
#### Input Fields

---
* ``namespace`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Namespace for the record. Max 512 UTF-8 bytes.
---
* ``key`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Key within the namespace. Max 512 UTF-8 bytes.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Optional description. Counts toward the 256 KiB persisted payload budget.
---
* ``value`` - [`Value!`](/docs/reference/graphql/types/scalar#value)
* JSON payload to store. Together with `description`, must be <= 256 KiB.
---
* ``conditions`` - [`ExpressionMap`](/docs/reference/graphql/types/scalar#expression-map)
* CEL conditions evaluated against the request context before the write is applied.

  `document` and `value` are bound to the current KV record (the version
  about to be replaced), or `null` when no record exists yet — so a
  create-only guard can be written as `document == null`. Condition
  expressions are persisted on the written `KVValue` for auditing,
  keyed by the map key.

## KVUpdateInput
#### Input Fields

---
* ``namespace`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Namespace for the record. Max 512 UTF-8 bytes.
---
* ``key`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Key within the namespace. Max 512 UTF-8 bytes.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* When set, replaces the stored description on the written version.
  When omitted, the existing description is preserved. Counts toward
  the 256 KiB persisted payload budget.
---
* ``expressions`` - [`ExpressionValue!`](/docs/reference/graphql/types/scalar#expression-value)
* Expression-valued RFC 7396 merge patch. String leaves are CEL expressions;
  non-string leaves are literal patch values.
---
* ``conditions`` - [`ExpressionMap`](/docs/reference/graphql/types/scalar#expression-map)
* CEL conditions evaluated before the write. `document` and `value`
  are bound to the current KV record; `UpdateKv` fails with
  `NOT_FOUND` before conditions run when the record does not exist,
  so `document` is always non-null here. Condition expressions are
  persisted on the written `KVValue` for auditing, keyed by the map
  key.

## LimitInput
#### Input Fields

---
* ``timestampSource`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* Uses a timestamp from the specified source for picking the balance limit.
  By default uses the system `transaction.timestamp`.
  Must resolve to a CEL `timestamp`.
  @example("timestamp(context.vars.transaction.?metadata.ts.orValue(context.transaction.timestamp))")
---
* ``balance`` - [`[BalanceLimitInput!]!`]($gql:input:BalanceLimitInput)
*

## ListDatabasesInput
#### Input Fields

---
* ``maxResults`` - [`Int!`](/docs/reference/graphql/types/scalar#int)
* The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
---
* ``nextToken`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## ListSchemasInput
#### Input Fields

---
* ``maxResults`` - [`Int!`](/docs/reference/graphql/types/scalar#int)
* The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
---
* ``nextToken`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``schemaPattern`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``database`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## ListStatementsInput
#### Input Fields

---
* ``maxResults`` - [`Int!`](/docs/reference/graphql/types/scalar#int)
* The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
---
* ``nextToken`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``statementName`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``status`` - [`SqlStatementStatus!`](/docs/reference/graphql/types/enum#sql-statement-status)
*

## ListTablesInput
#### Input Fields

---
* ``maxResults`` - [`Int!`](/docs/reference/graphql/types/scalar#int)
* The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
---
* ``database`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``nextToken`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``schemaPattern`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``tablePattern`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## LithicTransactionInput
#### Input Fields

---
* ``accountId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Unique identifier for the account this transaction will post to.
---
* ``webhook`` - [`JSON!`](/docs/reference/graphql/types/scalar#json)
* The [Transaction](https://docs.lithic.com/docs/transactions)
  webhook object from Lithic.
---
* ``journalId`` - [`UUID`](/docs/reference/graphql/types/scalar#uuid)
* Unique identifier for the journal this transaction applies to.
  If not provided, defaults to the default journal that card transaction codes are configured with.
---
* ``settlementAccountId`` - [`UUID`](/docs/reference/graphql/types/scalar#uuid)
* Unique identifier of the settlement account that transactions
  will settle from. If not provided, defaults to the default
  card settlement account.

## MoneyFormatInput
Formatting options for money amounts.
#### Input Fields

---
* ``locale`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Locale represents a Unicode locale identifier. _Examples:_ ``'de-DE'``, ``'hi-IN'``
---
* ``groupDigits`` - [`Boolean!`](/docs/reference/graphql/types/scalar#boolean)
* When true, whole digits will be grouped according to locale. For example, with locale `en-US` the number `1234567.89` is formatted with grouped digits as `1,234,567.89`. With other locales, these groupings may apply differently. _Default:_ ``false``
---
* ``addPlusSign`` - [`Boolean!`](/docs/reference/graphql/types/scalar#boolean)
* When true, prefix the number with plus `+` symbol when the number is positive. Negative numbers are always displayed with a minus `-` symbol. _Default:_ ``false``
---
* ``roundingMode`` - [`RoundingMode!`](/docs/reference/graphql/types/enum#rounding-mode)
* Defines the rounding behavior when the fractional units exceed the `maxDigits`. _Default:_ ``HALF_UP``
---
* ``currencyDisplay`` - [`CurrencyDisplay!`](/docs/reference/graphql/types/enum#currency-display)
* Defines how to render the currency indicator. _Default:_ ``SYMBOL``
---
* ``minDigits`` - [`Int!`](/docs/reference/graphql/types/scalar#int)
* Minimum number of fractional digits. When not specified, it will use the default fractional digits for the currency. For example, USD amounts default to 2 minimum digits. _Default:_ ``255``
---
* ``maxDigits`` - [`Int!`](/docs/reference/graphql/types/scalar#int)
* Maximum number of fractional digits to show, which informs how rounding behavior is applied via the `roundingMode`. Defaults to 6. _Default:_ ``6``

## MoneyInput
#### Input Fields

---
* ``units`` - [`Decimal!`](/docs/reference/graphql/types/scalar#decimal)
* Decimal is a fixed-precision data type supporting exact representation of numeric values.
---
* ``currency`` - [`CurrencyCode!`](/docs/reference/graphql/types/scalar#currency-code)
* ISO 4217 standard three-character code indicating the currency.

## OpenToBuyConfigInput
#### Input Fields

---
* ``openToBuy`` - [`OpenToBuyType!`](/docs/reference/graphql/types/enum#open-to-buy-type)
*  _Default:_ ``VELOCITY_BALANCE``

## OpensearchSchemaBinaryMappingInput
#### Input Fields

---
* ``type`` - [`OpensearchSchemaBinaryMappingType!`](/docs/reference/graphql/types/enum#opensearch-schema-binary-mapping-type)
*
---
* ``celExpression`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* The CEL expression to index for the document. _Example:_ ``"document.is_void"``

## OpensearchSchemaBooleanMappingInput
#### Input Fields

---
* ``type`` - [`OpensearchSchemaBooleanMappingType!`](/docs/reference/graphql/types/enum#opensearch-schema-boolean-mapping-type)
*
---
* ``celExpression`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* A literal CEL expression to be evaluated.

## OpensearchSchemaDateMappingInput
#### Input Fields

---
* ``type`` - [`OpensearchSchemaDateMappingType!`](/docs/reference/graphql/types/enum#opensearch-schema-date-mapping-type)
*
---
* ``celExpression`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* The CEL expression to index for the document. _Example:_ ``"document.effective"``

## OpensearchSchemaInput
#### Input Fields

---
* ``mappings`` - [`OpensearchSchemaObjectMappingInput!`](/docs/reference/graphql/types/input#opensearch-schema-object-mapping-input)
*

## OpensearchSchemaMappingInput
Use one of `binaryType`, `numericType`, `booleanType`,`dateType`, `objectType` or `stringType`.
#### Input Fields

---
* ``binaryType`` - [`OpensearchSchemaBinaryMappingInput`](/docs/reference/graphql/types/input#opensearch-schema-binary-mapping-input)
*
---
* ``numericType`` - [`OpensearchSchemaNumericMappingInput`](/docs/reference/graphql/types/input#opensearch-schema-numeric-mapping-input)
*
---
* ``booleanType`` - [`OpensearchSchemaBooleanMappingInput`](/docs/reference/graphql/types/input#opensearch-schema-boolean-mapping-input)
*
---
* ``dateType`` - [`OpensearchSchemaDateMappingInput`](/docs/reference/graphql/types/input#opensearch-schema-date-mapping-input)
*
---
* ``objectType`` - [`OpensearchSchemaObjectMappingInput`](/docs/reference/graphql/types/input#opensearch-schema-object-mapping-input)
*
---
* ``stringType`` - [`OpensearchSchemaStringMappingInput`](/docs/reference/graphql/types/input#opensearch-schema-string-mapping-input)
*

## OpensearchSchemaMappingsInput
#### Input Fields

---
* ``key`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``value`` - [`OpensearchSchemaMappingInput!`](/docs/reference/graphql/types/input#opensearch-schema-mapping-input)
* Use one of `binaryType`, `numericType`, `booleanType`,`dateType`, `objectType` or `stringType`.

## OpensearchSchemaMultiFieldInput
#### Input Fields

---
* ``stringType`` - [`OpensearchSchemaStringMultiFieldInput`](/docs/reference/graphql/types/input#opensearch-schema-string-multi-field-input)
*

## OpensearchSchemaMultiFieldsInput
#### Input Fields

---
* ``key`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``value`` - [`OpensearchSchemaMultiFieldInput!`](/docs/reference/graphql/types/input#opensearch-schema-multi-field-input)
*

## OpensearchSchemaNumericMappingInput
#### Input Fields

---
* ``type`` - [`OpensearchSchemaNumericMappingType!`](/docs/reference/graphql/types/enum#opensearch-schema-numeric-mapping-type)
*
---
* ``celExpression`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* The CEL expression to index for the document.
  @example("document.amount.units()")

## OpensearchSchemaObjectMappingInput
#### Input Fields

---
* ``type`` - [`OpensearchSchemaObjectMappingType!`](/docs/reference/graphql/types/enum#opensearch-schema-object-mapping-type)
*
---
* ``properties`` - [`[OpensearchSchemaMappingsInput]`]($gql:input:OpensearchSchemaMappingsInput)
*

## OpensearchSchemaStringMappingInput
#### Input Fields

---
* ``type`` - [`OpensearchSchemaStringMappingType!`](/docs/reference/graphql/types/enum#opensearch-schema-string-mapping-type)
*
---
* ``celExpression`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* The CEL expression to index for the document. _Example:_ ``"document.description"``
---
* ``fields`` - [`[OpensearchSchemaMultiFieldsInput]`]($gql:input:OpensearchSchemaMultiFieldsInput)
* Provide multi-field mappings for this field.

## OpensearchSchemaStringMultiFieldInput
#### Input Fields

---
* ``type`` - [`OpensearchSchemaStringMappingType!`](/docs/reference/graphql/types/enum#opensearch-schema-string-mapping-type)
*

## ParamDefinitionInput
Define a parameter that can be used when posting transactions using this tran code.
#### Input Fields

---
* ``name`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Name for the parameter.
  This is how values passed are accessed. For example, a parameter with name `fromAccount` can be accessed in the `accountId` field of an TranCodeEntryInput with `params.fromAccount`.
---
* ``type`` - [`ParamDataType!`](/docs/reference/graphql/types/enum#param-data-type)
* Data type for the parameter. _Default:_ ``STRING``
---
* ``default`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* Default value for the parameter.
  If not provided, the parameter is consider a 'required' parameter, and a value must be provided when posting a transaction.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Describe the purpose of this parameter. Help an engineer out.
---
* ``example`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* Example value used for type-checking CEL expressions at tran code creation time.
  Does NOT provide a runtime default — use `default` for that.

## PartitionKeyInput
Specify a named expression to define a partition key.
#### Input Fields

---
* ``alias`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Identifier for this partition key. Should be a short, human-readable name.
---
* ``value`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* CEL expression which resolves to the value that is to be used for the partition key.

  Within the expression, the `document` object represents the record. To access a field on the document, use `document.<field_name>`.
---
* ``type`` - [`IndexDataType`](/docs/reference/graphql/types/enum#index-data-type)
* Optionally provide explicit type for value. Useful for metadata values which may be list of monomorphic types. _Example:_ ``"type: STRING"``

## PeriodRange
Closed-closed period range `[gte, lte]` used by the `range` effective variant.
#### Input Fields

---
* ``lte`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``gte`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## Periods
Half-open enumeration of periods `[gte, lt)` used by the `periods` effective
variant. `gte` is inclusive, `lt` is exclusive, and `lt` must be strictly
greater than `gte`.
#### Input Fields

---
* ``gte`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``lt`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``accumulate`` - [`Boolean`](/docs/reference/graphql/types/scalar#boolean)
* When `true`, each `effectiveBalances` entry is the cumulative balance
  through the end of its period and the top-level balance is the closing
  cumulative just before `lt`. When `false` (default), each entry is that
  period's own activity and the top-level balance is the sum across the range. _Default:_ ``false``

## PolicyInput
#### Input Fields

---
* ``effect`` - [`PolicyEffect!`](/docs/reference/graphql/types/enum#policy-effect)
* Whether this Policy is an `ALLOW` or `DENY`.
---
* ``actions`` - [`[PolicyAction]!`]($gql:enum:PolicyAction)
* The set of actions to allow or deny.
---
* ``resources`` - [`[String]!`]($gql:scalar:String)
* The resources to allow or deny.
  In the format `<namespace>.<resource>`

  The following namespaces exist:
  - `financial`
  - `tenancy`
  - `public`
  - `system`

  As do the following resources in the financial namespace:

  - `Account`
  - `AccountSet`
  - `AccountSetMember`
  - `Transaction`
  - `Entry`
  - `Balance`
  - `TranCode`
  - `Journal`

  You can use `*` to wildcard as well.
---
* ``assertions`` - [`ExpressionMap`](/docs/reference/graphql/types/scalar#expression-map)
* A map of expressions to evaluate this policy with.

## RestoreInput
#### Input Fields

---
* ``from_region`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The region in the current tenant to restore from.
---
* ``to_region`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The region in the target `tenant` to restore to.
---
* ``tenant`` - [`CreateTenantInput!`](/docs/reference/graphql/types/input#create-tenant-input)
* The target tenant to create for restoration.
---
* ``excludeTables`` - [`[ExcludeTableEnum]`]($gql:enum:ExcludeTableEnum)
* List of tables to exclude from restoration.
---
* ``exportTime`` - [`Timestamp`](/docs/reference/graphql/types/scalar#timestamp)
* Timestamp, up to 35 days in the past, to indicate from what time to export.
---
* ``includeFileGlobs`` - [`[String]`]($gql:scalar:String)
* List of glob patterns for files to include in restoration.
  By default no files are restored. Must supply patterns to restore files.
  Example: ["*.json"] includes all top level json files.

## SearchFilter
SearchFilter supports Opensearch Query DSL under the "query" key

See https://opensearch.org/docs/latest/query-dsl/ for more information on how to construct these queries.
#### Input Fields

---
* ``index`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `name` of the search index to use.
---
* ``query`` - [`JSON!`](/docs/reference/graphql/types/scalar#json)
* The Opensearch DSL query to use.
---
* ``sort`` - [`[JSON]`]($gql:scalar:JSON)
* The open search DSL sort to use.

## TempCredentials
#### Input Fields

---
* ``accessKeyId`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``secretAccessKey`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``sessionToken`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## TranCodeEntryInput
Defines the values for the entries written when transactions are posted with this tran code.
#### Input Fields

---
* ``accountId`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* Account ID for an entry written when this tran code is invoked.
  Expression must resolve to a UUID type.
---
* ``units`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* Units of currency for an entry written when this tran code is invoked.
  Expression must resolve to a Decimal type.
---
* ``currency`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* Currency used for an entry written when this tran code is invoked.
  Expression must resolve to a CurrencyCode type.
---
* ``direction`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* Direction for an entry written when this tran code is invoked.
  Expression must resolve to a DebitOrCredit enum type.
---
* ``entryType`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* Entry type for an entry written when this tran code is invoked.
  If omitted, defaults to `tranCode.code` with `_CR` or `_DR` appended depending on entry `direction`.
  Expression must resolve to a String type.
---
* ``layer`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* Layer for an entry written when this tran code is invoked.
  If omitted, defaults to `SETTLED` layer.
  Expression must resolve to a Layer enum type.
---
* ``description`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* Description for an entry written when this tran code is invoked."
  Expression must resolve to a String type.
---
* ``metadata`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* Metadata for the entry posted with this tran code.
  Expression must resolve to a JSON type. _Example:_ ``"{ 'x': 1, 'y': { 'z': 2 }}"``
---
* ``condition`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* A boolean expression that indicates if this entry should be written. _Example:_ ``"params.amount > 0"``

## TranCodeFilterInput
Filter conditions to apply to a tran code query.
Filters are only applied if the field is used by the specified index.
#### Input Fields

---
* ``tranCodeId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `tranCodeId` field. Required when using index `TranCodeIndex.TRAN_CODE_ID`.
---
* ``code`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `code` field. Only available when using index `TranCodeIndex.CODE`.
---
* ``status`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `status` field. Only available when using index `TranCodeIndex.STATUS`.
---
* ``custom`` - [`CustomIndexFilter`](/docs/reference/graphql/types/input#custom-index-filter)
* Filter conditions for a custom index. Only available when using index `TranCodeIndex.CUSTOM`.
---
* ``search`` - [`SearchFilter`](/docs/reference/graphql/types/input#search-filter)
* Filter conditions for a search.  Only available when using index `TranCodeIndex.SEARCH`.

## TranCodeIndexInput
Specify the pre-defined TranCodeIndex and sort order to use in a query.
#### Input Fields

---
* ``name`` - [`TranCodeIndex!`](/docs/reference/graphql/types/enum#tran-code-index)
* Indexes for querying TranCodes. To optimize query performance and apply desired filters, choose the appropriate index.
---
* ``sort`` - [`SortOrder`](/docs/reference/graphql/types/enum#sort-order)
* `ASC` (ascending) or `DESC` (descending).

## TranCodeInput
Fields to create a new TranCode.
#### Input Fields

---
* ``tranCodeId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Internal UUID for the transaction code record.
---
* ``code`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The tran code represented as a unique string identifier. _Example:_ ``'ACH_CREDIT'``
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Explanation of what this tran code represents and how it should be used. This provides documentation for the tran code.
---
* ``params`` - [`[ParamDefinitionInput]`]($gql:input:ParamDefinitionInput)
* Define the parameters that can be used when posting transactions using this tran code.
---
* ``transaction`` - [`TranCodeTransactionInput!`](/docs/reference/graphql/types/input#tran-code-transaction-input)
* Define the values for the transaction posted when this tran code is invoked.
---
* ``entries`` - [`[TranCodeEntryInput!]!`]($gql:input:TranCodeEntryInput)
* Define the values of entries written when transactions are posted with this tran code.
---
* ``metadata`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* Metadata attached to this tran code.
---
* ``vars`` - [`ExpressionNestedMap`](/docs/reference/graphql/types/scalar#expression-nested-map)
* Calculation area evaluated and injected as `vars` for transaction and entry evaluation.
---
* ``assertions`` - [`ExpressionMap`](/docs/reference/graphql/types/scalar#expression-map)
* Named boolean CEL expressions that must all evaluate to true when posting a transaction.
  Evaluated after params and vars are resolved. Failures return BadRequest.
---
* ``workflow`` - [`TranCodeWorkflowInput`](/docs/reference/graphql/types/input#tran-code-workflow-input)
* Workflow execution to trigger when transactions are posted with this tran code.

## TranCodeTransactionInput
Define the values for the transaction posted when this tran code is invoked.
#### Input Fields

---
* ``effective`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* Effective date for the transaction posted with this tran code.
  If ommitted, defaults to `date.Today()`.
  Expression must be a valid ISO 8601 formatted date.
  @example("date('2022-12-23')")
---
* ``journalId`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* Journal ID for the transaction posted with this tran code.
  If omitted, the default journal will be used.
  Expression must resolve to a UUID type.
  @example("uuid('b28f5684-0834-4292-8016-d2f2fb0367a9')")
---
* ``correlationId`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* Correlation ID for the transaction posted with this tran code.
  Expression must resolve to a String type. _Example:_ ``"'5a028997'"``
---
* ``externalId`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* External ID for the transaction posted with this tran code.
  Expression must resolve to a String type. _Example:_ ``"'45415819'"``
---
* ``description`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* Description for the transaction posted with this tran code.
  Expression must resolve to a String type.
  @example("'TX for ' + string(params.amount)")
---
* ``metadata`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* Metadata for the transaction posted with this tran code.
  Expression must resolve to a JSON type. _Example:_ ``"{ 'x': 1, 'y': { 'z': 2 }}"``

## TranCodeUpdateInput
TranCode fields to update.
#### Input Fields

---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Explanation of what this tran code represents and how it should be used. This provides documentation for the tran code.
---
* ``params`` - [`[ParamDefinitionInput]`]($gql:input:ParamDefinitionInput)
* Define the parameters that can be used when posting transactions using this tran code.
  Replaces existing parameters definition.
---
* ``transaction`` - [`TranCodeTransactionInput`](/docs/reference/graphql/types/input#tran-code-transaction-input)
* Define values for transaction posted when this tran code is invoked.
  Replaces existing transaction definition.
---
* ``entries`` - [`[TranCodeEntryInput]`]($gql:input:TranCodeEntryInput)
* Define the values of entries written when transactions are posted with this tran code.
  Replaces existing entry definition.
---
* ``status`` - [`Status`](/docs/reference/graphql/types/enum#status)
* Operational status of the tran code.
---
* ``metadata`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* Metadata attached to this tran code.
---
* ``vars`` - [`ExpressionNestedMap`](/docs/reference/graphql/types/scalar#expression-nested-map)
* Variables for computation.
---
* ``assertions`` - [`ExpressionMap`](/docs/reference/graphql/types/scalar#expression-map)
* Named boolean CEL expressions that must all evaluate to true when posting a transaction.
  Evaluated after params and vars are resolved. Failures return BadRequest.
---
* ``workflow`` - [`TranCodeWorkflowInput`](/docs/reference/graphql/types/input#tran-code-workflow-input)
* Workflow execution to trigger when transactions are posted with this tran code.

## TranCodeWorkflowInput
Input for workflow execution in tran code definition.
#### Input Fields

---
* ``workflowId`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* CEL expression for workflow ID.
---
* ``executionId`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* CEL expression for execution ID.
---
* ``task`` - [`Expression!`](/docs/reference/graphql/types/scalar#expression)
* CEL expression for task name.
---
* ``params`` - [`ExpressionMap`](/docs/reference/graphql/types/scalar#expression-map)
* CEL expressions for workflow params.

## TransactionExceptionInput
#### Input Fields

---
* ``type`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Human readable code that describes the type of exception. _Example:_ ``"FRAUD"``
---
* ``message`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Human readable message that gives contextual detail about why this exception has occurred. _Example:_ ``"fraud system indicated 95% chance of fraud"``
---
* ``detail`` - [`JSON!`](/docs/reference/graphql/types/scalar#json)
* Arbitrary structured data about this particular exception.

## TransactionFilterInput
Filter conditions to apply to a transaction query.
Filters are only applied if the field is used by the specified index.
#### Input Fields

---
* ``journalId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Specify the Journal to use with `eq`. If omitted, the default journal will be used.
---
* ``transactionId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `transactionId` field. Required when using index `TransactionIndex.TRANSACTION_ID`.
---
* ``correlationId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `correlationId` field. Required when using index `TransactionIndex.CORRELATION_ID`.
---
* ``externalId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `externalId` field. Required when using index `TransactionIndex.EXTERNAL_ID`.
---
* ``group`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `group` field. Required when using index `TransactionIndex.GROUP`.
---
* ``custom`` - [`CustomIndexFilter`](/docs/reference/graphql/types/input#custom-index-filter)
* Filter conditions for a custom index. Only available when using index `TransactionIndex.CUSTOM`.
---
* ``search`` - [`SearchFilter`](/docs/reference/graphql/types/input#search-filter)
* Filter conditions for a search.  Only available when using index `TransactionIndex.SEARCH`.
---
* ``transactionIds`` - [`[UUID]`]($gql:scalar:UUID)
* Retrieve up to 100 transactions by id.

## TransactionIndexInput
Specify the pre-defined TransactionIndex and sort order to use in a query.
#### Input Fields

---
* ``name`` - [`TransactionIndex!`](/docs/reference/graphql/types/enum#transaction-index)
* Indexes for querying Transactions. To optimize query performance and apply desired filters, choose the appropriate index.
---
* ``sort`` - [`SortOrder`](/docs/reference/graphql/types/enum#sort-order)
* `ASC` (ascending) or `DESC` (descending).

## TransactionInput
Fields to post a new Transaction.
#### Input Fields

---
* ``transactionId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* The ID is required to ensure an idempotent transaction.
---
* ``tranCode`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* String corresponding to the `code` of a TranCode to be used for this transaction.
---
* ``tranCodeVersion`` - [`Int`](/docs/reference/graphql/types/scalar#int)
* Version of the tran code to use in this transaction.
  If not supplied, the latest version will be used.
---
* ``params`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* Params object specifying values for the params defined in the corresponding TranCode.
---
* ``properties`` - [`TransactionPropertiesInput`](/docs/reference/graphql/types/input#transaction-properties-input)
* Set various transaction properties, including changing velocity enforcement.

## TransactionPropertiesInput
#### Input Fields

---
* ``overrideVelocityEnforcement`` - [`VelocityEnforcementInput`](/docs/reference/graphql/types/input#velocity-enforcement-input)
* Override velocity enforcement for this request. If a velocity control action will enforce at
  `VOID` or `REJECT`, will enforce with the action specified in this request.

  This is useful for force posts, where you want to disable a velocity control with an action of `WARN`.
---
* ``exception`` - [`TransactionExceptionInput`](/docs/reference/graphql/types/input#transaction-exception-input)
* If provided, will post transaction and immediately void. Will also create the transaction
  exception provided that is returned on `Transaction.exceptions`.  Using this option will
  automatically set the `overrideVelocityEnforcement.action` to `WARN`, allowing all
  velocity controls to evaluate and write exceptions at WARN level.
---
* ``idempotent`` - [`Boolean`](/docs/reference/graphql/types/scalar#boolean)
* Enables idempotent transaction posting. When true, if a transaction with this ID
  already exists, the existing transaction and its entries are returned instead of
  failing with a unique constraint violation.

  Guarantees:
  - Idempotency is keyed on `transactionId` — the caller must supply a stable ID.
  - The tran code must match: if the existing transaction was posted with a different
    tran code, the request fails with `BAD_REQUEST`.
  - The entries produced by the tran code must match: account, amount, direction,
    layer, and currency are compared. A mismatch fails with `BAD_REQUEST`.

  NOTE: During concurrent posting you may still receive a `TRANSACTION_ERROR` code;
  this is a standard retryable concurrency error.

## TransactionUpdateInput
Transaction fields to update.
#### Input Fields

---
* ``externalId`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Allows specifying a unique external ID associated with this transaction.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Description of the transaction.
---
* ``metadata`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* Arbitrary structured data about this transaction.

## UpdateClientInput
#### Input Fields

---
* ``policies`` - [`[PolicyInput]!`]($gql:input:PolicyInput)
* Replaces the existing policies with this new set of policies.

## UpdateGroupInput
#### Input Fields

---
* ``name`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* A human-friendly name for the group, such as 'Admins' or 'DataAnalysts'.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* A brief description of the group's purpose, intended to provide additional context.
---
* ``policy`` - [`String`](/docs/reference/graphql/types/scalar#string)
* A set of policies to apply to this group, formatted as a JSON list that define the permissions granted to users within this group.

  Valid actions include `db:Insert`, `db:Update`, `db:Delete`, `db:Select` or wildcard `*`

  Example:

  ```
  policy: "[{\"actions\": [\"*\"],\"effect\": \"DENY\",\"resources\":[\"*\"],\"assertions\": {\"always false\": \"1 == 0\"}}]"
  ```

## UpdateLimitInput
#### Input Fields

---
* ``timestampSource`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* Uses timestamp from the specified source for picking the balance limit.
  By default uses the transaction timestamp.
  Must resolve to a CEL `timestamp`.
  @example("timestamp(context.vars.transaction.?metadata.ts.orValue(context.transaction.timestamp))")
---
* ``balance`` - [`[BalanceLimitInput]`]($gql:input:BalanceLimitInput)
*

## UpdateTenantInput
#### Input Fields

---
* ``accountId`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* A globally unique identifier representing an environment within the organization.

  This accountId, when combined with an AWS region, is used to calculate the database tenant.
---
* ``name`` - [`String`](/docs/reference/graphql/types/scalar#string)
* A human-friendly name for the tenant, used for display purposes and easier identification.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* A brief description of the tenant, providing additional context about its purpose or characteristics.

## UpdateUserInput
#### Input Fields

---
* ``groupIds`` - [`[UUID]`]($gql:scalar:UUID)
* A list of unique identifiers for the groups to which the user belongs. The user's permissions are determined by the combined policies of these groups.
---
* ``email`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The user's email address, which serves as a unique identifier and primary means of contact.

## UpdateVelocityControlInput
#### Input Fields

---
* ``name`` - [`String`](/docs/reference/graphql/types/scalar#string)
* If set, updates name of velocity control.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* If set, updates description of velocity control.
---
* ``enforcement`` - [`VelocityEnforcementInput`](/docs/reference/graphql/types/input#velocity-enforcement-input)
* If set, updates the enforcement type of the velocity control.
---
* ``condition`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* If set, updates the condition for the velocity control.

## UpdateVelocityLimitInput
#### Input Fields

---
* ``name`` - [`String`](/docs/reference/graphql/types/scalar#string)
* If set, updates name of velocity limit.
---
* ``description`` - [`String`](/docs/reference/graphql/types/scalar#string)
* If set, updates description of velocity limit.
---
* ``limit`` - [`UpdateLimitInput`](/docs/reference/graphql/types/input#update-limit-input)
* If set, updates the limit of the velocity limit.
---
* ``currency`` - [`CurrencyCode`](/docs/reference/graphql/types/scalar#currency-code)
* If set, sets the currency of the velocity limit. Cannot unset.
---
* ``condition`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* If Set, sets the condition of the velocity limit.

## UsageInput
#### Input Fields

---
* ``start`` - [`Date!`](/docs/reference/graphql/types/scalar#date)
* Start date at midnight UTC.
---
* ``end`` - [`Date!`](/docs/reference/graphql/types/scalar#date)
* End date at midnight UTC.

## VelocityControlFilterInput
#### Input Fields

---
* ``velocityControlId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `velocityControlId` field. Required when using index `VelocityControlIndex.VELOCITY_CONTROL_ID`.
---
* ``velocityLimitId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `velocityLimitId` field. Required when using index `VelocityControlIndex.VELOCITY_RULE_ID`.
---
* ``name`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `name` field. Required when using index `VelocityControlIndex.NAME`.
---
* ``accountId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on attached accounts via `accountId`. Required when using index `VelocityControlIndex.ACCOUNT_ID`.

## VelocityControlIndexInput
#### Input Fields

---
* ``name`` - [`VelocityControlIndex!`](/docs/reference/graphql/types/enum#velocity-control-index)
*
---
* ``sort`` - [`SortOrder`](/docs/reference/graphql/types/enum#sort-order)
* `ASC` (ascending) or `DESC` (descending).

## VelocityControlInput
#### Input Fields

---
* ``velocityControlId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Unique identifier for this velocity control.
---
* ``name`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Human readable name for this velocity control.
---
* ``description`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Human readable description for this velocity control.
---
* ``enforcement`` - [`VelocityEnforcementInput!`](/docs/reference/graphql/types/input#velocity-enforcement-input)
* The type of enforcement this velocity control generates.
---
* ``condition`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* A boolean expression indicating if this control should trigger enforcement.
  The `account`, `transaction` and `entry` are available for use on `context.vars`.
  @example("context.vars.transaction.?metadata.skipVelocityControl.orElse(false))")
---
* ``velocityLimitIds`` - [`[UUID]`]($gql:scalar:UUID)
* Add these velocity limits to the control.

## VelocityEnforcementInput
#### Input Fields

---
* ``action`` - [`VelocityEnforcementAction!`](/docs/reference/graphql/types/enum#velocity-enforcement-action)
*

## VelocityLimitFilterInput
#### Input Fields

---
* ``velocityLimitId`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `velocityLimitId` field. Required when using index `VelocityLimitIndex.VELOCITY_RULE_ID`.
---
* ``name`` - [`FilterValue`](/docs/reference/graphql/types/input#filter-value)
* Filter on the `name` field. Required when using index `VelocityLimitIndex.NAME`.

## VelocityLimitIndexInput
#### Input Fields

---
* ``name`` - [`VelocityLimitIndex!`](/docs/reference/graphql/types/enum#velocity-limit-index)
*
---
* ``sort`` - [`SortOrder`](/docs/reference/graphql/types/enum#sort-order)
* `ASC` (ascending) or `DESC` (descending).

## VelocityLimitInput
#### Input Fields

---
* ``velocityLimitId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* 128-bit universally unique identifier (UUID). Used for most ID fields on records.
---
* ``name`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Human readable name of this rule.
---
* ``description`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* "
  Human readable description of this rule.
---
* ``window`` - [`[PartitionKeyInput]!`]($gql:input:PartitionKeyInput)
* Group by these values to index the calculation.

  The `account`, `transaction`, `tranCode` and `entry` are available for use in the window computation on `context.vars`.
---
* ``condition`` - [`Expression`](/docs/reference/graphql/types/scalar#expression)
* A boolean expression indicating if an balance entry should be written.
  The `account`, `transaction` and `entry` are available for use in the window computation on `context.vars`.
  @example("has(context.vars.account.metadata.policyPayment)")
---
* ``limit`` - [`LimitInput!`](/docs/reference/graphql/types/input#limit-input)
* The limit to enforce. Can supply different limits based
---
* ``currency`` - [`CurrencyCode!`](/docs/reference/graphql/types/scalar#currency-code)
* Currency this limit applies to. If set to empty string, applies limit to all currencies.
---
* ``params`` - [`[ParamDefinitionInput]`]($gql:input:ParamDefinitionInput)
* The parameters for `VelocityLimit.limit`.
---
* ``velocityControlIds`` - [`[UUID]`]($gql:scalar:UUID)
* Add the limit to the velocity controls in this list.

## VelocityWindowInput
#### Input Fields

---
* ``accountId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* The account or set id to search for velocity.
---
* ``velocityControlId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* Limit the search to this velocity control Id.
---
* ``velocityLimitId`` - [`UUID`](/docs/reference/graphql/types/scalar#uuid)
* Limit the search to this velocity limit.
---
* ``window`` - [`JSON!`](/docs/reference/graphql/types/scalar#json)
* The window to search. If `velocityLimitId` not present,
  will return any limit that supports the _entire_ window.
---
* ``currency`` - [`CurrencyCode!`](/docs/reference/graphql/types/scalar#currency-code)
* Return the velocity limit for this currency. _Default:_ ``"USD"``

## ViewConfigInput
#### Input Fields

---
* ``enableConcurrentPosting`` - [`Boolean!`](/docs/reference/graphql/types/scalar#boolean)
* The `Boolean` scalar type represents `true` or `false`. _Default:_ ``true``

## ViewFilter
Filter input for querying view entries.
#### Input Fields

---
* ``index`` - [`ViewIndexFilter`](/docs/reference/graphql/types/input#view-index-filter)
* Use the index filter for standard index queries.
---
* ``search`` - [`SearchFilter`](/docs/reference/graphql/types/input#search-filter)
* Use the search filter for search index queries.

## ViewIndexFilter
#### Input Fields

---
* ``index`` - [`String`](/docs/reference/graphql/types/scalar#string)
* Name of the index to use. If not provided, the standard index is queried.
---
* ``partition`` - [`[CustomIndexFilterValue]`]($gql:input:CustomIndexFilterValue)
* Specify the partition of view index.
---
* ``sort`` - [`[CustomIndexFilterValue]`]($gql:input:CustomIndexFilterValue)
* Speficy the sort of the view index.

## ViewIndexInput
#### Input Fields

---
* ``name`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Unique identifier of this index. Typically human readable.
---
* ``unique`` - [`Boolean`](/docs/reference/graphql/types/scalar#boolean)
* Indicates if this index is unique.
---
* ``partition`` - [`[PartitionKeyInput]!`]($gql:input:PartitionKeyInput)
* The partition key used for this index.
---
* ``partitionShardCount`` - [`Int`](/docs/reference/graphql/types/scalar#int)
* Specifies the number of shards for partition write scaling.

  This parameter defines how many shards the partition key is
  automatically split into, similarly to RAID-style disk striping.
  Increasing this value allows the index to distribute write
  throughput across multiple shards while sacrificing global sort
  order on the partition.

  For instance, setting `partitionShardCount` to 4 splits each unique
  partition into four shards, effectively allowing 4000 writes per
  second for a single partition key.
---
* ``sort`` - [`[IndexKeyInput]!`]($gql:input:IndexKeyInput)
* The sort key to use for supporting range queries.
---
* ``constraints`` - [`ExpressionMap`](/docs/reference/graphql/types/scalar#expression-map)
* Map of named CEL expressions specifying the conditions for including
  a record in this index.

  Records are only included in the index if _all_ expressions evaluate
  to `true`, i.e. they are combined with a logical AND. Each
  expression must return a boolean value.

  For example, a custom index on a `metadata.category` field might use
  the constraints `{ hasCategory: "has(document.metadata.category)" }`
  to ensure that only records whose `metadata` document has a defined
  value for the `category` field are included.

## ViewSearchIndexInput
#### Input Fields

---
* ``name`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* Unique identifier of this index. Typically human readable.
---
* ``constraints`` - [`ExpressionMap`](/docs/reference/graphql/types/scalar#expression-map)
* Map of named CEL expressions specifying the conditions for including a record in this index.

  Records are only included in the index if _all_ expressions evaluate to `true`, i.e. they are combined with a logical AND. Each expression must return a boolean value.

  For example, a custom index on a `metadata.category` field might use the constraints `{ hasCategory: "has(document.metadata.category)" }` to ensure that only records whose `metadata` document has a defined value for the `category` field are included.
---
* ``opensearchSchema`` - [`OpensearchSchemaInput!`](/docs/reference/graphql/types/input#opensearch-schema-input)
* Opensearch mapping (with CEL expressions) applied to the document prior to indexing.

  Required. Every view search index must declare its field types explicitly so
  that sort, filter, and aggregation behavior is stable across index creations.

## ViewSourceInput
#### Input Fields

---
* ``entity`` - [`ViewEntity!`](/docs/reference/graphql/types/enum#view-entity)
* Enum of source tables that can trigger view updates.
---
* ``triggers`` - [`[ViewTriggerEnum!]!`]($gql:enum:ViewTriggerEnum)
*

## VoidTransactionPropertiesInput
#### Input Fields

---
* ``metadata`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* JSON object.
---
* ``idempotent`` - [`Boolean`](/docs/reference/graphql/types/scalar#boolean)
* When true, makes the void operation idempotent.
  If the target transaction does not exist, returns null.
  If the target transaction is already voided, returns the existing void transaction.

## WorkflowInput
Fields to execute a new workflow.
#### Input Fields

---
* ``workflowId`` - [`UUID`](/docs/reference/graphql/types/scalar#uuid)
* 128-bit universally unique identifier (UUID). Used for most ID fields on records.
---
* ``executionId`` - [`UUID!`](/docs/reference/graphql/types/scalar#uuid)
* 128-bit universally unique identifier (UUID). Used for most ID fields on records.
---
* ``code`` - [`String`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``task`` - [`String!`](/docs/reference/graphql/types/scalar#string)
* The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
---
* ``params`` - [`JSON`](/docs/reference/graphql/types/scalar#json)
* JSON object.
