@chainlink/ccip-sdk 1.1.1 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/dist/api/index.d.ts +165 -15
  2. package/dist/api/index.d.ts.map +1 -1
  3. package/dist/api/index.js +236 -61
  4. package/dist/api/index.js.map +1 -1
  5. package/dist/api/types.d.ts +119 -1
  6. package/dist/api/types.d.ts.map +1 -1
  7. package/dist/chain.d.ts +53 -27
  8. package/dist/chain.d.ts.map +1 -1
  9. package/dist/chain.js +71 -16
  10. package/dist/chain.js.map +1 -1
  11. package/dist/errors/codes.d.ts +1 -0
  12. package/dist/errors/codes.d.ts.map +1 -1
  13. package/dist/errors/codes.js +1 -0
  14. package/dist/errors/codes.js.map +1 -1
  15. package/dist/errors/index.d.ts +1 -1
  16. package/dist/errors/index.d.ts.map +1 -1
  17. package/dist/errors/index.js +1 -1
  18. package/dist/errors/index.js.map +1 -1
  19. package/dist/errors/recovery.d.ts.map +1 -1
  20. package/dist/errors/recovery.js +1 -0
  21. package/dist/errors/recovery.js.map +1 -1
  22. package/dist/errors/specialized.d.ts +21 -0
  23. package/dist/errors/specialized.d.ts.map +1 -1
  24. package/dist/errors/specialized.js +31 -1
  25. package/dist/errors/specialized.js.map +1 -1
  26. package/dist/evm/abi/OffRamp_2_0.d.ts +18 -17
  27. package/dist/evm/abi/OffRamp_2_0.d.ts.map +1 -1
  28. package/dist/evm/abi/OffRamp_2_0.js +19 -21
  29. package/dist/evm/abi/OffRamp_2_0.js.map +1 -1
  30. package/dist/evm/abi/TokenPool_2_0.d.ts +0 -4
  31. package/dist/evm/abi/TokenPool_2_0.d.ts.map +1 -1
  32. package/dist/evm/abi/TokenPool_2_0.js +0 -1
  33. package/dist/evm/abi/TokenPool_2_0.js.map +1 -1
  34. package/dist/evm/gas.d.ts +14 -4
  35. package/dist/evm/gas.d.ts.map +1 -1
  36. package/dist/evm/gas.js +7 -6
  37. package/dist/evm/gas.js.map +1 -1
  38. package/dist/evm/index.d.ts +39 -8
  39. package/dist/evm/index.d.ts.map +1 -1
  40. package/dist/evm/index.js +106 -27
  41. package/dist/evm/index.js.map +1 -1
  42. package/dist/extra-args.d.ts +18 -8
  43. package/dist/extra-args.d.ts.map +1 -1
  44. package/dist/extra-args.js +6 -6
  45. package/dist/extra-args.js.map +1 -1
  46. package/dist/gas.d.ts +1 -1
  47. package/dist/gas.d.ts.map +1 -1
  48. package/dist/gas.js +7 -2
  49. package/dist/gas.js.map +1 -1
  50. package/dist/index.d.ts +2 -2
  51. package/dist/index.d.ts.map +1 -1
  52. package/dist/index.js.map +1 -1
  53. package/dist/requests.d.ts +11 -5
  54. package/dist/requests.d.ts.map +1 -1
  55. package/dist/requests.js +4 -7
  56. package/dist/requests.js.map +1 -1
  57. package/dist/solana/index.d.ts +2 -2
  58. package/dist/solana/utils.js +2 -2
  59. package/dist/solana/utils.js.map +1 -1
  60. package/dist/ton/index.d.ts.map +1 -1
  61. package/dist/ton/index.js +34 -26
  62. package/dist/ton/index.js.map +1 -1
  63. package/dist/utils.d.ts +10 -4
  64. package/dist/utils.d.ts.map +1 -1
  65. package/dist/utils.js +10 -4
  66. package/dist/utils.js.map +1 -1
  67. package/package.json +7 -7
  68. package/src/api/index.ts +271 -59
  69. package/src/api/types.ts +126 -1
  70. package/src/chain.ts +120 -42
  71. package/src/errors/codes.ts +1 -0
  72. package/src/errors/index.ts +1 -0
  73. package/src/errors/recovery.ts +2 -0
  74. package/src/errors/specialized.ts +33 -1
  75. package/src/evm/abi/OffRamp_2_0.ts +19 -21
  76. package/src/evm/abi/TokenPool_2_0.ts +0 -1
  77. package/src/evm/gas.ts +18 -20
  78. package/src/evm/index.ts +126 -26
  79. package/src/extra-args.ts +18 -8
  80. package/src/gas.ts +8 -3
  81. package/src/index.ts +4 -0
  82. package/src/requests.ts +18 -12
  83. package/src/solana/utils.ts +2 -2
  84. package/src/ton/index.ts +47 -26
  85. package/src/utils.ts +10 -4
package/dist/api/index.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import { memoize } from 'micro-memoize';
2
- import { CCIPApiClientNotAvailableError, CCIPHttpError, CCIPLaneNotFoundError, CCIPMessageIdNotFoundError, CCIPMessageNotFoundInTxError, CCIPTimeoutError, CCIPUnexpectedPaginationError, } from "../errors/index.js";
2
+ import { CCIPAbortError, CCIPApiClientNotAvailableError, CCIPHttpError, CCIPLaneNotFoundError, CCIPMessageIdNotFoundError, CCIPMessageNotFoundInTxError, CCIPTimeoutError, CCIPUnexpectedPaginationError, } from "../errors/index.js";
3
3
  import { HttpStatus } from "../http-status.js";
4
4
  import { decodeMessageV1 } from "../messages.js";
5
5
  import { decodeMessage } from "../requests.js";
6
6
  import { CCIPVersion, ChainFamily, MessageStatus, NetworkType, } from "../types.js";
7
- import { bigIntReviver, parseJson } from "../utils.js";
7
+ import { bigIntReviver, decodeAddress, parseJson } from "../utils.js";
8
8
  import { calculateManualExecProof } from "../execution.js";
9
9
  /** Default CCIP API base URL */
10
10
  export const DEFAULT_API_BASE_URL = 'https://api.ccip.chain.link';
@@ -13,7 +13,7 @@ export const DEFAULT_TIMEOUT_MS = 30000;
13
13
  /** SDK version string for telemetry header */
14
14
  // generate:nofail
15
15
  // `export const SDK_VERSION = '${require('./package.json').version}-${require('child_process').execSync('git rev-parse --short HEAD').toString().trim()}'`
16
- export const SDK_VERSION = '1.1.1-593a607';
16
+ export const SDK_VERSION = '1.2.0-7dcdd16';
17
17
  // generate:end
18
18
  /** SDK telemetry header name */
19
19
  export const SDK_VERSION_HEADER = 'X-SDK-Version';
@@ -35,6 +35,7 @@ const validateMessageStatus = (value, logger) => {
35
35
  };
36
36
  const ensureNetworkInfo = (o, logger) => {
37
37
  return Object.assign(o, {
38
+ chainSelector: BigInt(o.chainSelector),
38
39
  networkType: o.name.includes('-mainnet') ? NetworkType.Mainnet : NetworkType.Testnet,
39
40
  ...(!('family' in o) && { family: validateChainFamily(o.chainFamily, logger) }),
40
41
  });
@@ -129,12 +130,12 @@ export class CCIPAPIClient {
129
130
  * @throws CCIPTimeoutError if request times out
130
131
  * @internal
131
132
  */
132
- async _fetchWithTimeout(url, operation) {
133
- const controller = new AbortController();
134
- const timeoutId = setTimeout(() => controller.abort(), this.timeoutMs);
133
+ async _fetchWithTimeout(url, operation, signal) {
134
+ const timeoutSignal = AbortSignal.timeout(this.timeoutMs);
135
+ const combinedSignal = signal ? AbortSignal.any([timeoutSignal, signal]) : timeoutSignal;
135
136
  try {
136
137
  return await this._fetch(url, {
137
- signal: controller.signal,
138
+ signal: combinedSignal,
138
139
  headers: {
139
140
  'Content-Type': 'application/json',
140
141
  [SDK_VERSION_HEADER]: `CCIP SDK v${SDK_VERSION}`,
@@ -142,24 +143,30 @@ export class CCIPAPIClient {
142
143
  });
143
144
  }
144
145
  catch (error) {
145
- if (error instanceof Error && error.name === 'AbortError') {
146
+ if (error instanceof Error &&
147
+ (error.name === 'AbortError' || error.name === 'TimeoutError')) {
148
+ if (signal?.aborted) {
149
+ throw new CCIPAbortError(operation);
150
+ }
146
151
  throw new CCIPTimeoutError(operation, this.timeoutMs);
147
152
  }
148
153
  throw error;
149
154
  }
150
- finally {
151
- clearTimeout(timeoutId);
152
- }
153
155
  }
154
156
  /**
155
157
  * Fetches estimated lane latency between source and destination chains.
156
158
  *
157
159
  * @param sourceChainSelector - Source chain selector (bigint)
158
160
  * @param destChainSelector - Destination chain selector (bigint)
161
+ * @param numberOfBlocks - Optional number of block confirmations for latency calculation.
162
+ * When omitted or 0, uses the lane's default finality. When provided as a positive
163
+ * integer, the API returns latency for that custom finality value (sent as `numOfBlocks`
164
+ * query parameter).
159
165
  * @returns Promise resolving to {@link LaneLatencyResponse} with totalMs
160
166
  *
161
167
  * @throws {@link CCIPLaneNotFoundError} when lane not found (404)
162
168
  * @throws {@link CCIPTimeoutError} if request times out
169
+ * @throws {@link CCIPAbortError} if request is aborted via signal
163
170
  * @throws {@link CCIPHttpError} on other HTTP errors with context:
164
171
  * - `status` - HTTP status code (e.g., 500)
165
172
  * - `statusText` - HTTP status message
@@ -175,6 +182,15 @@ export class CCIPAPIClient {
175
182
  * console.log(`Estimated delivery: ${Math.round(latency.totalMs / 60000)} minutes`)
176
183
  * ```
177
184
  *
185
+ * @example Custom block confirmations
186
+ * ```typescript
187
+ * const latency = await api.getLaneLatency(
188
+ * 5009297550715157269n, // Ethereum mainnet
189
+ * 4949039107694359620n, // Arbitrum mainnet
190
+ * 10, // 10 block confirmations
191
+ * )
192
+ * ```
193
+ *
178
194
  * @example Handling specific API errors
179
195
  * ```typescript
180
196
  * try {
@@ -186,12 +202,15 @@ export class CCIPAPIClient {
186
202
  * }
187
203
  * ```
188
204
  */
189
- async getLaneLatency(sourceChainSelector, destChainSelector) {
205
+ async getLaneLatency(sourceChainSelector, destChainSelector, numberOfBlocks, options) {
190
206
  const url = new URL(`${this.baseUrl}/v2/lanes/latency`);
191
207
  url.searchParams.set('sourceChainSelector', sourceChainSelector.toString());
192
208
  url.searchParams.set('destChainSelector', destChainSelector.toString());
209
+ if (numberOfBlocks) {
210
+ url.searchParams.set('numOfBlocks', numberOfBlocks.toString());
211
+ }
193
212
  this.logger.debug(`CCIPAPIClient: GET ${url.toString()}`);
194
- const response = await this._fetchWithTimeout(url.toString(), 'getLaneLatency');
213
+ const response = await this._fetchWithTimeout(url.toString(), 'getLaneLatency', options?.signal);
195
214
  if (!response.ok) {
196
215
  // Try to parse structured error response from API
197
216
  let apiError;
@@ -235,6 +254,7 @@ export class CCIPAPIClient {
235
254
  *
236
255
  * @throws {@link CCIPMessageIdNotFoundError} when message not found (404)
237
256
  * @throws {@link CCIPTimeoutError} if request times out
257
+ * @throws {@link CCIPAbortError} if request is aborted via signal
238
258
  * @throws {@link CCIPHttpError} on HTTP errors with context:
239
259
  * - `status` - HTTP status code
240
260
  * - `statusText` - HTTP status message
@@ -261,10 +281,10 @@ export class CCIPAPIClient {
261
281
  * }
262
282
  * ```
263
283
  */
264
- async getMessageById(messageId) {
284
+ async getMessageById(messageId, options) {
265
285
  const url = `${this.baseUrl}/v2/messages/${encodeURIComponent(messageId)}`;
266
286
  this.logger.debug(`CCIPAPIClient: GET ${url}`);
267
- const response = await this._fetchWithTimeout(url, 'getMessageById');
287
+ const response = await this._fetchWithTimeout(url, 'getMessageById', options?.signal);
268
288
  if (!response.ok) {
269
289
  // Try to parse structured error response from API
270
290
  let apiError;
@@ -300,81 +320,235 @@ export class CCIPAPIClient {
300
320
  return this._transformMessageResponse(raw);
301
321
  }
302
322
  /**
303
- * Fetches message IDs from a source transaction hash.
323
+ * Searches CCIP messages using filters with cursor-based pagination.
304
324
  *
305
- * @param txHash - Source transaction hash (EVM hex or Solana Base58)
306
- * @returns Promise resolving to array of message IDs
325
+ * @param filters - Optional search filters. Ignored when `options.cursor` is provided
326
+ * (the cursor already encodes the original filters).
327
+ * @param options - Optional pagination options: `limit` (max results per page) and
328
+ * `cursor` (opaque token from a previous {@link MessageSearchPage} for the next page).
329
+ * @returns Promise resolving to a {@link MessageSearchPage} with results and pagination info.
307
330
  *
308
- * @throws {@link CCIPMessageNotFoundInTxError} when no messages found (404 or empty)
309
- * @throws {@link CCIPUnexpectedPaginationError} when hasNextPage is true
310
- * @throws {@link CCIPTimeoutError} if request times out
311
- * @throws {@link CCIPHttpError} on HTTP errors
331
+ * @remarks
332
+ * A 404 response is treated as "no results found" and returns an empty page,
333
+ * unlike {@link CCIPAPIClient.getMessageById} which throws on 404.
334
+ * When paginating with a cursor, the `filters` parameter is ignored because
335
+ * the cursor encodes the original filters.
312
336
  *
313
- * @example Basic usage
337
+ * @throws {@link CCIPTimeoutError} if request times out.
338
+ * @throws {@link CCIPAbortError} if request is aborted via signal.
339
+ * @throws {@link CCIPHttpError} on HTTP errors (4xx/5xx, except 404 which returns empty).
340
+ *
341
+ * @see {@link MessageSearchFilters} — available filter fields
342
+ * @see {@link MessageSearchPage} — return type with pagination
343
+ * @see {@link CCIPAPIClient.searchAllMessages} — async generator that handles pagination automatically
344
+ * @see {@link CCIPAPIClient.getMessageById} — fetch full message details for a search result
345
+ * @see {@link CCIPAPIClient.getMessageIdsInTx} — convenience wrapper using `sourceTransactionHash`
346
+ *
347
+ * @example Search by sender
314
348
  * ```typescript
315
- * const messageIds = await api.getMessageIdsInTx(
316
- * '0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef'
317
- * )
318
- * console.log(`Found ${messageIds.length} messages`)
349
+ * const page = await api.searchMessages({
350
+ * sender: '0x9d087fC03ae39b088326b67fA3C788236645b717',
351
+ * })
352
+ * for (const msg of page.data) {
353
+ * console.log(`${msg.messageId}: ${msg.status}`)
354
+ * }
355
+ * ```
356
+ *
357
+ * @example Paginate through all results
358
+ * ```typescript
359
+ * let page = await api.searchMessages({ sender: '0x...' }, { limit: 10 })
360
+ * const all = [...page.data]
361
+ * while (page.hasNextPage) {
362
+ * page = await api.searchMessages(undefined, { cursor: page.cursor! })
363
+ * all.push(...page.data)
364
+ * }
365
+ * ```
366
+ *
367
+ * @example Filter by lane and sender
368
+ * ```typescript
369
+ * const page = await api.searchMessages({
370
+ * sender: '0x9d087fC03ae39b088326b67fA3C788236645b717',
371
+ * sourceChainSelector: 16015286601757825753n,
372
+ * destChainSelector: 14767482510784806043n,
373
+ * })
319
374
  * ```
320
375
  */
321
- async getMessageIdsInTx(txHash) {
376
+ async searchMessages(filters, options) {
322
377
  const url = new URL(`${this.baseUrl}/v2/messages`);
323
- url.searchParams.set('sourceTransactionHash', txHash);
324
- url.searchParams.set('limit', '100');
378
+ if (options?.cursor) {
379
+ // Cursor encodes all original filters — only send cursor (and optional limit)
380
+ url.searchParams.set('cursor', options.cursor);
381
+ }
382
+ else if (filters) {
383
+ if (filters.sender)
384
+ url.searchParams.set('sender', filters.sender);
385
+ if (filters.receiver)
386
+ url.searchParams.set('receiver', filters.receiver);
387
+ if (filters.sourceChainSelector != null)
388
+ url.searchParams.set('sourceChainSelector', filters.sourceChainSelector.toString());
389
+ if (filters.destChainSelector != null)
390
+ url.searchParams.set('destChainSelector', filters.destChainSelector.toString());
391
+ if (filters.sourceTransactionHash)
392
+ url.searchParams.set('sourceTransactionHash', filters.sourceTransactionHash);
393
+ if (filters.readyForManualExecOnly != null)
394
+ url.searchParams.set('readyForManualExecOnly', String(filters.readyForManualExecOnly));
395
+ }
396
+ if (options?.limit != null)
397
+ url.searchParams.set('limit', options.limit.toString());
325
398
  this.logger.debug(`CCIPAPIClient: GET ${url.toString()}`);
326
- const response = await this._fetchWithTimeout(url.toString(), 'getMessageIdsInTx');
399
+ const response = await this._fetchWithTimeout(url.toString(), 'searchMessages', options?.signal);
327
400
  if (!response.ok) {
328
- // Try to parse structured error response from API
401
+ // 404 empty results (search found nothing)
402
+ if (response.status === HttpStatus.NOT_FOUND) {
403
+ return { data: [], hasNextPage: false };
404
+ }
329
405
  let apiError;
330
406
  try {
331
407
  apiError = parseJson(await response.text());
332
408
  }
333
409
  catch {
334
- // Response body not JSON, use HTTP status only
335
- }
336
- // 404 - No messages found
337
- if (response.status === HttpStatus.NOT_FOUND) {
338
- throw new CCIPMessageNotFoundInTxError(txHash, {
339
- context: apiError
340
- ? {
341
- apiErrorCode: apiError.error,
342
- apiErrorMessage: apiError.message,
343
- }
344
- : undefined,
345
- });
410
+ // Response body not JSON
346
411
  }
347
- // Generic HTTP error for other cases
348
412
  throw new CCIPHttpError(response.status, response.statusText, {
349
413
  context: apiError
350
- ? {
351
- apiErrorCode: apiError.error,
352
- apiErrorMessage: apiError.message,
353
- }
414
+ ? { apiErrorCode: apiError.error, apiErrorMessage: apiError.message }
354
415
  : undefined,
355
416
  });
356
417
  }
357
418
  const raw = parseJson(await response.text());
358
- this.logger.debug('getMessageIdsInTx raw response:', raw);
359
- // Handle empty results
360
- if (raw.data.length === 0) {
419
+ this.logger.debug('searchMessages raw response:', raw);
420
+ return {
421
+ data: raw.data.map((msg) => {
422
+ const sourceInfo = ensureNetworkInfo(msg.sourceNetworkInfo, this.logger);
423
+ const destInfo = ensureNetworkInfo(msg.destNetworkInfo, this.logger);
424
+ return {
425
+ ...msg,
426
+ status: validateMessageStatus(msg.status, this.logger),
427
+ sourceNetworkInfo: sourceInfo,
428
+ destNetworkInfo: destInfo,
429
+ sender: decodeAddress(msg.sender, sourceInfo.family),
430
+ receiver: decodeAddress(msg.receiver, destInfo.family),
431
+ origin: decodeAddress(msg.origin, sourceInfo.family),
432
+ };
433
+ }),
434
+ hasNextPage: raw.pagination.hasNextPage,
435
+ cursor: raw.pagination.cursor ?? undefined,
436
+ };
437
+ }
438
+ /**
439
+ * Async generator that streams all messages matching the given filters,
440
+ * handling cursor-based pagination automatically.
441
+ *
442
+ * @param filters - Optional search filters (same as {@link CCIPAPIClient.searchMessages}).
443
+ * @param options - Optional `limit` controlling the per-page fetch size (number of
444
+ * results fetched per API call). The total number of results is controlled by the
445
+ * consumer — break out of the loop to stop early.
446
+ * @returns AsyncGenerator yielding {@link MessageSearchResult} one at a time, across all pages.
447
+ *
448
+ * @throws {@link CCIPTimeoutError} if a page request times out.
449
+ * @throws {@link CCIPAbortError} if a page request is aborted via signal.
450
+ * @throws {@link CCIPHttpError} on HTTP errors (4xx/5xx, except 404 which yields nothing).
451
+ *
452
+ * @see {@link CCIPAPIClient.searchMessages} — for page-level control and explicit cursor handling
453
+ * @see {@link CCIPAPIClient.getMessageById} — fetch full message details for a search result
454
+ *
455
+ * @example Iterate all messages for a sender
456
+ * ```typescript
457
+ * for await (const msg of api.searchAllMessages({ sender: '0x...' })) {
458
+ * console.log(`${msg.messageId}: ${msg.status}`)
459
+ * }
460
+ * ```
461
+ *
462
+ * @example Stop after collecting 5 results
463
+ * ```typescript
464
+ * const results: MessageSearchResult[] = []
465
+ * for await (const msg of api.searchAllMessages({ sender: '0x...' })) {
466
+ * results.push(msg)
467
+ * if (results.length >= 5) break
468
+ * }
469
+ * ```
470
+ */
471
+ async *searchAllMessages(filters, options) {
472
+ let cursor;
473
+ do {
474
+ const page = await this.searchMessages(filters, {
475
+ limit: options?.limit,
476
+ cursor,
477
+ signal: options?.signal,
478
+ });
479
+ yield* page.data;
480
+ cursor = page.cursor;
481
+ } while (cursor);
482
+ }
483
+ /**
484
+ * Fetches message IDs from a source transaction hash.
485
+ *
486
+ * @remarks
487
+ * Uses {@link CCIPAPIClient.searchMessages} internally with `sourceTransactionHash` filter and `limit: 100`.
488
+ *
489
+ * @param txHash - Source transaction hash.
490
+ * @returns Promise resolving to array of message IDs.
491
+ *
492
+ * @throws {@link CCIPMessageNotFoundInTxError} when no messages found (404 or empty).
493
+ * @throws {@link CCIPUnexpectedPaginationError} when hasNextPage is true.
494
+ * @throws {@link CCIPTimeoutError} if request times out.
495
+ * @throws {@link CCIPAbortError} if request is aborted via signal.
496
+ * @throws {@link CCIPHttpError} on HTTP errors.
497
+ *
498
+ * @example Basic usage
499
+ * ```typescript
500
+ * const messageIds = await api.getMessageIdsInTx(
501
+ * '0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef'
502
+ * )
503
+ * console.log(`Found ${messageIds.length} messages`)
504
+ * ```
505
+ *
506
+ * @example Fetch full details for each message
507
+ * ```typescript
508
+ * const api = CCIPAPIClient.fromUrl()
509
+ * const messageIds = await api.getMessageIdsInTx(txHash)
510
+ * for (const id of messageIds) {
511
+ * const request = await api.getMessageById(id)
512
+ * console.log(`${id}: ${request.metadata.status}`)
513
+ * }
514
+ * ```
515
+ */
516
+ async getMessageIdsInTx(txHash, options) {
517
+ const result = await this.searchMessages({ sourceTransactionHash: txHash }, { limit: 100, signal: options?.signal });
518
+ if (result.data.length === 0) {
361
519
  throw new CCIPMessageNotFoundInTxError(txHash);
362
520
  }
363
- // Handle unexpected pagination (more than 100 messages)
364
- if (raw.pagination.hasNextPage) {
365
- throw new CCIPUnexpectedPaginationError(txHash, raw.data.length);
521
+ if (result.hasNextPage) {
522
+ throw new CCIPUnexpectedPaginationError(txHash, result.data.length);
366
523
  }
367
- return raw.data.map((msg) => msg.messageId);
524
+ return result.data.map((msg) => msg.messageId);
368
525
  }
369
526
  /**
370
527
  * Fetches the execution input for a given message by id.
371
- * @param messageId - The ID of the message to fetch the execution input for.
372
- * @returns Either `{ encodedMessage, verifications }` or `{ message, offchainTokenData, ...proof }`, offRamp and lane
528
+ * For v2.0 messages, returns `{ encodedMessage, verifications }`.
529
+ * For pre-v2 messages, returns `{ message, offchainTokenData, proofs, ... }` with merkle proof.
530
+ *
531
+ * @param messageId - The CCIP message ID (32-byte hex string)
532
+ * @returns Execution input with offRamp address and lane info
533
+ *
534
+ * @throws {@link CCIPMessageIdNotFoundError} when message not found (404)
535
+ * @throws {@link CCIPTimeoutError} if request times out
536
+ * @throws {@link CCIPAbortError} if request is aborted via signal
537
+ * @throws {@link CCIPHttpError} on other HTTP errors
538
+ *
539
+ * @example
540
+ * ```typescript
541
+ * const api = CCIPAPIClient.fromUrl()
542
+ * const execInput = await api.getExecutionInput('0x1234...')
543
+ * // Use with dest.execute():
544
+ * const { offRamp, ...input } = execInput
545
+ * await dest.execute({ offRamp, input, wallet })
546
+ * ```
373
547
  */
374
- async getExecutionInput(messageId) {
548
+ async getExecutionInput(messageId, options) {
375
549
  const url = `${this.baseUrl}/v2/messages/${encodeURIComponent(messageId)}/execution-inputs`;
376
550
  this.logger.debug(`CCIPAPIClient: GET ${url}`);
377
- const response = await this._fetchWithTimeout(url, 'getExecutionInput');
551
+ const response = await this._fetchWithTimeout(url, 'getExecutionInput', options?.signal);
378
552
  if (!response.ok) {
379
553
  // Try to parse structured error response from API
380
554
  let apiError;
@@ -470,7 +644,7 @@ export class CCIPAPIClient {
470
644
  _transformMessageResponse(text) {
471
645
  // Build message with extraArgs spread and tokenAmounts included
472
646
  const raw = decodeMessage(text);
473
- const { sourceNetworkInfo, destNetworkInfo, status, origin, onramp, version, readyForManualExecution, sendTransactionHash, receiptTransactionHash, sendTimestamp, receiptTimestamp, deliveryTime, sendBlockNumber, sendLogIndex, ...message } = raw;
647
+ const { sourceNetworkInfo, destNetworkInfo, status, origin, onramp, offramp, version, readyForManualExecution, sendTransactionHash, receiptTransactionHash, sendTimestamp, receiptTimestamp, deliveryTime, sendBlockNumber, sendLogIndex, ...message } = raw;
474
648
  const sendDate = new Date(sendTimestamp);
475
649
  const sendTimestamp_ = isNaN(sendDate.getTime()) ? 0 : Math.floor(sendDate.getTime() / 1000);
476
650
  const receiptDate = receiptTimestamp && new Date(receiptTimestamp);
@@ -522,6 +696,7 @@ export class CCIPAPIClient {
522
696
  deliveryTime,
523
697
  sourceNetworkInfo: ensureNetworkInfo(sourceNetworkInfo, this.logger),
524
698
  destNetworkInfo: ensureNetworkInfo(destNetworkInfo, this.logger),
699
+ offRamp: offramp,
525
700
  },
526
701
  };
527
702
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"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"}
@@ -89,6 +89,7 @@ export type RawMessageResponse = {
89
89
  origin: string;
90
90
  sequenceNumber: string;
91
91
  onramp: string;
92
+ offramp?: string;
92
93
  sendBlockNumber: bigint;
93
94
  sendLogIndex: bigint;
94
95
  nonce?: string | null;
@@ -120,6 +121,114 @@ export type RawMessagesResponse = {
120
121
  cursor?: string | null;
121
122
  };
122
123
  };
124
+ /**
125
+ * Filters for searching CCIP messages via the API.
126
+ *
127
+ * All fields are optional — omit a field to leave it unfiltered.
128
+ * Chain selectors are accepted as `bigint` and converted to strings for the API.
129
+ *
130
+ * @see {@link CCIPAPIClient.searchMessages}
131
+ *
132
+ * @example
133
+ * ```typescript
134
+ * const api = CCIPAPIClient.fromUrl()
135
+ * // Find messages from a specific sender on a specific lane
136
+ * const page = await api.searchMessages({
137
+ * sender: '0x9d087fC03ae39b088326b67fA3C788236645b717',
138
+ * sourceChainSelector: 16015286601757825753n,
139
+ * destChainSelector: 14767482510784806043n,
140
+ * })
141
+ * ```
142
+ */
143
+ export type MessageSearchFilters = {
144
+ /** Filter by sender address */
145
+ sender?: string;
146
+ /** Filter by receiver address */
147
+ receiver?: string;
148
+ /** Filter by source chain selector */
149
+ sourceChainSelector?: bigint;
150
+ /** Filter by destination chain selector */
151
+ destChainSelector?: bigint;
152
+ /** Filter by source transaction hash */
153
+ sourceTransactionHash?: string;
154
+ /** When `true`, return only messages eligible for manual execution (stuck/failed messages) */
155
+ readyForManualExecOnly?: boolean;
156
+ };
157
+ /**
158
+ * A single message search result from the CCIP API.
159
+ *
160
+ * @remarks
161
+ * This is a lightweight summary — it does not include `extraArgs`, `tokenAmounts`,
162
+ * `fees`, or other detailed fields available via {@link CCIPAPIClient.getMessageById}.
163
+ *
164
+ * @see {@link CCIPAPIClient.getMessageById} — to fetch full message details
165
+ * @see {@link CCIPAPIClient.searchMessages}
166
+ *
167
+ * @example
168
+ * ```typescript
169
+ * const page = await api.searchMessages({ sender: '0x...' })
170
+ * for (const msg of page.data) {
171
+ * console.log(`${msg.messageId}: ${msg.status} (${msg.sourceNetworkInfo.name} → ${msg.destNetworkInfo.name})`)
172
+ * }
173
+ * ```
174
+ */
175
+ export type MessageSearchResult = {
176
+ /** Unique CCIP message ID (0x-prefixed, 32-byte hex string) */
177
+ messageId: string;
178
+ /** Transaction originator address (EOA that submitted the send transaction) */
179
+ origin: string;
180
+ /** Message sender address */
181
+ sender: string;
182
+ /** Message receiver address */
183
+ receiver: string;
184
+ /** Message lifecycle status */
185
+ status: MessageStatus;
186
+ /** Source network metadata */
187
+ sourceNetworkInfo: NetworkInfo;
188
+ /** Destination network metadata */
189
+ destNetworkInfo: NetworkInfo;
190
+ /** Source chain transaction hash */
191
+ sendTransactionHash: string;
192
+ /** ISO 8601 timestamp of the send transaction */
193
+ sendTimestamp: string;
194
+ };
195
+ /**
196
+ * A page of message search results with cursor-based pagination.
197
+ *
198
+ * @remarks
199
+ * When `hasNextPage` is `true`, pass the `cursor` value to
200
+ * {@link CCIPAPIClient.searchMessages} to fetch the next page.
201
+ * The cursor encodes all original filters, so you do not need
202
+ * to re-supply them when paginating.
203
+ *
204
+ * @see {@link MessageSearchFilters}
205
+ * @see {@link CCIPAPIClient.searchMessages}
206
+ * @see {@link CCIPAPIClient.searchAllMessages} — async generator alternative that handles
207
+ * pagination automatically
208
+ *
209
+ * @example Manual pagination
210
+ * ```typescript
211
+ * let page = await api.searchMessages({ sender: '0x...' }, { limit: 10 })
212
+ * while (page.hasNextPage) {
213
+ * page = await api.searchMessages(undefined, { cursor: page.cursor! })
214
+ * }
215
+ * ```
216
+ *
217
+ * @example Automatic pagination (preferred for most use cases)
218
+ * ```typescript
219
+ * for await (const msg of api.searchAllMessages({ sender: '0x...' })) {
220
+ * console.log(msg.messageId)
221
+ * }
222
+ * ```
223
+ */
224
+ export type MessageSearchPage = {
225
+ /** Array of message search results */
226
+ data: MessageSearchResult[];
227
+ /** Whether more results are available */
228
+ hasNextPage: boolean;
229
+ /** Opaque cursor for fetching the next page */
230
+ cursor?: string;
231
+ };
123
232
  /**
124
233
  * API-specific metadata fields for CCIP requests.
125
234
  *
@@ -153,8 +262,17 @@ export type APICCIPRequestMetadata = {
153
262
  sourceNetworkInfo: NetworkInfo;
154
263
  /** Destination network metadata. */
155
264
  destNetworkInfo: NetworkInfo;
265
+ /** OffRamp address on dest */
266
+ offRamp?: string;
156
267
  };
157
- /** Raw API response from GET /v2/messages/:messageId/execution-inputs */
268
+ /**
269
+ * Raw API response from GET /v2/messages/:messageId/execution-inputs.
270
+ *
271
+ * @remarks
272
+ * The response has two union branches:
273
+ * - **v2.0+**: contains `encodedMessage` (MessageV1Codec-serialized), optional `ccvData` array, and `verifierAddresses`
274
+ * - **pre-v2**: contains `messageBatch` array with decoded messages, `merkleRoot`, and optional USDC/LBTC attestation data
275
+ */
158
276
  export type RawExecutionInputsResult = {
159
277
  offramp: string;
160
278
  } & ({