|
3 | 3 | "info": { |
4 | 4 | "title": "CCIP Docs config API", |
5 | 5 | "description": "API for retrieving CCIP chain, token, and lane information.\n\nTo get started quickly, you can download our [Postman Collection](/api/ccip/v1/postman-collection.json) which includes all endpoints and example requests.", |
6 | | - "version": "1.4.0", |
| 6 | + "version": "1.5.0", |
7 | 7 | "contact": { |
8 | 8 | "name": "File issues", |
9 | 9 | "url": "https://github.com/smartcontractkit/documentation/issues/new/choose" |
|
91 | 91 | "default": "chainId" |
92 | 92 | }, |
93 | 93 | "description": "Key to use for organizing the response data" |
| 94 | + }, |
| 95 | + { |
| 96 | + "name": "enrichFeeTokens", |
| 97 | + "in": "query", |
| 98 | + "schema": { |
| 99 | + "type": "string", |
| 100 | + "enum": ["true", "false"], |
| 101 | + "default": "false" |
| 102 | + }, |
| 103 | + "description": "When set to 'true', returns detailed fee token information including addresses, names, and decimals instead of just symbol strings" |
94 | 104 | } |
95 | 105 | ], |
96 | 106 | "responses": { |
|
101 | 111 | "schema": { |
102 | 112 | "$ref": "#/components/schemas/ChainApiResponse" |
103 | 113 | }, |
104 | | - "example": { |
105 | | - "metadata": { |
106 | | - "environment": "mainnet", |
107 | | - "timestamp": "2024-03-14T12:00:00Z", |
108 | | - "requestId": "123e4567-e89b-12d3-a456-426614174000", |
109 | | - "ignoredChainCount": 0, |
110 | | - "validChainCount": 2 |
111 | | - }, |
112 | | - "data": { |
113 | | - "evm": { |
114 | | - "1": { |
115 | | - "chainId": 1, |
116 | | - "displayName": "Ethereum", |
117 | | - "selector": "5009297550715157269", |
118 | | - "internalId": "ethereum-mainnet", |
119 | | - "feeTokens": ["LINK", "WETH", "ETH"], |
120 | | - "router": "0x80226fc0Ee2b096224EeAc085Bb9a8cba1146f7D", |
121 | | - "rmn": "0x411dE17f12D1A34ecC7F45f49844626267c75e81", |
122 | | - "registryModule": "0x13022e3e6C77524308BD56AEd716E88311b2E533", |
123 | | - "tokenAdminRegistry": "0xb22764f98dD05c789929716D677382Df22C05Cb6", |
124 | | - "tokenPoolFactory": "0x17D8a409fE2ceF2d3808bcB61F14aBEFfc28876e", |
125 | | - "chainType": "evm", |
126 | | - "chainFamily": "evm" |
127 | | - } |
128 | | - }, |
129 | | - "svm": { |
130 | | - "solana-devnet": { |
131 | | - "chainId": "solana-devnet", |
132 | | - "displayName": "Solana Devnet", |
133 | | - "selector": "16015286601757825753", |
134 | | - "internalId": "solana-devnet", |
135 | | - "feeTokens": ["LINK", "SOL"], |
136 | | - "router": "CCiPv7hcmEqNdMdJgmHDJmEJyCkBgLqxmcf87R1Gho6H", |
137 | | - "rmn": "CRmNVnB7S6SqEPFG6m9dVp9fJJCjr3TC2TiAWB3RqNod", |
138 | | - "feeQuoter": "FqbCVbS7a4ndxs9xZ8UmfL6LQsUhAJNkWxW3duJRrCWD", |
139 | | - "chainType": "solana", |
140 | | - "chainFamily": "svm" |
141 | | - } |
| 114 | + "examples": { |
| 115 | + "default": { |
| 116 | + "summary": "Default response (string array for feeTokens)", |
| 117 | + "value": { |
| 118 | + "metadata": { |
| 119 | + "environment": "mainnet", |
| 120 | + "timestamp": "2024-03-14T12:00:00Z", |
| 121 | + "requestId": "123e4567-e89b-12d3-a456-426614174000", |
| 122 | + "ignoredChainCount": 0, |
| 123 | + "validChainCount": 2 |
| 124 | + }, |
| 125 | + "data": { |
| 126 | + "evm": { |
| 127 | + "1": { |
| 128 | + "chainId": 1, |
| 129 | + "displayName": "Ethereum", |
| 130 | + "selector": "5009297550715157269", |
| 131 | + "internalId": "ethereum-mainnet", |
| 132 | + "feeTokens": ["LINK", "WETH", "GHO"], |
| 133 | + "router": "0x80226fc0Ee2b096224EeAc085Bb9a8cba1146f7D", |
| 134 | + "rmn": "0x411dE17f12D1A34ecC7F45f49844626267c75e81", |
| 135 | + "registryModule": "0x13022e3e6C77524308BD56AEd716E88311b2E533", |
| 136 | + "tokenAdminRegistry": "0xb22764f98dD05c789929716D677382Df22C05Cb6", |
| 137 | + "tokenPoolFactory": "0x17D8a409fE2ceF2d3808bcB61F14aBEFfc28876e", |
| 138 | + "chainType": "evm", |
| 139 | + "chainFamily": "evm" |
| 140 | + } |
| 141 | + }, |
| 142 | + "svm": { |
| 143 | + "solana-devnet": { |
| 144 | + "chainId": "solana-devnet", |
| 145 | + "displayName": "Solana Devnet", |
| 146 | + "selector": "16015286601757825753", |
| 147 | + "internalId": "solana-devnet", |
| 148 | + "feeTokens": ["LINK", "SOL"], |
| 149 | + "router": "CCiPv7hcmEqNdMdJgmHDJmEJyCkBgLqxmcf87R1Gho6H", |
| 150 | + "rmn": "CRmNVnB7S6SqEPFG6m9dVp9fJJCjr3TC2TiAWB3RqNod", |
| 151 | + "feeQuoter": "FqbCVbS7a4ndxs9xZ8UmfL6LQsUhAJNkWxW3duJRrCWD", |
| 152 | + "chainType": "solana", |
| 153 | + "chainFamily": "svm" |
| 154 | + } |
| 155 | + } |
| 156 | + }, |
| 157 | + "ignored": [] |
142 | 158 | } |
143 | 159 | }, |
144 | | - "ignored": [] |
| 160 | + "enriched": { |
| 161 | + "summary": "Enriched response (detailed objects for feeTokens when enrichFeeTokens=true)", |
| 162 | + "value": { |
| 163 | + "metadata": { |
| 164 | + "environment": "mainnet", |
| 165 | + "timestamp": "2024-03-14T12:00:00Z", |
| 166 | + "requestId": "123e4567-e89b-12d3-a456-426614174000", |
| 167 | + "ignoredChainCount": 0, |
| 168 | + "validChainCount": 1 |
| 169 | + }, |
| 170 | + "data": { |
| 171 | + "evm": { |
| 172 | + "1": { |
| 173 | + "chainId": 1, |
| 174 | + "displayName": "Ethereum", |
| 175 | + "selector": "5009297550715157269", |
| 176 | + "internalId": "ethereum-mainnet", |
| 177 | + "feeTokens": [ |
| 178 | + { |
| 179 | + "symbol": "GHO", |
| 180 | + "name": "Gho Token", |
| 181 | + "address": "0x40D16FC0246aD3160Ccc09B8D0D3A2cD28aE6C2f", |
| 182 | + "decimals": 18 |
| 183 | + }, |
| 184 | + { |
| 185 | + "symbol": "LINK", |
| 186 | + "name": "ChainLink Token", |
| 187 | + "address": "0x514910771AF9Ca656af840dff83E8264EcF986CA", |
| 188 | + "decimals": 18 |
| 189 | + }, |
| 190 | + { |
| 191 | + "symbol": "WETH", |
| 192 | + "name": "Wrapped Ether", |
| 193 | + "address": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2", |
| 194 | + "decimals": 18 |
| 195 | + } |
| 196 | + ], |
| 197 | + "router": "0x80226fc0Ee2b096224EeAc085Bb9a8cba1146f7D", |
| 198 | + "rmn": "0x411dE17f12D1A34ecC7F45f49844626267c75e81", |
| 199 | + "registryModule": "0x13022e3e6C77524308BD56AEd716E88311b2E533", |
| 200 | + "tokenAdminRegistry": "0xb22764f98dD05c789929716D677382Df22C05Cb6", |
| 201 | + "tokenPoolFactory": "0x17D8a409fE2ceF2d3808bcB61F14aBEFfc28876e", |
| 202 | + "chainType": "evm", |
| 203 | + "chainFamily": "evm" |
| 204 | + } |
| 205 | + } |
| 206 | + }, |
| 207 | + "ignored": [] |
| 208 | + } |
| 209 | + } |
145 | 210 | } |
146 | 211 | } |
147 | 212 | } |
|
514 | 579 | } |
515 | 580 | } |
516 | 581 | }, |
| 582 | + "FeeTokenEnriched": { |
| 583 | + "type": "object", |
| 584 | + "required": ["symbol", "name", "address", "decimals"], |
| 585 | + "properties": { |
| 586 | + "symbol": { |
| 587 | + "type": "string", |
| 588 | + "description": "Token symbol (e.g., LINK, WETH)" |
| 589 | + }, |
| 590 | + "name": { |
| 591 | + "type": "string", |
| 592 | + "description": "Token name (e.g., Chainlink, Wrapped Ether)" |
| 593 | + }, |
| 594 | + "address": { |
| 595 | + "type": "string", |
| 596 | + "description": "Token contract address on this chain" |
| 597 | + }, |
| 598 | + "decimals": { |
| 599 | + "type": "integer", |
| 600 | + "minimum": 0, |
| 601 | + "maximum": 18, |
| 602 | + "description": "Number of decimals for the token" |
| 603 | + } |
| 604 | + } |
| 605 | + }, |
517 | 606 | "ChainDetails": { |
518 | 607 | "type": "object", |
519 | 608 | "required": [ |
|
545 | 634 | "description": "Internal identifier for the chain" |
546 | 635 | }, |
547 | 636 | "feeTokens": { |
548 | | - "type": "array", |
549 | | - "items": { |
550 | | - "type": "string" |
551 | | - }, |
552 | | - "description": "List of supported fee tokens" |
| 637 | + "oneOf": [ |
| 638 | + { |
| 639 | + "type": "array", |
| 640 | + "items": { |
| 641 | + "type": "string" |
| 642 | + }, |
| 643 | + "description": "List of supported fee token symbols (when enrichFeeTokens=false)" |
| 644 | + }, |
| 645 | + { |
| 646 | + "type": "array", |
| 647 | + "items": { |
| 648 | + "$ref": "#/components/schemas/FeeTokenEnriched" |
| 649 | + }, |
| 650 | + "description": "Detailed fee token information (when enrichFeeTokens=true)" |
| 651 | + } |
| 652 | + ], |
| 653 | + "description": "Fee tokens - either as string symbols or enriched objects with addresses" |
553 | 654 | }, |
554 | 655 | "router": { |
555 | 656 | "type": "string", |
|
0 commit comments