> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mobula.io/llms.txt
> Use this file to discover all available pages before exploring further.

# CreateTokenTransferEventWebhookInput

> Single TOKEN_TRANSFER_EVENT webhook to create — fires on ERC-20 / SPL transfers matching the conditions.

### TypeScript shape

```ts theme={null}
interface CreateTokenTransferEventWebhookInput {
  name: string;
  callbackUrl: string;
  securityToken: string;
  alertRecurrence: AlertRecurrence;
  conditions: TokenTransferEventWebhookConditionInput;
  retrySettings?: RetrySettingsInput | null;
  bucketKey?: BucketKeyInput | null;
  bucketId?: string | null;
  bucketSortkey?: string | null;
  publishingType?: PublishingType | null;
  deduplicate?: boolean | null;
}
```

<ResponseField name="name" type="String!" required>User-supplied webhook name.</ResponseField>
<ResponseField name="callbackUrl" type="String!" required>HTTPS endpoint that will receive deliveries.</ResponseField>

<ResponseField name="securityToken" type="String!" required>
  Caller-supplied token. Required — used to derive the per-webhook signing secret.
</ResponseField>

<ResponseField name="alertRecurrence" type="AlertRecurrence!" required>
  `INDEFINITE` or `ONCE`. See [AlertRecurrence](/api-reference/graphql/types/AlertRecurrence).
</ResponseField>

<ResponseField name="conditions" type="TokenTransferEventWebhookConditionInput!" required>
  Transfer match conditions. See [TokenTransferEventWebhookConditionInput](/api-reference/graphql/types/TokenTransferEventWebhookConditionInput).
</ResponseField>

<ResponseField name="retrySettings" type="RetrySettingsInput">
  Optional retry policy. See [RetrySettingsInput](/api-reference/graphql/types/RetrySettingsInput).
</ResponseField>

<ResponseField name="bucketKey" type="BucketKeyInput">
  Preferred bucket key. See [BucketKeyInput](/api-reference/graphql/types/BucketKeyInput).
</ResponseField>

<ResponseField name="publishingType" type="PublishingType">
  `BATCH` or `SINGLE` (default `SINGLE`). See [PublishingType](/api-reference/graphql/types/PublishingType).
</ResponseField>

<ResponseField name="deduplicate" type="Boolean">
  When `true`, returns the existing webhook if `callbackUrl + conditions + publishingType + alertRecurrence` already exist for this API key + category.
</ResponseField>

<Warning>
  The following fields are deprecated — use `bucketKey` instead. They remain in the schema for backwards compatibility and may be removed in a future version.
</Warning>

<ResponseField name="bucketId" type="String" deprecated>Deprecated — use [`bucketKey`](/api-reference/graphql/types/BucketKeyInput) instead.</ResponseField>
<ResponseField name="bucketSortkey" type="String" deprecated>Deprecated — use [`bucketKey`](/api-reference/graphql/types/BucketKeyInput) instead.</ResponseField>
