@coinbase/cdp-sdk 1.43.0 → 1.44.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.
- package/CHANGELOG.md +18 -0
- package/README.md +63 -0
- package/_cjs/actions/evm/sendUserOperation.js +23 -10
- package/_cjs/actions/evm/sendUserOperation.js.map +1 -1
- package/_cjs/actions/evm/transfer/utils.js +1 -1
- package/_cjs/actions/evm/transfer/utils.js.map +1 -1
- package/_cjs/auth/utils/hash.js +1 -1
- package/_cjs/auth/utils/hash.js.map +1 -1
- package/_cjs/auth/utils/http.js +4 -1
- package/_cjs/auth/utils/http.js.map +1 -1
- package/_cjs/client/end-user/endUser.js +88 -5
- package/_cjs/client/end-user/endUser.js.map +1 -1
- package/_cjs/client/end-user/toEndUserAccount.js +51 -0
- package/_cjs/client/end-user/toEndUserAccount.js.map +1 -0
- package/_cjs/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js +4 -2
- package/_cjs/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js.map +1 -1
- package/_cjs/openapi-client/generated/end-user-accounts/end-user-accounts.js +43 -1
- package/_cjs/openapi-client/generated/end-user-accounts/end-user-accounts.js.map +1 -1
- package/_cjs/openapi-client/generated/webhooks/webhooks.js +8 -1
- package/_cjs/openapi-client/generated/webhooks/webhooks.js.map +1 -1
- package/_cjs/version.js +1 -1
- package/_esm/actions/evm/sendUserOperation.js +23 -10
- package/_esm/actions/evm/sendUserOperation.js.map +1 -1
- package/_esm/actions/evm/transfer/utils.js +1 -1
- package/_esm/actions/evm/transfer/utils.js.map +1 -1
- package/_esm/auth/utils/hash.js +1 -1
- package/_esm/auth/utils/hash.js.map +1 -1
- package/_esm/auth/utils/http.js +4 -1
- package/_esm/auth/utils/http.js.map +1 -1
- package/_esm/client/end-user/endUser.js +89 -6
- package/_esm/client/end-user/endUser.js.map +1 -1
- package/_esm/client/end-user/toEndUserAccount.js +48 -0
- package/_esm/client/end-user/toEndUserAccount.js.map +1 -0
- package/_esm/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js +4 -2
- package/_esm/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js.map +1 -1
- package/_esm/openapi-client/generated/end-user-accounts/end-user-accounts.js +39 -0
- package/_esm/openapi-client/generated/end-user-accounts/end-user-accounts.js.map +1 -1
- package/_esm/openapi-client/generated/webhooks/webhooks.js +8 -1
- package/_esm/openapi-client/generated/webhooks/webhooks.js.map +1 -1
- package/_esm/version.js +1 -1
- package/_types/actions/evm/sendUserOperation.d.ts.map +1 -1
- package/_types/actions/evm/transfer/utils.d.ts +2 -1
- package/_types/actions/evm/transfer/utils.d.ts.map +1 -1
- package/_types/auth/utils/http.d.ts.map +1 -1
- package/_types/client/end-user/endUser.d.ts +64 -6
- package/_types/client/end-user/endUser.d.ts.map +1 -1
- package/_types/client/end-user/endUser.types.d.ts +124 -1
- package/_types/client/end-user/endUser.types.d.ts.map +1 -1
- package/_types/client/end-user/toEndUserAccount.d.ts +20 -0
- package/_types/client/end-user/toEndUserAccount.d.ts.map +1 -0
- package/_types/index.d.ts +1 -1
- package/_types/index.d.ts.map +1 -1
- package/_types/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.d.ts +62 -38
- package/_types/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.d.ts.map +1 -1
- package/_types/openapi-client/generated/end-user-accounts/end-user-accounts.d.ts +22 -1
- package/_types/openapi-client/generated/end-user-accounts/end-user-accounts.d.ts.map +1 -1
- package/_types/openapi-client/generated/webhooks/webhooks.d.ts +8 -1
- package/_types/openapi-client/generated/webhooks/webhooks.d.ts.map +1 -1
- package/_types/openapi-client/index.d.ts +3 -0
- package/_types/openapi-client/index.d.ts.map +1 -1
- package/_types/version.d.ts +1 -1
- package/actions/evm/sendUserOperation.ts +45 -11
- package/actions/evm/transfer/utils.ts +5 -3
- package/auth/utils/hash.ts +1 -1
- package/auth/utils/http.ts +5 -2
- package/client/end-user/endUser.ts +119 -14
- package/client/end-user/endUser.types.ts +140 -0
- package/client/end-user/toEndUserAccount.ts +80 -0
- package/index.ts +1 -1
- package/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.ts +74 -41
- package/openapi-client/generated/end-user-accounts/end-user-accounts.ts +75 -0
- package/openapi-client/generated/webhooks/webhooks.ts +8 -1
- package/package.json +1 -1
- package/version.ts +1 -1
|
@@ -270,8 +270,6 @@ export const ErrorType = {
|
|
|
270
270
|
mfa_flow_expired: "mfa_flow_expired",
|
|
271
271
|
mfa_required: "mfa_required",
|
|
272
272
|
mfa_not_enrolled: "mfa_not_enrolled",
|
|
273
|
-
mfa_multiple_methods_available: "mfa_multiple_methods_available",
|
|
274
|
-
mfa_invalid_method: "mfa_invalid_method",
|
|
275
273
|
} as const;
|
|
276
274
|
|
|
277
275
|
/**
|
|
@@ -2563,6 +2561,20 @@ export interface AccountTokenAddressesResponse {
|
|
|
2563
2561
|
totalCount?: number;
|
|
2564
2562
|
}
|
|
2565
2563
|
|
|
2564
|
+
/**
|
|
2565
|
+
* A human-readable description.
|
|
2566
|
+
* @minLength 0
|
|
2567
|
+
* @maxLength 500
|
|
2568
|
+
*/
|
|
2569
|
+
export type Description = string;
|
|
2570
|
+
|
|
2571
|
+
/**
|
|
2572
|
+
* Optional metadata as key-value pairs. Use this to store additional structured information on a resource, such as customer IDs, order references, or any application-specific data. Up to 50 key/value pairs may be provided. Keys and values are both strings. Keys must be ≤ 40 characters; values must be ≤ 500 characters.
|
|
2573
|
+
*/
|
|
2574
|
+
export interface Metadata {
|
|
2575
|
+
[key: string]: string;
|
|
2576
|
+
}
|
|
2577
|
+
|
|
2566
2578
|
/**
|
|
2567
2579
|
* Additional headers to include in webhook requests.
|
|
2568
2580
|
*/
|
|
@@ -2580,10 +2592,7 @@ export interface WebhookTarget {
|
|
|
2580
2592
|
headers?: WebhookTargetHeaders;
|
|
2581
2593
|
}
|
|
2582
2594
|
|
|
2583
|
-
|
|
2584
|
-
* Additional metadata for the subscription.
|
|
2585
|
-
*/
|
|
2586
|
-
export type WebhookSubscriptionResponseMetadata = {
|
|
2595
|
+
export type WebhookSubscriptionResponseMetadataAllOf = {
|
|
2587
2596
|
/**
|
|
2588
2597
|
* Use the root-level `secret` field instead. Maintained for backward compatibility only.
|
|
2589
2598
|
* @deprecated
|
|
@@ -2591,6 +2600,12 @@ export type WebhookSubscriptionResponseMetadata = {
|
|
|
2591
2600
|
secret?: string;
|
|
2592
2601
|
};
|
|
2593
2602
|
|
|
2603
|
+
/**
|
|
2604
|
+
* Additional metadata for the subscription.
|
|
2605
|
+
*/
|
|
2606
|
+
export type WebhookSubscriptionResponseMetadata = Metadata &
|
|
2607
|
+
WebhookSubscriptionResponseMetadataAllOf;
|
|
2608
|
+
|
|
2594
2609
|
/**
|
|
2595
2610
|
* Multi-label filters using total overlap logic. Total overlap means the subscription only triggers when events contain ALL these key-value pairs.
|
|
2596
2611
|
Present when subscription uses multi-label format.
|
|
@@ -2605,8 +2620,8 @@ export interface WebhookSubscriptionResponse {
|
|
|
2605
2620
|
/** When the subscription was created. */
|
|
2606
2621
|
createdAt: string;
|
|
2607
2622
|
/** Description of the webhook subscription. */
|
|
2608
|
-
description?:
|
|
2609
|
-
/** Types of events to subscribe to. Event types follow a three-part dot-separated format:
|
|
2623
|
+
description?: Description;
|
|
2624
|
+
/** Types of events to subscribe to. Event types follow a three-part dot-separated format:
|
|
2610
2625
|
service.resource.verb (e.g., "onchain.activity.detected", "wallet.activity.detected", "onramp.transaction.created").
|
|
2611
2626
|
*/
|
|
2612
2627
|
eventTypes: string[];
|
|
@@ -2653,11 +2668,6 @@ export type WebhookSubscriptionListResponseAllOf = {
|
|
|
2653
2668
|
|
|
2654
2669
|
export type WebhookSubscriptionListResponse = WebhookSubscriptionListResponseAllOf & ListResponse;
|
|
2655
2670
|
|
|
2656
|
-
/**
|
|
2657
|
-
* Additional metadata for the subscription.
|
|
2658
|
-
*/
|
|
2659
|
-
export type WebhookSubscriptionRequestMetadata = { [key: string]: unknown };
|
|
2660
|
-
|
|
2661
2671
|
/**
|
|
2662
2672
|
* Multi-label filters using total overlap logic. Total overlap means the subscription will only trigger when
|
|
2663
2673
|
an event contains ALL the key-value pairs specified here. Additional labels on
|
|
@@ -2678,8 +2688,8 @@ and multi-label filtering formats.
|
|
|
2678
2688
|
export type WebhookSubscriptionRequest =
|
|
2679
2689
|
| (unknown & {
|
|
2680
2690
|
/** Description of the webhook subscription. */
|
|
2681
|
-
description?:
|
|
2682
|
-
/** Types of events to subscribe to. Event types follow a three-part dot-separated format:
|
|
2691
|
+
description?: Description;
|
|
2692
|
+
/** Types of events to subscribe to. Event types follow a three-part dot-separated format:
|
|
2683
2693
|
service.resource.verb (e.g., "onchain.activity.detected", "wallet.activity.detected", "onramp.transaction.created").
|
|
2684
2694
|
The subscription will only receive events matching these types AND the label filter(s).
|
|
2685
2695
|
*/
|
|
@@ -2687,8 +2697,7 @@ The subscription will only receive events matching these types AND the label fil
|
|
|
2687
2697
|
/** Whether the subscription is enabled. */
|
|
2688
2698
|
isEnabled?: boolean;
|
|
2689
2699
|
target?: WebhookTarget;
|
|
2690
|
-
|
|
2691
|
-
metadata?: WebhookSubscriptionRequestMetadata;
|
|
2700
|
+
metadata?: Metadata;
|
|
2692
2701
|
/**
|
|
2693
2702
|
* (Deprecated) Use `labels` instead for better filtering capabilities, including filtering on multiple labels simultaneously.
|
|
2694
2703
|
|
|
@@ -2725,8 +2734,8 @@ See [allowed labels for onchain webhooks](https://docs.cdp.coinbase.com/api-refe
|
|
|
2725
2734
|
})
|
|
2726
2735
|
| (unknown & {
|
|
2727
2736
|
/** Description of the webhook subscription. */
|
|
2728
|
-
description?:
|
|
2729
|
-
/** Types of events to subscribe to. Event types follow a three-part dot-separated format:
|
|
2737
|
+
description?: Description;
|
|
2738
|
+
/** Types of events to subscribe to. Event types follow a three-part dot-separated format:
|
|
2730
2739
|
service.resource.verb (e.g., "onchain.activity.detected", "wallet.activity.detected", "onramp.transaction.created").
|
|
2731
2740
|
The subscription will only receive events matching these types AND the label filter(s).
|
|
2732
2741
|
*/
|
|
@@ -2734,8 +2743,7 @@ The subscription will only receive events matching these types AND the label fil
|
|
|
2734
2743
|
/** Whether the subscription is enabled. */
|
|
2735
2744
|
isEnabled?: boolean;
|
|
2736
2745
|
target?: WebhookTarget;
|
|
2737
|
-
|
|
2738
|
-
metadata?: WebhookSubscriptionRequestMetadata;
|
|
2746
|
+
metadata?: Metadata;
|
|
2739
2747
|
/**
|
|
2740
2748
|
* (Deprecated) Use `labels` instead for better filtering capabilities, including filtering on multiple labels simultaneously.
|
|
2741
2749
|
|
|
@@ -2771,11 +2779,6 @@ See [allowed labels for onchain webhooks](https://docs.cdp.coinbase.com/api-refe
|
|
|
2771
2779
|
labels?: WebhookSubscriptionRequestLabels;
|
|
2772
2780
|
});
|
|
2773
2781
|
|
|
2774
|
-
/**
|
|
2775
|
-
* Additional metadata for the subscription.
|
|
2776
|
-
*/
|
|
2777
|
-
export type WebhookSubscriptionUpdateRequestMetadata = { [key: string]: unknown };
|
|
2778
|
-
|
|
2779
2782
|
/**
|
|
2780
2783
|
* Multi-label filters that trigger only when an event contains ALL of these key-value pairs.
|
|
2781
2784
|
|
|
@@ -2794,16 +2797,15 @@ the original subscription format (traditional or multi-label).
|
|
|
2794
2797
|
export type WebhookSubscriptionUpdateRequest =
|
|
2795
2798
|
| (unknown & {
|
|
2796
2799
|
/** Description of the webhook subscription. */
|
|
2797
|
-
description?:
|
|
2798
|
-
/** Types of events to subscribe to. Event types follow a three-part dot-separated format:
|
|
2800
|
+
description?: Description;
|
|
2801
|
+
/** Types of events to subscribe to. Event types follow a three-part dot-separated format:
|
|
2799
2802
|
service.resource.verb (e.g., "onchain.activity.detected", "wallet.activity.detected", "onramp.transaction.created").
|
|
2800
2803
|
*/
|
|
2801
2804
|
eventTypes?: string[];
|
|
2802
2805
|
/** Whether the subscription is enabled. */
|
|
2803
2806
|
isEnabled?: boolean;
|
|
2804
2807
|
target?: WebhookTarget;
|
|
2805
|
-
|
|
2806
|
-
metadata?: WebhookSubscriptionUpdateRequestMetadata;
|
|
2808
|
+
metadata?: Metadata;
|
|
2807
2809
|
/** Multi-label filters that trigger only when an event contains ALL of these key-value pairs.
|
|
2808
2810
|
|
|
2809
2811
|
**Note:** Currently, labels are supported for onchain webhooks only.
|
|
@@ -2832,16 +2834,15 @@ Maintained for backward compatibility only.
|
|
|
2832
2834
|
})
|
|
2833
2835
|
| (unknown & {
|
|
2834
2836
|
/** Description of the webhook subscription. */
|
|
2835
|
-
description?:
|
|
2836
|
-
/** Types of events to subscribe to. Event types follow a three-part dot-separated format:
|
|
2837
|
+
description?: Description;
|
|
2838
|
+
/** Types of events to subscribe to. Event types follow a three-part dot-separated format:
|
|
2837
2839
|
service.resource.verb (e.g., "onchain.activity.detected", "wallet.activity.detected", "onramp.transaction.created").
|
|
2838
2840
|
*/
|
|
2839
2841
|
eventTypes?: string[];
|
|
2840
2842
|
/** Whether the subscription is enabled. */
|
|
2841
2843
|
isEnabled?: boolean;
|
|
2842
2844
|
target?: WebhookTarget;
|
|
2843
|
-
|
|
2844
|
-
metadata?: WebhookSubscriptionUpdateRequestMetadata;
|
|
2845
|
+
metadata?: Metadata;
|
|
2845
2846
|
/** Multi-label filters that trigger only when an event contains ALL of these key-value pairs.
|
|
2846
2847
|
|
|
2847
2848
|
**Note:** Currently, labels are supported for onchain webhooks only.
|
|
@@ -3021,8 +3022,8 @@ For Solana-based networks, payTo will be a base58-encoded Solana address.
|
|
|
3021
3022
|
export interface X402ResourceInfo {
|
|
3022
3023
|
/** The URL of the resource. */
|
|
3023
3024
|
url?: string;
|
|
3024
|
-
/**
|
|
3025
|
-
description?:
|
|
3025
|
+
/** A human-readable description of the resource. */
|
|
3026
|
+
description?: Description;
|
|
3026
3027
|
/** The MIME type of the resource response. */
|
|
3027
3028
|
mimeType?: string;
|
|
3028
3029
|
}
|
|
@@ -3102,8 +3103,8 @@ export interface X402V1PaymentRequirements {
|
|
|
3102
3103
|
maxAmountRequired: string;
|
|
3103
3104
|
/** The URL of the resource to pay for. */
|
|
3104
3105
|
resource: string;
|
|
3105
|
-
/**
|
|
3106
|
-
description:
|
|
3106
|
+
/** A human-readable description of the resource. */
|
|
3107
|
+
description: Description;
|
|
3107
3108
|
/** The MIME type of the resource response. */
|
|
3108
3109
|
mimeType: string;
|
|
3109
3110
|
/** The optional JSON schema describing the resource output. */
|
|
@@ -3352,6 +3353,10 @@ export const X402SupportedPaymentKindNetwork = {
|
|
|
3352
3353
|
base: "base",
|
|
3353
3354
|
"solana-devnet": "solana-devnet",
|
|
3354
3355
|
solana: "solana",
|
|
3356
|
+
"eip155:8453": "eip155:8453",
|
|
3357
|
+
"eip155:84532": "eip155:84532",
|
|
3358
|
+
"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
|
|
3359
|
+
"solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1": "solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1",
|
|
3355
3360
|
} as const;
|
|
3356
3361
|
|
|
3357
3362
|
/**
|
|
@@ -3372,6 +3377,13 @@ export interface X402SupportedPaymentKind {
|
|
|
3372
3377
|
extra?: X402SupportedPaymentKindExtra;
|
|
3373
3378
|
}
|
|
3374
3379
|
|
|
3380
|
+
/**
|
|
3381
|
+
* A blockchain address. Format varies by network (e.g., 0x-prefixed for EVM, base58 for Solana).
|
|
3382
|
+
* @minLength 1
|
|
3383
|
+
* @maxLength 128
|
|
3384
|
+
*/
|
|
3385
|
+
export type BlockchainAddress = string;
|
|
3386
|
+
|
|
3375
3387
|
/**
|
|
3376
3388
|
* The type of payment method to be used to complete an onramp order.
|
|
3377
3389
|
*/
|
|
@@ -3442,7 +3454,7 @@ export interface OnrampOrder {
|
|
|
3442
3454
|
/** The exchange rate used to convert fiat to crypto i.e. the crypto value of one fiat. */
|
|
3443
3455
|
exchangeRate: string;
|
|
3444
3456
|
/** The destination address to send the crypto to. */
|
|
3445
|
-
destinationAddress:
|
|
3457
|
+
destinationAddress: BlockchainAddress;
|
|
3446
3458
|
/** The network to send the crypto on. */
|
|
3447
3459
|
destinationNetwork: string;
|
|
3448
3460
|
status: OnrampOrderStatus;
|
|
@@ -3742,6 +3754,27 @@ export type ValidateEndUserAccessTokenBody = {
|
|
|
3742
3754
|
accessToken: string;
|
|
3743
3755
|
};
|
|
3744
3756
|
|
|
3757
|
+
export type AddEndUserEvmAccountBody = { [key: string]: unknown };
|
|
3758
|
+
|
|
3759
|
+
export type AddEndUserEvmAccount201 = {
|
|
3760
|
+
evmAccount: EndUserEvmAccount;
|
|
3761
|
+
};
|
|
3762
|
+
|
|
3763
|
+
export type AddEndUserEvmSmartAccountBody = {
|
|
3764
|
+
/** If true, enables spend permissions for the EVM smart account. */
|
|
3765
|
+
enableSpendPermissions?: boolean;
|
|
3766
|
+
};
|
|
3767
|
+
|
|
3768
|
+
export type AddEndUserEvmSmartAccount201 = {
|
|
3769
|
+
evmSmartAccount: EndUserEvmSmartAccount;
|
|
3770
|
+
};
|
|
3771
|
+
|
|
3772
|
+
export type AddEndUserSolanaAccountBody = { [key: string]: unknown };
|
|
3773
|
+
|
|
3774
|
+
export type AddEndUserSolanaAccount201 = {
|
|
3775
|
+
solanaAccount: EndUserSolanaAccount;
|
|
3776
|
+
};
|
|
3777
|
+
|
|
3745
3778
|
/**
|
|
3746
3779
|
* The type of key being imported. Determines what type of account will be associated for the end user.
|
|
3747
3780
|
*/
|
|
@@ -4394,7 +4427,7 @@ export type CreateOnrampOrderBody = {
|
|
|
4394
4427
|
/** The timestamp of when the user acknowledged that by using Coinbase Onramp they are accepting the Coinbase Terms (https://www.coinbase.com/legal/guest-checkout/us), User Agreement (https://www.coinbase.com/legal/user_agreement), and Privacy Policy (https://www.coinbase.com/legal/privacy). */
|
|
4395
4428
|
agreementAcceptedAt: string;
|
|
4396
4429
|
/** The address the purchased crypto will be sent to. */
|
|
4397
|
-
destinationAddress:
|
|
4430
|
+
destinationAddress: BlockchainAddress;
|
|
4398
4431
|
/** The name of the crypto network the purchased currency will be sent on.
|
|
4399
4432
|
|
|
4400
4433
|
Use the [Onramp Buy Options API](https://docs.cdp.coinbase.com/api-reference/rest-api/onramp-offramp/get-buy-options) to discover the supported networks for your user's location. */
|
|
@@ -4451,7 +4484,7 @@ Use the [Onramp Buy Options API](https://docs.cdp.coinbase.com/api-reference/res
|
|
|
4451
4484
|
Use the [Onramp Buy Options API](https://docs.cdp.coinbase.com/api-reference/rest-api/onramp-offramp/get-buy-options) to discover the supported networks for your user's location. */
|
|
4452
4485
|
destinationNetwork: string;
|
|
4453
4486
|
/** The address the purchased crypto will be sent to. */
|
|
4454
|
-
destinationAddress:
|
|
4487
|
+
destinationAddress: BlockchainAddress;
|
|
4455
4488
|
/** A string representing the amount of fiat the user wishes to pay in exchange for crypto. When using this parameter, the returned quote will be inclusive of fees i.e. the user will pay this exact amount of the payment currency. */
|
|
4456
4489
|
paymentAmount?: string;
|
|
4457
4490
|
/** A string representing the amount of crypto the user wishes to purchase. When using this parameter, the returned quote will be exclusive of fees i.e. the user will receive this exact amount of the purchase currency. */
|
|
@@ -6,6 +6,12 @@
|
|
|
6
6
|
* OpenAPI spec version: 2.0.0
|
|
7
7
|
*/
|
|
8
8
|
import type {
|
|
9
|
+
AddEndUserEvmAccount201,
|
|
10
|
+
AddEndUserEvmAccountBody,
|
|
11
|
+
AddEndUserEvmSmartAccount201,
|
|
12
|
+
AddEndUserEvmSmartAccountBody,
|
|
13
|
+
AddEndUserSolanaAccount201,
|
|
14
|
+
AddEndUserSolanaAccountBody,
|
|
9
15
|
CreateEndUserBody,
|
|
10
16
|
EndUser,
|
|
11
17
|
ImportEndUserBody,
|
|
@@ -77,6 +83,66 @@ This API is intended to be used by the developer's own backend, and is authentic
|
|
|
77
83
|
export const getEndUser = (userId: string, options?: SecondParameter<typeof cdpApiClient>) => {
|
|
78
84
|
return cdpApiClient<EndUser>({ url: `/v2/end-users/${userId}`, method: "GET" }, options);
|
|
79
85
|
};
|
|
86
|
+
/**
|
|
87
|
+
* Adds a new EVM EOA account to an existing end user. End users can have up to 10 EVM accounts.
|
|
88
|
+
This API is intended to be used by the developer's own backend, and is authenticated using the developer's CDP API key.
|
|
89
|
+
* @summary Add an EVM account to an end user
|
|
90
|
+
*/
|
|
91
|
+
export const addEndUserEvmAccount = (
|
|
92
|
+
userId: string,
|
|
93
|
+
addEndUserEvmAccountBody?: AddEndUserEvmAccountBody,
|
|
94
|
+
options?: SecondParameter<typeof cdpApiClient>,
|
|
95
|
+
) => {
|
|
96
|
+
return cdpApiClient<AddEndUserEvmAccount201>(
|
|
97
|
+
{
|
|
98
|
+
url: `/v2/end-users/${userId}/evm`,
|
|
99
|
+
method: "POST",
|
|
100
|
+
headers: { "Content-Type": "application/json" },
|
|
101
|
+
data: addEndUserEvmAccountBody,
|
|
102
|
+
},
|
|
103
|
+
options,
|
|
104
|
+
);
|
|
105
|
+
};
|
|
106
|
+
/**
|
|
107
|
+
* Creates an EVM smart account for an existing end user. The backend will create a new EVM EOA account to serve as the owner of the smart account.
|
|
108
|
+
This API is intended to be used by the developer's own backend, and is authenticated using the developer's CDP API key.
|
|
109
|
+
* @summary Add an EVM smart account to an end user
|
|
110
|
+
*/
|
|
111
|
+
export const addEndUserEvmSmartAccount = (
|
|
112
|
+
userId: string,
|
|
113
|
+
addEndUserEvmSmartAccountBody?: AddEndUserEvmSmartAccountBody,
|
|
114
|
+
options?: SecondParameter<typeof cdpApiClient>,
|
|
115
|
+
) => {
|
|
116
|
+
return cdpApiClient<AddEndUserEvmSmartAccount201>(
|
|
117
|
+
{
|
|
118
|
+
url: `/v2/end-users/${userId}/evm-smart-account`,
|
|
119
|
+
method: "POST",
|
|
120
|
+
headers: { "Content-Type": "application/json" },
|
|
121
|
+
data: addEndUserEvmSmartAccountBody,
|
|
122
|
+
},
|
|
123
|
+
options,
|
|
124
|
+
);
|
|
125
|
+
};
|
|
126
|
+
/**
|
|
127
|
+
* Adds a new Solana account to an existing end user. End users can have up to 10 Solana accounts.
|
|
128
|
+
This API is intended to be used by the developer's own backend, and is authenticated using the developer's CDP API key.
|
|
129
|
+
* @summary Add a Solana account to an end user
|
|
130
|
+
*/
|
|
131
|
+
export const addEndUserSolanaAccount = (
|
|
132
|
+
userId: string,
|
|
133
|
+
addEndUserSolanaAccountBody?: AddEndUserSolanaAccountBody,
|
|
134
|
+
options?: SecondParameter<typeof cdpApiClient>,
|
|
135
|
+
) => {
|
|
136
|
+
return cdpApiClient<AddEndUserSolanaAccount201>(
|
|
137
|
+
{
|
|
138
|
+
url: `/v2/end-users/${userId}/solana`,
|
|
139
|
+
method: "POST",
|
|
140
|
+
headers: { "Content-Type": "application/json" },
|
|
141
|
+
data: addEndUserSolanaAccountBody,
|
|
142
|
+
},
|
|
143
|
+
options,
|
|
144
|
+
);
|
|
145
|
+
};
|
|
80
146
|
/**
|
|
81
147
|
* Imports an existing private key for an end user into the developer's CDP Project. The private key must be encrypted using the CDP SDK's encryption scheme before being sent to this endpoint. This API should be called from the [CDP SDK](https://github.com/coinbase/cdp-sdk) to ensure that the associated private key is properly encrypted.
|
|
82
148
|
|
|
@@ -103,4 +169,13 @@ export type ValidateEndUserAccessTokenResult = NonNullable<
|
|
|
103
169
|
Awaited<ReturnType<typeof validateEndUserAccessToken>>
|
|
104
170
|
>;
|
|
105
171
|
export type GetEndUserResult = NonNullable<Awaited<ReturnType<typeof getEndUser>>>;
|
|
172
|
+
export type AddEndUserEvmAccountResult = NonNullable<
|
|
173
|
+
Awaited<ReturnType<typeof addEndUserEvmAccount>>
|
|
174
|
+
>;
|
|
175
|
+
export type AddEndUserEvmSmartAccountResult = NonNullable<
|
|
176
|
+
Awaited<ReturnType<typeof addEndUserEvmSmartAccount>>
|
|
177
|
+
>;
|
|
178
|
+
export type AddEndUserSolanaAccountResult = NonNullable<
|
|
179
|
+
Awaited<ReturnType<typeof addEndUserSolanaAccount>>
|
|
180
|
+
>;
|
|
106
181
|
export type ImportEndUserResult = NonNullable<Awaited<ReturnType<typeof importEndUser>>>;
|
|
@@ -54,12 +54,19 @@ export const listWebhookSubscriptions = (
|
|
|
54
54
|
- `offramp.transaction.success`, `offramp.transaction.failed`
|
|
55
55
|
- **No labels required** - maximum simplicity for transaction monitoring
|
|
56
56
|
|
|
57
|
+
**Payments Transfers Events** - Transfer lifecycle notifications:
|
|
58
|
+
- `payments.transfers.quoted`
|
|
59
|
+
- `payments.transfers.processing`
|
|
60
|
+
- `payments.transfers.completed`
|
|
61
|
+
- `payments.transfers.failed`
|
|
62
|
+
- **No labels required** - enable the transfers webhook to monitor status transitions
|
|
63
|
+
|
|
57
64
|
**Wallet Events** - Wallet activity notifications:
|
|
58
65
|
- `wallet.activity.detected`
|
|
59
66
|
|
|
60
67
|
### Webhook Signature Verification
|
|
61
68
|
All webhooks include cryptographic signatures for security.
|
|
62
|
-
The signature secret is returned in `
|
|
69
|
+
The signature secret is returned in `secret` field when creating a subscription.
|
|
63
70
|
|
|
64
71
|
**Note:** Webhooks are in beta and this interface is subject to change.
|
|
65
72
|
|
package/package.json
CHANGED
package/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = "1.
|
|
1
|
+
export const version = "1.44.0";
|