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

# Webhook

> Metadata for a webhook. Reference for the Webhook type in the Codex API: every field, its type, and the operations that return it.

## GraphQL

```
type Webhook {
  id: String!
  webhookType: WebhookType!
  name: String!
  created: Int!
  alertRecurrence: AlertRecurrence!
  callbackUrl: String!
  status: String!
  conditions: WebhookCondition!
  retrySettings: RetrySettings
  bucketId: String
  bucketSortkey: String
  publishingType: PublishingType
}

enum WebhookType {
  PRICE_EVENT
  TOKEN_PAIR_EVENT
  RAW_TRANSACTION
  MARKET_CAP_EVENT
  TOKEN_PRICE_EVENT
  TOKEN_TRANSFER_EVENT
  PREDICTION_TRADE
  PREDICTION_MARKET_METRICS_EVENT
  TOKEN_LAUNCH_EVENT
}

enum AlertRecurrence {
  INDEFINITE
  ONCE
}

type StringEqualsCondition {
  eq: String!
}

type IntEqualsCondition {
  eq: Int!
}

type ComparisonOperator {
  gt: String
  gte: String
  lt: String
  lte: String
  eq: String
}

type PriceEventWebhookCondition {
  tokenAddress: StringEqualsCondition!
  networkId: IntEqualsCondition!
  priceUsd: ComparisonOperator!
  pairAddress: StringEqualsCondition
  liquidityUsd: ComparisonOperator
  volumeUsd: ComparisonOperator
}

type MarketCapEventWebhookCondition {
  tokenAddress: StringEqualsCondition!
  networkId: IntEqualsCondition!
  fdvMarketCapUsd: ComparisonOperator
  circulatingMarketCapUsd: ComparisonOperator
  liquidityUsd: ComparisonOperator
  volumeUsd: ComparisonOperator
}

type OneOfNumberCondition {
  oneOf: [Int!]!
}

enum TokenPairEventType {
  SWAP
  MINT
  BURN
  SYNC
  BUY
  SELL
  COLLECT
  COLLECT_PROTOCOL
}

type TokenPairEventTypeCondition {
  oneOf: [TokenPairEventType!]!
}

type TokenPairEventWebhookCondition {
  tokenAddress: StringEqualsCondition
  networkId: OneOfNumberCondition
  swapValue: ComparisonOperator
  maker: StringEqualsCondition
  pairAddress: StringEqualsCondition
  exchangeAddress: StringEqualsCondition
  eventType: TokenPairEventTypeCondition
}

type StringContainsCondition {
  contains: [String!]
  notContains: [String!]
}

type RawTransactionWebhookCondition {
  networkId: OneOfNumberCondition
  to: StringEqualsCondition
  from: StringEqualsCondition
  toOrFrom: StringEqualsCondition
  input: StringContainsCondition
  ignoreTokenPairEvents: Boolean
}

type TokenPriceEventWebhookCondition {
  address: StringEqualsCondition!
  networkId: IntEqualsCondition!
  priceUsd: ComparisonOperator!
}

enum TokenTransferDirection {
  FROM
  TO
}

type OneOfTokenTransferDirectionCondition {
  oneOf: [TokenTransferDirection!]!
}

type TokenTransferEventWebhookCondition {
  tokenAddress: StringEqualsCondition
  networkId: OneOfNumberCondition
  address: StringEqualsCondition
  direction: OneOfTokenTransferDirectionCondition
}

enum PredictionTradeEventType {
  TRADE
  BUY
  SELL
  BUY_COUNTERPARTY
  SELL_COUNTERPARTY
  POSITION_REDEEMED
}

type PredictionTradeEventTypeCondition {
  oneOf: [PredictionTradeEventType!]!
}

type PredictionTradeWebhookCondition {
  traderId: StringEqualsCondition
  marketId: StringEqualsCondition
  eventId: StringEqualsCondition
  eventType: PredictionTradeEventTypeCondition
  tradeValueUsd: ComparisonOperator
  amountToken: ComparisonOperator
}

type WindowedPredictionMarketMetricsEventMarketCondition {
  volumeUsd: ComparisonOperator
  trades: ComparisonOperator
  volumeChange: ComparisonOperator
  tradesChange: ComparisonOperator
}

type PredictionMarketMetricsEventMarketCondition {
  min5: WindowedPredictionMarketMetricsEventMarketCondition
  hour1: WindowedPredictionMarketMetricsEventMarketCondition
  hour4: WindowedPredictionMarketMetricsEventMarketCondition
  hour12: WindowedPredictionMarketMetricsEventMarketCondition
  day1: WindowedPredictionMarketMetricsEventMarketCondition
  week1: WindowedPredictionMarketMetricsEventMarketCondition
}

type WindowedPredictionMarketMetricsEventOutcomeCondition {
  price: ComparisonOperator
  priceChange: ComparisonOperator
  volumeUsd: ComparisonOperator
  volumeChange: ComparisonOperator
  trades: ComparisonOperator
  tradesChange: ComparisonOperator
}

type PredictionMarketMetricsEventOutcomeCondition {
  min5: WindowedPredictionMarketMetricsEventOutcomeCondition
  hour1: WindowedPredictionMarketMetricsEventOutcomeCondition
  hour4: WindowedPredictionMarketMetricsEventOutcomeCondition
  hour12: WindowedPredictionMarketMetricsEventOutcomeCondition
  day1: WindowedPredictionMarketMetricsEventOutcomeCondition
  week1: WindowedPredictionMarketMetricsEventOutcomeCondition
}

type PredictionMarketMetricsEventWebhookCondition {
  marketId: StringEqualsCondition!
  market: PredictionMarketMetricsEventMarketCondition
  outcome0: PredictionMarketMetricsEventOutcomeCondition
  outcome1: PredictionMarketMetricsEventOutcomeCondition
  anyOutcome: PredictionMarketMetricsEventOutcomeCondition
}

type OneOfStringCondition {
  oneOf: [String!]!
}

type TokenLaunchEventWebhookCondition {
  creatorAddress: StringEqualsCondition
  launchpadName: OneOfStringCondition
  networkId: OneOfNumberCondition
  tokenAddress: StringEqualsCondition
}

union WebhookCondition = PriceEventWebhookCondition | MarketCapEventWebhookCondition | TokenPairEventWebhookCondition | RawTransactionWebhookCondition | TokenPriceEventWebhookCondition | TokenTransferEventWebhookCondition | PredictionTradeWebhookCondition | PredictionMarketMetricsEventWebhookCondition | TokenLaunchEventWebhookCondition

type RetrySettings {
  maxTimeElapsed: Int
  minRetryDelay: Int
  maxRetryDelay: Int
  maxRetries: Int
}

enum PublishingType {
  BATCH
  SINGLE
}
```

### Used By

**Returned by**

* [createWebhooks](https://docs.codex.io/api-reference/mutations/createwebhooks.md): Create event webhooks for price, token/pair, transfer, market cap, and prediction market trades.
* [getWebhooks](https://docs.codex.io/api-reference/queries/getwebhooks.md): Returns a user's list of webhooks.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.