{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/chainflip-broker-io/json-schema/chainflip-broker-io-chainflip-baas-swap-deposit-address-schema.json",
  "title": "ChainflipBaas.Swap.DepositAddress",
  "description": "The deposit channel opened for the swap. Send the source asset to `address` on `network` before\nthe channel expires at `sourceExpiryBlock`, then follow the swap with `getStatusById` (using\n`id`) or `getStatusByDepositChannel`.",
  "x-generated": "2026-11-03",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/chainflip-broker-io-openapi.json#/components/schemas/ChainflipBaas.Swap.DepositAddress",
  "required": [
    "address",
    "channelId",
    "channelOpeningFee",
    "channelOpeningFeeNative",
    "destinationAddress",
    "explorerUrl",
    "issuedBlock",
    "network",
    "sourceExpiryBlock"
  ],
  "type": "object",
  "properties": {
    "id": {
      "type": [
        "integer",
        "null"
      ],
      "description": "The BaaS swap id: pass it as `swapId` to `getStatusById`. Absent in the rare case the swap\ncould not be recorded right away; follow it with `getStatusByDepositChannel` then.",
      "format": "int32"
    },
    "address": {
      "type": "string",
      "description": "The deposit address to send source assets to."
    },
    "issuedBlock": {
      "type": "integer",
      "description": "The block in which the deposit address was issued.",
      "format": "int64"
    },
    "network": {
      "type": "string",
      "description": "The network to send the source assets over."
    },
    "channelId": {
      "type": "integer",
      "description": "The channel id to monitor the deposit.",
      "format": "int64"
    },
    "sourceExpiryBlock": {
      "type": "integer",
      "description": "The block (on the source network) in which the deposit address will expire.",
      "format": "int64"
    },
    "explorerUrl": {
      "type": "string",
      "description": "The explorer url to monitor the deposit."
    },
    "channelOpeningFee": {
      "type": "number",
      "description": "Fee in $FLIP to open the deposit channel.",
      "format": "double"
    },
    "channelOpeningFeeNative": {
      "type": "string",
      "description": "Fee in $FLIP flipperinos to open the deposit channel."
    },
    "destinationAddress": {
      "minLength": 1,
      "type": "string",
      "description": "The destination address the swap was accepted for, exactly as you sent it (no change of case, prefix or\nencoding). Always present."
    }
  },
  "additionalProperties": false
}