diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4ab9d98..2c47c78 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -23,10 +23,10 @@ jobs: runs-on: ${{ github.repository == 'stainless-sdks/privy-api-client-typescript' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} if: ((github.event_name == 'push' || github.event.pull_request.head.repo.fork) && (github.event_name != 'push' || github.event.head_commit.message != 'codegen metadata')) || github.event_name == 'schedule' steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Set up Node - uses: actions/setup-node@v4 + uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: node-version: '20' @@ -45,10 +45,10 @@ jobs: contents: read id-token: write steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Set up Node - uses: actions/setup-node@v4 + uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: node-version: '20' @@ -63,7 +63,7 @@ jobs: github.repository == 'stainless-sdks/privy-api-client-typescript' && !startsWith(github.ref, 'refs/heads/stl/') id: github-oidc - uses: actions/github-script@v8 + uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0 with: script: core.setOutput('github_token', await core.getIDToken()); @@ -88,10 +88,10 @@ jobs: runs-on: ${{ github.repository == 'stainless-sdks/privy-api-client-typescript' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }} if: github.event_name == 'push' || github.event_name == 'schedule' || github.event.pull_request.head.repo.fork steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Set up Node - uses: actions/setup-node@v4 + uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: node-version: '20' diff --git a/.github/workflows/publish-npm.yml b/.github/workflows/publish-npm.yml index b3c670c..bc731eb 100644 --- a/.github/workflows/publish-npm.yml +++ b/.github/workflows/publish-npm.yml @@ -17,10 +17,10 @@ jobs: id-token: write steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Set up Node - uses: actions/setup-node@v3 + uses: actions/setup-node@3235b876344d2a9aa001b8d1453c930bba69e610 # v3.9.1 with: node-version: '20' diff --git a/.github/workflows/release-doctor.yml b/.github/workflows/release-doctor.yml index 2b86b06..e86c6fd 100644 --- a/.github/workflows/release-doctor.yml +++ b/.github/workflows/release-doctor.yml @@ -12,7 +12,7 @@ jobs: if: github.repository == 'privy-io/node-sdk' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next') steps: - - uses: actions/checkout@v6 + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - name: Check release environment run: | diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 5e39b94..19ee807 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.18.0" + ".": "0.19.0" } diff --git a/.stats.yml b/.stats.yml index b52da9f..388ba99 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 67 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/privy/privy-api-client-11cde26e1a7313989e25e5f04dc7fe16581f8eabae3570f133711cd0763b5e83.yml -openapi_spec_hash: 2dcdc61cee31cef3e1c09cbf8f7654a0 -config_hash: 63ee20ce66503dcb9e25a1bbc958afa3 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/privy/privy-api-client-f1ed993000d47b748072ba4248039ffab99bca08fe55b51c12f63870c7670c57.yml +openapi_spec_hash: ee8c47083eebad77609cc9a50b4f09bd +config_hash: 2558085bd9c7099cc21d156843a49ef1 diff --git a/CHANGELOG.md b/CHANGELOG.md index 1e06009..2eb9b5b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,20 @@ # Changelog +## 0.19.0 (2026-05-14) + +Full Changelog: [v0.18.0...v0.19.0](https://github.com/privy-io/node-sdk/compare/v0.18.0...v0.19.0) + +### Features + +* **api:** api update ([fdbffe3](https://github.com/privy-io/node-sdk/commit/fdbffe3347f561414bd7dd5d6aa5dd44957767bf)) +* **api:** api update ([3ca95ee](https://github.com/privy-io/node-sdk/commit/3ca95ee1e0ecaeca2052ca97b7f0d600a62e24b3)) +* **api:** api update ([a6f5298](https://github.com/privy-io/node-sdk/commit/a6f52982f0c07c1b7b8f866a4569d4e891aa18c2)) + + +### Chores + +* redact api-key headers in debug logs ([fa5c58e](https://github.com/privy-io/node-sdk/commit/fa5c58e89ff431721cd74dd44b0a9494e7e64831)) + ## 0.18.0 (2026-05-07) Full Changelog: [v0.17.0...v0.18.0](https://github.com/privy-io/node-sdk/compare/v0.17.0...v0.18.0) diff --git a/api.md b/api.md index 80c82db..1b337dc 100644 --- a/api.md +++ b/api.md @@ -551,6 +551,7 @@ Types: - IntentCreatedWebhookPayload - IntentExecutedWebhookPayload - IntentFailedWebhookPayload +- IntentRejectedWebhookPayload - KrakenEmbedQuoteCancelledWebhookPayload - KrakenEmbedQuoteExecutedWebhookPayload - KrakenEmbedQuoteExecutionFailedWebhookPayload @@ -978,13 +979,48 @@ Types: Types: +- KrakenEmbedCancelCustomOrderInput +- KrakenEmbedCancelCustomOrderPath +- KrakenEmbedCancelCustomOrderResponse +- KrakenEmbedCancelCustomOrderResult +- KrakenEmbedCreateCustomOrderInput +- KrakenEmbedCreateCustomOrderResponse +- KrakenEmbedCreateCustomOrderResult - KrakenEmbedCurrentDayPnl +- KrakenEmbedCustomOrder +- KrakenEmbedCustomOrderAction +- KrakenEmbedCustomOrderAmount +- KrakenEmbedCustomOrderOccurrence +- KrakenEmbedCustomOrderOccurrenceExecutedAction +- KrakenEmbedCustomOrderOccurrenceTrigger +- KrakenEmbedCustomOrderQuoteAsset +- KrakenEmbedCustomOrderStatus +- KrakenEmbedCustomOrderTrigger - KrakenEmbedGetAssetListQueryParamsSchema +- KrakenEmbedGetCustomOrderHistoryQueryParams +- KrakenEmbedGetCustomOrderHistoryResponse +- KrakenEmbedGetCustomOrderHistoryResult +- KrakenEmbedGetCustomOrderQueryParams +- KrakenEmbedGetCustomOrderResponse +- KrakenEmbedGetCustomOrderResult - KrakenEmbedGetPortfolioDetailsQueryParamsSchema - KrakenEmbedGetPortfolioSummaryQueryParams - KrakenEmbedGetPortfolioSummaryResponse - KrakenEmbedGetPortfolioTransactionsQueryParamsSchema - KrakenEmbedGetQuoteQueryParams +- KrakenEmbedListCustomOrdersQueryParams +- KrakenEmbedListCustomOrdersResponse +- KrakenEmbedListCustomOrdersResult +- KrakenEmbedStartAddressMetadata +- KrakenEmbedStartAddressVerificationURLInput +- KrakenEmbedStartIdentityInfo +- KrakenEmbedStartIdentityMetadata +- KrakenEmbedStartIdentityVerificationURLInput +- KrakenEmbedStartLivenessVerificationURLInput +- KrakenEmbedStartVerificationDebug +- KrakenEmbedStartVerificationURLInput +- KrakenEmbedStartVerificationURLResponse +- KrakenEmbedStartVerificationURLResult # Swaps diff --git a/package.json b/package.json index 0f42763..7acd4bb 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@privy-io/node", - "version": "0.18.0", + "version": "0.19.0", "description": "The official TypeScript library for the Privy API", "author": "Privy API ", "types": "dist/index.d.ts", diff --git a/src/client.ts b/src/client.ts index cd3e706..ca641a9 100644 --- a/src/client.ts +++ b/src/client.ts @@ -327,13 +327,48 @@ import { } from './resources/key-quorums'; import { KrakenEmbed, + KrakenEmbedCancelCustomOrderInput, + KrakenEmbedCancelCustomOrderPath, + KrakenEmbedCancelCustomOrderResponse, + KrakenEmbedCancelCustomOrderResult, + KrakenEmbedCreateCustomOrderInput, + KrakenEmbedCreateCustomOrderResponse, + KrakenEmbedCreateCustomOrderResult, KrakenEmbedCurrentDayPnl, + KrakenEmbedCustomOrder, + KrakenEmbedCustomOrderAction, + KrakenEmbedCustomOrderAmount, + KrakenEmbedCustomOrderOccurrence, + KrakenEmbedCustomOrderOccurrenceExecutedAction, + KrakenEmbedCustomOrderOccurrenceTrigger, + KrakenEmbedCustomOrderQuoteAsset, + KrakenEmbedCustomOrderStatus, + KrakenEmbedCustomOrderTrigger, KrakenEmbedGetAssetListQueryParamsSchema, + KrakenEmbedGetCustomOrderHistoryQueryParams, + KrakenEmbedGetCustomOrderHistoryResponse, + KrakenEmbedGetCustomOrderHistoryResult, + KrakenEmbedGetCustomOrderQueryParams, + KrakenEmbedGetCustomOrderResponse, + KrakenEmbedGetCustomOrderResult, KrakenEmbedGetPortfolioDetailsQueryParamsSchema, KrakenEmbedGetPortfolioSummaryQueryParams, KrakenEmbedGetPortfolioSummaryResponse, KrakenEmbedGetPortfolioTransactionsQueryParamsSchema, KrakenEmbedGetQuoteQueryParams, + KrakenEmbedListCustomOrdersQueryParams, + KrakenEmbedListCustomOrdersResponse, + KrakenEmbedListCustomOrdersResult, + KrakenEmbedStartAddressMetadata, + KrakenEmbedStartAddressVerificationURLInput, + KrakenEmbedStartIdentityInfo, + KrakenEmbedStartIdentityMetadata, + KrakenEmbedStartIdentityVerificationURLInput, + KrakenEmbedStartLivenessVerificationURLInput, + KrakenEmbedStartVerificationDebug, + KrakenEmbedStartVerificationURLInput, + KrakenEmbedStartVerificationURLResponse, + KrakenEmbedStartVerificationURLResult, } from './resources/kraken-embed'; import { CreateOrganizationSecretResponse, @@ -568,6 +603,7 @@ import { IntentCreatedWebhookPayload, IntentExecutedWebhookPayload, IntentFailedWebhookPayload, + IntentRejectedWebhookPayload, KrakenEmbedQuoteCancelledWebhookPayload, KrakenEmbedQuoteExecutedWebhookPayload, KrakenEmbedQuoteExecutionFailedWebhookPayload, @@ -2229,6 +2265,7 @@ export declare namespace PrivyAPI { type IntentCreatedWebhookPayload as IntentCreatedWebhookPayload, type IntentExecutedWebhookPayload as IntentExecutedWebhookPayload, type IntentFailedWebhookPayload as IntentFailedWebhookPayload, + type IntentRejectedWebhookPayload as IntentRejectedWebhookPayload, type KrakenEmbedQuoteCancelledWebhookPayload as KrakenEmbedQuoteCancelledWebhookPayload, type KrakenEmbedQuoteExecutedWebhookPayload as KrakenEmbedQuoteExecutedWebhookPayload, type KrakenEmbedQuoteExecutionFailedWebhookPayload as KrakenEmbedQuoteExecutionFailedWebhookPayload, @@ -2637,13 +2674,48 @@ export declare namespace PrivyAPI { export { KrakenEmbed as KrakenEmbed, + type KrakenEmbedCancelCustomOrderInput as KrakenEmbedCancelCustomOrderInput, + type KrakenEmbedCancelCustomOrderPath as KrakenEmbedCancelCustomOrderPath, + type KrakenEmbedCancelCustomOrderResponse as KrakenEmbedCancelCustomOrderResponse, + type KrakenEmbedCancelCustomOrderResult as KrakenEmbedCancelCustomOrderResult, + type KrakenEmbedCreateCustomOrderInput as KrakenEmbedCreateCustomOrderInput, + type KrakenEmbedCreateCustomOrderResponse as KrakenEmbedCreateCustomOrderResponse, + type KrakenEmbedCreateCustomOrderResult as KrakenEmbedCreateCustomOrderResult, type KrakenEmbedCurrentDayPnl as KrakenEmbedCurrentDayPnl, + type KrakenEmbedCustomOrder as KrakenEmbedCustomOrder, + type KrakenEmbedCustomOrderAction as KrakenEmbedCustomOrderAction, + type KrakenEmbedCustomOrderAmount as KrakenEmbedCustomOrderAmount, + type KrakenEmbedCustomOrderOccurrence as KrakenEmbedCustomOrderOccurrence, + type KrakenEmbedCustomOrderOccurrenceExecutedAction as KrakenEmbedCustomOrderOccurrenceExecutedAction, + type KrakenEmbedCustomOrderOccurrenceTrigger as KrakenEmbedCustomOrderOccurrenceTrigger, + type KrakenEmbedCustomOrderQuoteAsset as KrakenEmbedCustomOrderQuoteAsset, + type KrakenEmbedCustomOrderStatus as KrakenEmbedCustomOrderStatus, + type KrakenEmbedCustomOrderTrigger as KrakenEmbedCustomOrderTrigger, type KrakenEmbedGetAssetListQueryParamsSchema as KrakenEmbedGetAssetListQueryParamsSchema, + type KrakenEmbedGetCustomOrderHistoryQueryParams as KrakenEmbedGetCustomOrderHistoryQueryParams, + type KrakenEmbedGetCustomOrderHistoryResponse as KrakenEmbedGetCustomOrderHistoryResponse, + type KrakenEmbedGetCustomOrderHistoryResult as KrakenEmbedGetCustomOrderHistoryResult, + type KrakenEmbedGetCustomOrderQueryParams as KrakenEmbedGetCustomOrderQueryParams, + type KrakenEmbedGetCustomOrderResponse as KrakenEmbedGetCustomOrderResponse, + type KrakenEmbedGetCustomOrderResult as KrakenEmbedGetCustomOrderResult, type KrakenEmbedGetPortfolioDetailsQueryParamsSchema as KrakenEmbedGetPortfolioDetailsQueryParamsSchema, type KrakenEmbedGetPortfolioSummaryQueryParams as KrakenEmbedGetPortfolioSummaryQueryParams, type KrakenEmbedGetPortfolioSummaryResponse as KrakenEmbedGetPortfolioSummaryResponse, type KrakenEmbedGetPortfolioTransactionsQueryParamsSchema as KrakenEmbedGetPortfolioTransactionsQueryParamsSchema, type KrakenEmbedGetQuoteQueryParams as KrakenEmbedGetQuoteQueryParams, + type KrakenEmbedListCustomOrdersQueryParams as KrakenEmbedListCustomOrdersQueryParams, + type KrakenEmbedListCustomOrdersResponse as KrakenEmbedListCustomOrdersResponse, + type KrakenEmbedListCustomOrdersResult as KrakenEmbedListCustomOrdersResult, + type KrakenEmbedStartAddressMetadata as KrakenEmbedStartAddressMetadata, + type KrakenEmbedStartAddressVerificationURLInput as KrakenEmbedStartAddressVerificationURLInput, + type KrakenEmbedStartIdentityInfo as KrakenEmbedStartIdentityInfo, + type KrakenEmbedStartIdentityMetadata as KrakenEmbedStartIdentityMetadata, + type KrakenEmbedStartIdentityVerificationURLInput as KrakenEmbedStartIdentityVerificationURLInput, + type KrakenEmbedStartLivenessVerificationURLInput as KrakenEmbedStartLivenessVerificationURLInput, + type KrakenEmbedStartVerificationDebug as KrakenEmbedStartVerificationDebug, + type KrakenEmbedStartVerificationURLInput as KrakenEmbedStartVerificationURLInput, + type KrakenEmbedStartVerificationURLResponse as KrakenEmbedStartVerificationURLResponse, + type KrakenEmbedStartVerificationURLResult as KrakenEmbedStartVerificationURLResult, }; export { diff --git a/src/internal/utils/log.ts b/src/internal/utils/log.ts index bab79c5..7e3bde6 100644 --- a/src/internal/utils/log.ts +++ b/src/internal/utils/log.ts @@ -107,6 +107,8 @@ export const formatRequestDetails = (details: { name, ( name.toLowerCase() === 'authorization' || + name.toLowerCase() === 'api-key' || + name.toLowerCase() === 'x-api-key' || name.toLowerCase() === 'cookie' || name.toLowerCase() === 'set-cookie' ) ? diff --git a/src/resources/apps/apps.ts b/src/resources/apps/apps.ts index e881b17..de62412 100644 --- a/src/resources/apps/apps.ts +++ b/src/resources/apps/apps.ts @@ -185,6 +185,8 @@ export interface AppResponse { telegram_auth: boolean; + telegram_oauth: boolean; + terms_and_conditions_url: string | null; theme: string; @@ -391,16 +393,21 @@ export interface FundingOption { export type GasSpendCurrency = 'usd'; /** - * Query parameters for getting gas spend for a set of wallets. + * Query parameters for getting gas spend for a set of wallets. The time range from + * `start_timestamp` to `end_timestamp` must not exceed 30 days. */ export interface GasSpendRequestBody { /** - * Unix timestamp in milliseconds, exclusive. + * Unix timestamp in milliseconds, exclusive. Must be greater than or equal to + * `start_timestamp`, and the range from `start_timestamp` to `end_timestamp` must + * not exceed 30 days. */ end_timestamp: number; /** - * Unix timestamp in milliseconds, inclusive. + * Unix timestamp in milliseconds, inclusive. Must be less than or equal to + * `end_timestamp`, and the range from `start_timestamp` to `end_timestamp` must + * not exceed 30 days. */ start_timestamp: number; diff --git a/src/resources/client-auth.ts b/src/resources/client-auth.ts index b027128..a256612 100644 --- a/src/resources/client-auth.ts +++ b/src/resources/client-auth.ts @@ -378,7 +378,8 @@ export type ExternalOAuthProviderID = | 'linkedin' | 'apple' | 'line' - | 'twitch'; + | 'twitch' + | 'telegram'; /** * Input for authenticating with Farcaster. diff --git a/src/resources/index.ts b/src/resources/index.ts index a462d02..6b167d4 100644 --- a/src/resources/index.ts +++ b/src/resources/index.ts @@ -341,13 +341,48 @@ export { } from './key-quorums'; export { KrakenEmbed, + type KrakenEmbedCancelCustomOrderInput, + type KrakenEmbedCancelCustomOrderPath, + type KrakenEmbedCancelCustomOrderResponse, + type KrakenEmbedCancelCustomOrderResult, + type KrakenEmbedCreateCustomOrderInput, + type KrakenEmbedCreateCustomOrderResponse, + type KrakenEmbedCreateCustomOrderResult, type KrakenEmbedCurrentDayPnl, + type KrakenEmbedCustomOrder, + type KrakenEmbedCustomOrderAction, + type KrakenEmbedCustomOrderAmount, + type KrakenEmbedCustomOrderOccurrence, + type KrakenEmbedCustomOrderOccurrenceExecutedAction, + type KrakenEmbedCustomOrderOccurrenceTrigger, + type KrakenEmbedCustomOrderQuoteAsset, + type KrakenEmbedCustomOrderStatus, + type KrakenEmbedCustomOrderTrigger, type KrakenEmbedGetAssetListQueryParamsSchema, + type KrakenEmbedGetCustomOrderHistoryQueryParams, + type KrakenEmbedGetCustomOrderHistoryResponse, + type KrakenEmbedGetCustomOrderHistoryResult, + type KrakenEmbedGetCustomOrderQueryParams, + type KrakenEmbedGetCustomOrderResponse, + type KrakenEmbedGetCustomOrderResult, type KrakenEmbedGetPortfolioDetailsQueryParamsSchema, type KrakenEmbedGetPortfolioSummaryQueryParams, type KrakenEmbedGetPortfolioSummaryResponse, type KrakenEmbedGetPortfolioTransactionsQueryParamsSchema, type KrakenEmbedGetQuoteQueryParams, + type KrakenEmbedListCustomOrdersQueryParams, + type KrakenEmbedListCustomOrdersResponse, + type KrakenEmbedListCustomOrdersResult, + type KrakenEmbedStartAddressMetadata, + type KrakenEmbedStartAddressVerificationURLInput, + type KrakenEmbedStartIdentityInfo, + type KrakenEmbedStartIdentityMetadata, + type KrakenEmbedStartIdentityVerificationURLInput, + type KrakenEmbedStartLivenessVerificationURLInput, + type KrakenEmbedStartVerificationDebug, + type KrakenEmbedStartVerificationURLInput, + type KrakenEmbedStartVerificationURLResponse, + type KrakenEmbedStartVerificationURLResult, } from './kraken-embed'; export { Organizations, @@ -792,6 +827,7 @@ export { type IntentCreatedWebhookPayload, type IntentExecutedWebhookPayload, type IntentFailedWebhookPayload, + type IntentRejectedWebhookPayload, type KrakenEmbedQuoteCancelledWebhookPayload, type KrakenEmbedQuoteExecutedWebhookPayload, type KrakenEmbedQuoteExecutionFailedWebhookPayload, diff --git a/src/resources/intents.ts b/src/resources/intents.ts index fb543cc..94ae8f9 100644 --- a/src/resources/intents.ts +++ b/src/resources/intents.ts @@ -584,7 +584,8 @@ export namespace KeyQuorumIntentResponse { */ export interface RequestDetails { /** - * Request input for updating an existing key quorum. + * Request input for updating an existing key quorum. At least one field must be + * provided. */ body: KeyQuorumsAPI.KeyQuorumUpdateRequestBody; @@ -1389,6 +1390,11 @@ export declare namespace IntentRpcParams { */ chain_type?: 'solana'; + /** + * Body param + */ + optimistic_broadcast?: boolean; + /** * Body param */ diff --git a/src/resources/key-quorums.ts b/src/resources/key-quorums.ts index 0217af7..d410631 100644 --- a/src/resources/key-quorums.ts +++ b/src/resources/key-quorums.ts @@ -172,7 +172,8 @@ export interface KeyQuorumAuthorizationHeaders { } /** - * Request input for creating a key quorum. + * Request input for creating a key quorum. At least one of `user_ids`, + * `public_keys`, or `key_quorum_ids` is required. */ export interface KeyQuorumCreateRequestBody { /** @@ -185,25 +186,29 @@ export interface KeyQuorumCreateRequestBody { /** * List of key quorum IDs that should be members of this key quorum. Key quorums - * can only be nested 1 level deep. + * can only be nested 1 level deep. At least one of `user_ids`, `public_keys`, or + * `key_quorum_ids` is required. */ key_quorum_ids?: Array; /** * List of P-256 public keys of the keys that should be authorized to sign on the - * key quorum, in base64-encoded DER format. + * key quorum, in base64-encoded DER format. At least one of `user_ids`, + * `public_keys`, or `key_quorum_ids` is required. */ public_keys?: Array; /** * List of user IDs of the users that should be authorized to sign on the key - * quorum. + * quorum. At least one of `user_ids`, `public_keys`, or `key_quorum_ids` is + * required. */ user_ids?: Array; } /** - * Request input for updating an existing key quorum. + * Request input for updating an existing key quorum. At least one field must be + * provided. */ export interface KeyQuorumUpdateRequestBody { /** @@ -244,19 +249,22 @@ export interface KeyQuorumCreateParams { /** * List of key quorum IDs that should be members of this key quorum. Key quorums - * can only be nested 1 level deep. + * can only be nested 1 level deep. At least one of `user_ids`, `public_keys`, or + * `key_quorum_ids` is required. */ key_quorum_ids?: Array; /** * List of P-256 public keys of the keys that should be authorized to sign on the - * key quorum, in base64-encoded DER format. + * key quorum, in base64-encoded DER format. At least one of `user_ids`, + * `public_keys`, or `key_quorum_ids` is required. */ public_keys?: Array; /** * List of user IDs of the users that should be authorized to sign on the key - * quorum. + * quorum. At least one of `user_ids`, `public_keys`, or `key_quorum_ids` is + * required. */ user_ids?: Array; } diff --git a/src/resources/kraken-embed.ts b/src/resources/kraken-embed.ts index c319312..37d818d 100644 --- a/src/resources/kraken-embed.ts +++ b/src/resources/kraken-embed.ts @@ -5,6 +5,102 @@ import * as KrakenEmbedAPI from './kraken-embed'; export class KrakenEmbed extends APIResource {} +/** + * Request body for cancelling a custom order. + */ +export interface KrakenEmbedCancelCustomOrderInput { + user_id: string; +} + +/** + * Path parameters for cancelling a custom order. + */ +export interface KrakenEmbedCancelCustomOrderPath { + order_id: string; +} + +/** + * Response body for cancelling a custom order. + */ +export interface KrakenEmbedCancelCustomOrderResponse { + /** + * Result payload for cancel custom order response. + */ + result: KrakenEmbedCancelCustomOrderResponse.Result; + + error?: Array; + + errors?: Array; +} + +export namespace KrakenEmbedCancelCustomOrderResponse { + /** + * Result payload for cancel custom order response. + */ + export interface Result extends KrakenEmbedAPI.KrakenEmbedCancelCustomOrderResult {} +} + +/** + * Result payload for cancel custom order response. + */ +export interface KrakenEmbedCancelCustomOrderResult { + /** + * Full custom order object. + */ + order: KrakenEmbedCustomOrder; +} + +/** + * Request body for creating a custom order. + */ +export interface KrakenEmbedCreateCustomOrderInput { + /** + * Trade action for a custom order. + */ + action: KrakenEmbedCustomOrderAction; + + name: string; + + /** + * Price trigger for a custom order. The order executes when base_asset/quote_asset + * rate meets the condition against target_price. + */ + trigger: KrakenEmbedCustomOrderTrigger; + + user_id: string; +} + +/** + * Response body for creating a custom order. + */ +export interface KrakenEmbedCreateCustomOrderResponse { + /** + * Result payload for create custom order response. + */ + result: KrakenEmbedCreateCustomOrderResponse.Result; + + error?: Array; + + errors?: Array; +} + +export namespace KrakenEmbedCreateCustomOrderResponse { + /** + * Result payload for create custom order response. + */ + export interface Result extends KrakenEmbedAPI.KrakenEmbedCreateCustomOrderResult {} +} + +/** + * Result payload for create custom order response. + */ +export interface KrakenEmbedCreateCustomOrderResult { + /** + * Full custom order object. + */ + order: KrakenEmbedCustomOrder; +} + /** * Current day profit and loss for a portfolio, calculated from the most recent * available balance. @@ -15,6 +111,147 @@ export interface KrakenEmbedCurrentDayPnl { since: string; } +/** + * Full custom order object. + */ +export interface KrakenEmbedCustomOrder { + id: string; + + /** + * Trade action for a custom order. + */ + action: KrakenEmbedCustomOrderAction; + + created_at: string; + + name: string; + + /** + * Custom order status with optional reason for cancelled or paused states. + */ + status: KrakenEmbedCustomOrderStatus; + + /** + * Price trigger for a custom order. The order executes when base_asset/quote_asset + * rate meets the condition against target_price. + */ + trigger: KrakenEmbedCustomOrderTrigger; + + updated_at: string; +} + +/** + * Trade action for a custom order. + */ +export interface KrakenEmbedCustomOrderAction { + /** + * Asset amount for custom order actions. + */ + amount: KrakenEmbedCustomOrderAmount; + + fee_bps: string; + + /** + * Target asset for the other side of the custom order trade. + */ + quote: KrakenEmbedCustomOrderQuoteAsset; + + spread_bps: string; + + type: 'receive' | 'spend'; +} + +/** + * Asset amount for custom order actions. + */ +export interface KrakenEmbedCustomOrderAmount { + amount: string; + + asset: string; + + asset_class?: 'currency'; +} + +/** + * A single execution occurrence of a custom order. + */ +export interface KrakenEmbedCustomOrderOccurrence { + id: string; + + created_at: string; + + status: 'success' | 'failure' | 'skipped'; + + /** + * Trigger metadata for a custom order occurrence. + */ + trigger: KrakenEmbedCustomOrderOccurrenceTrigger; + + updated_at: string; + + /** + * Executed action details for a custom order occurrence. + */ + executed_action?: KrakenEmbedCustomOrderOccurrence.ExecutedAction; + + failure_reason?: string; + + skip_reason?: string; +} + +export namespace KrakenEmbedCustomOrderOccurrence { + /** + * Executed action details for a custom order occurrence. + */ + export interface ExecutedAction extends KrakenEmbedAPI.KrakenEmbedCustomOrderOccurrenceExecutedAction {} +} + +/** + * Executed action details for a custom order occurrence. + */ +export interface KrakenEmbedCustomOrderOccurrenceExecutedAction { + quote_id: string; +} + +/** + * Trigger metadata for a custom order occurrence. + */ +export interface KrakenEmbedCustomOrderOccurrenceTrigger { + type: 'time' | 'price' | 'crypto_deposit' | 'market_open'; +} + +/** + * Target asset for the other side of the custom order trade. + */ +export interface KrakenEmbedCustomOrderQuoteAsset { + asset: string; +} + +/** + * Custom order status with optional reason for cancelled or paused states. + */ +export interface KrakenEmbedCustomOrderStatus { + status: 'active' | 'completed' | 'cancelled' | 'paused'; + + reason?: unknown; +} + +/** + * Price trigger for a custom order. The order executes when base_asset/quote_asset + * rate meets the condition against target_price. + */ +export interface KrakenEmbedCustomOrderTrigger { + base_asset: string; + + condition: 'gte' | 'lte'; + + quote_asset: string; + + target_price: string; + + type: 'price'; +} + /** * Query parameters for listing and filtering available assets. */ @@ -64,6 +301,83 @@ export interface KrakenEmbedGetAssetListQueryParamsSchema { | '-listing_date'; } +/** + * Query parameters for getting custom order history. + */ +export interface KrakenEmbedGetCustomOrderHistoryQueryParams { + order_id: string; + + user_id: string; +} + +/** + * Response body for getting custom order execution history. + */ +export interface KrakenEmbedGetCustomOrderHistoryResponse { + /** + * Result payload for custom order history response. + */ + result: KrakenEmbedGetCustomOrderHistoryResponse.Result; + + error?: Array; + + errors?: Array; +} + +export namespace KrakenEmbedGetCustomOrderHistoryResponse { + /** + * Result payload for custom order history response. + */ + export interface Result extends KrakenEmbedAPI.KrakenEmbedGetCustomOrderHistoryResult {} +} + +/** + * Result payload for custom order history response. + */ +export interface KrakenEmbedGetCustomOrderHistoryResult { + history: Array; +} + +/** + * Query parameters for getting a single custom order. + */ +export interface KrakenEmbedGetCustomOrderQueryParams { + order_id: string; + + user_id: string; +} + +/** + * Response body for getting a single custom order. + */ +export interface KrakenEmbedGetCustomOrderResponse { + /** + * Result payload for get custom order response. + */ + result: KrakenEmbedGetCustomOrderResponse.Result; + + error?: Array; + + errors?: Array; +} + +export namespace KrakenEmbedGetCustomOrderResponse { + /** + * Result payload for get custom order response. + */ + export interface Result extends KrakenEmbedAPI.KrakenEmbedGetCustomOrderResult {} +} + +/** + * Result payload for get custom order response. + */ +export interface KrakenEmbedGetCustomOrderResult { + /** + * Full custom order object. + */ + order: KrakenEmbedCustomOrder; +} + /** * Query parameters for portfolio details endpoint. */ @@ -169,14 +483,1106 @@ export interface KrakenEmbedGetQuoteQueryParams { user_id: string; } +/** + * Query parameters for listing custom orders. + */ +export interface KrakenEmbedListCustomOrdersQueryParams { + user_id: string; + + cursor?: string; + + statuses?: Array<'active' | 'paused' | 'cancelled' | 'completed'> | string; +} + +/** + * Response body for listing custom orders. + */ +export interface KrakenEmbedListCustomOrdersResponse { + /** + * Result payload for list custom orders response. + */ + result: KrakenEmbedListCustomOrdersResponse.Result; + + error?: Array; + + errors?: Array; +} + +export namespace KrakenEmbedListCustomOrdersResponse { + /** + * Result payload for list custom orders response. + */ + export interface Result extends KrakenEmbedAPI.KrakenEmbedListCustomOrdersResult {} +} + +/** + * Result payload for list custom orders response. + */ +export interface KrakenEmbedListCustomOrdersResult { + orders: Array; +} + +/** + * Optional best-effort metadata hints for proof of address verification. + */ +export interface KrakenEmbedStartAddressMetadata { + address?: KrakenEmbedStartAddressMetadata.Address | null; + + document_number?: string | null; + + document_type?: + | 'bank_statement' + | 'credit_card_statement' + | 'employer_letter_or_work_contract' + | 'government_issued_document' + | 'home_or_rental_insurance' + | 'internet_or_cable_bill' + | 'mobile_phone_bill' + | 'mortgage_statement' + | 'official_government_letter' + | 'passport_address_page' + | 'rental_or_lease_agreement' + | 'residence_certificate' + | 'social_insurance_payment_receipt' + | 'tax_receipt' + | 'tax_return' + | 'utility_bill' + | 'other' + | null; + + expiration_date?: string | null; +} + +export namespace KrakenEmbedStartAddressMetadata { + export interface Address { + city: string; + + country: + | 'AD' + | 'AE' + | 'AF' + | 'AG' + | 'AI' + | 'AL' + | 'AM' + | 'AO' + | 'AQ' + | 'AR' + | 'AS' + | 'AT' + | 'AU' + | 'AW' + | 'AX' + | 'AZ' + | 'BA' + | 'BB' + | 'BD' + | 'BE' + | 'BF' + | 'BG' + | 'BH' + | 'BI' + | 'BJ' + | 'BL' + | 'BM' + | 'BN' + | 'BO' + | 'BQ' + | 'BR' + | 'BS' + | 'BT' + | 'BV' + | 'BW' + | 'BY' + | 'BZ' + | 'CA' + | 'CC' + | 'CD' + | 'CF' + | 'CG' + | 'CH' + | 'CI' + | 'CK' + | 'CL' + | 'CM' + | 'CN' + | 'CO' + | 'CR' + | 'CU' + | 'CV' + | 'CW' + | 'CX' + | 'CY' + | 'CZ' + | 'DE' + | 'DJ' + | 'DK' + | 'DM' + | 'DO' + | 'DZ' + | 'EC' + | 'EE' + | 'EG' + | 'EH' + | 'ER' + | 'ES' + | 'ET' + | 'FI' + | 'FJ' + | 'FK' + | 'FM' + | 'FO' + | 'FR' + | 'GA' + | 'GB' + | 'GD' + | 'GE' + | 'GF' + | 'GG' + | 'GH' + | 'GI' + | 'GL' + | 'GM' + | 'GN' + | 'GP' + | 'GQ' + | 'GR' + | 'GS' + | 'GT' + | 'GU' + | 'GW' + | 'GY' + | 'HK' + | 'HM' + | 'HN' + | 'HR' + | 'HT' + | 'HU' + | 'ID' + | 'IE' + | 'IL' + | 'IM' + | 'IN' + | 'IO' + | 'IQ' + | 'IR' + | 'IS' + | 'IT' + | 'JE' + | 'JM' + | 'JO' + | 'JP' + | 'KE' + | 'KG' + | 'KH' + | 'KI' + | 'KM' + | 'KN' + | 'KP' + | 'KR' + | 'KW' + | 'KY' + | 'KZ' + | 'LA' + | 'LB' + | 'LC' + | 'LI' + | 'LK' + | 'LR' + | 'LS' + | 'LT' + | 'LU' + | 'LV' + | 'LY' + | 'MA' + | 'MC' + | 'MD' + | 'ME' + | 'MF' + | 'MG' + | 'MH' + | 'MK' + | 'ML' + | 'MM' + | 'MN' + | 'MO' + | 'MP' + | 'MQ' + | 'MR' + | 'MS' + | 'MT' + | 'MU' + | 'MV' + | 'MW' + | 'MX' + | 'MY' + | 'MZ' + | 'NA' + | 'NC' + | 'NE' + | 'NF' + | 'NG' + | 'NI' + | 'NL' + | 'NO' + | 'NP' + | 'NR' + | 'NU' + | 'NZ' + | 'OM' + | 'PA' + | 'PE' + | 'PF' + | 'PG' + | 'PH' + | 'PK' + | 'PL' + | 'PM' + | 'PN' + | 'PR' + | 'PS' + | 'PT' + | 'PW' + | 'PY' + | 'QA' + | 'RE' + | 'RO' + | 'RS' + | 'RU' + | 'RW' + | 'SA' + | 'SB' + | 'SC' + | 'SD' + | 'SE' + | 'SG' + | 'SH' + | 'SI' + | 'SJ' + | 'SK' + | 'SL' + | 'SM' + | 'SN' + | 'SO' + | 'SR' + | 'SS' + | 'ST' + | 'SV' + | 'SX' + | 'SY' + | 'SZ' + | 'TC' + | 'TD' + | 'TF' + | 'TG' + | 'TH' + | 'TJ' + | 'TK' + | 'TL' + | 'TM' + | 'TN' + | 'TO' + | 'TR' + | 'TT' + | 'TV' + | 'TW' + | 'TZ' + | 'UA' + | 'UG' + | 'UM' + | 'US' + | 'UY' + | 'UZ' + | 'VA' + | 'VC' + | 'VE' + | 'VG' + | 'VI' + | 'VN' + | 'VU' + | 'WF' + | 'WS' + | 'YE' + | 'YT' + | 'ZA' + | 'ZM' + | 'ZW' + | 'AC' + | 'AN' + | 'AP' + | 'CP' + | 'DG' + | 'EA' + | 'EU' + | 'IC' + | 'JX' + | 'TA' + | 'QO' + | 'XK' + | '0C'; + + line1: string; + + postal_code: string; + + line2?: string | null; + + province?: string | null; + } +} + +/** + * Input payload for starting proof of address verification via URL. + */ +export interface KrakenEmbedStartAddressVerificationURLInput { + document_url: string; + + type: 'proof_of_address'; + + /** + * Debug options for start verification. Only works in non-production environments. + */ + debug?: KrakenEmbedStartAddressVerificationURLInput.Debug; + + /** + * Optional best-effort metadata hints for proof of address verification. + */ + metadata?: KrakenEmbedStartAddressVerificationURLInput.Metadata; +} + +export namespace KrakenEmbedStartAddressVerificationURLInput { + /** + * Debug options for start verification. Only works in non-production environments. + */ + export interface Debug extends KrakenEmbedAPI.KrakenEmbedStartVerificationDebug {} + + /** + * Optional best-effort metadata hints for proof of address verification. + */ + export interface Metadata extends KrakenEmbedAPI.KrakenEmbedStartAddressMetadata {} +} + +/** + * Identity information hints including full name and date of birth for proof of + * identity verification. + */ +export interface KrakenEmbedStartIdentityInfo { + date_of_birth?: string | null; + + full_name?: KrakenEmbedStartIdentityInfo.FullName | null; +} + +export namespace KrakenEmbedStartIdentityInfo { + export interface FullName { + first_name: string; + + last_name: string; + + middle_name?: string | null; + } +} + +/** + * Optional best-effort metadata hints for proof of identity verification. + */ +export interface KrakenEmbedStartIdentityMetadata { + document_number?: string | null; + + document_type?: + | 'passport' + | 'drivers_license' + | 'id_card' + | 'residence_card' + | 'special_permanent_residence_card' + | null; + + expiration_date?: string | null; + + /** + * Identity information hints including full name and date of birth for proof of + * identity verification. + */ + identity?: KrakenEmbedStartIdentityMetadata.Identity; + + issuing_country?: + | 'AD' + | 'AE' + | 'AF' + | 'AG' + | 'AI' + | 'AL' + | 'AM' + | 'AO' + | 'AQ' + | 'AR' + | 'AS' + | 'AT' + | 'AU' + | 'AW' + | 'AX' + | 'AZ' + | 'BA' + | 'BB' + | 'BD' + | 'BE' + | 'BF' + | 'BG' + | 'BH' + | 'BI' + | 'BJ' + | 'BL' + | 'BM' + | 'BN' + | 'BO' + | 'BQ' + | 'BR' + | 'BS' + | 'BT' + | 'BV' + | 'BW' + | 'BY' + | 'BZ' + | 'CA' + | 'CC' + | 'CD' + | 'CF' + | 'CG' + | 'CH' + | 'CI' + | 'CK' + | 'CL' + | 'CM' + | 'CN' + | 'CO' + | 'CR' + | 'CU' + | 'CV' + | 'CW' + | 'CX' + | 'CY' + | 'CZ' + | 'DE' + | 'DJ' + | 'DK' + | 'DM' + | 'DO' + | 'DZ' + | 'EC' + | 'EE' + | 'EG' + | 'EH' + | 'ER' + | 'ES' + | 'ET' + | 'FI' + | 'FJ' + | 'FK' + | 'FM' + | 'FO' + | 'FR' + | 'GA' + | 'GB' + | 'GD' + | 'GE' + | 'GF' + | 'GG' + | 'GH' + | 'GI' + | 'GL' + | 'GM' + | 'GN' + | 'GP' + | 'GQ' + | 'GR' + | 'GS' + | 'GT' + | 'GU' + | 'GW' + | 'GY' + | 'HK' + | 'HM' + | 'HN' + | 'HR' + | 'HT' + | 'HU' + | 'ID' + | 'IE' + | 'IL' + | 'IM' + | 'IN' + | 'IO' + | 'IQ' + | 'IR' + | 'IS' + | 'IT' + | 'JE' + | 'JM' + | 'JO' + | 'JP' + | 'KE' + | 'KG' + | 'KH' + | 'KI' + | 'KM' + | 'KN' + | 'KP' + | 'KR' + | 'KW' + | 'KY' + | 'KZ' + | 'LA' + | 'LB' + | 'LC' + | 'LI' + | 'LK' + | 'LR' + | 'LS' + | 'LT' + | 'LU' + | 'LV' + | 'LY' + | 'MA' + | 'MC' + | 'MD' + | 'ME' + | 'MF' + | 'MG' + | 'MH' + | 'MK' + | 'ML' + | 'MM' + | 'MN' + | 'MO' + | 'MP' + | 'MQ' + | 'MR' + | 'MS' + | 'MT' + | 'MU' + | 'MV' + | 'MW' + | 'MX' + | 'MY' + | 'MZ' + | 'NA' + | 'NC' + | 'NE' + | 'NF' + | 'NG' + | 'NI' + | 'NL' + | 'NO' + | 'NP' + | 'NR' + | 'NU' + | 'NZ' + | 'OM' + | 'PA' + | 'PE' + | 'PF' + | 'PG' + | 'PH' + | 'PK' + | 'PL' + | 'PM' + | 'PN' + | 'PR' + | 'PS' + | 'PT' + | 'PW' + | 'PY' + | 'QA' + | 'RE' + | 'RO' + | 'RS' + | 'RU' + | 'RW' + | 'SA' + | 'SB' + | 'SC' + | 'SD' + | 'SE' + | 'SG' + | 'SH' + | 'SI' + | 'SJ' + | 'SK' + | 'SL' + | 'SM' + | 'SN' + | 'SO' + | 'SR' + | 'SS' + | 'ST' + | 'SV' + | 'SX' + | 'SY' + | 'SZ' + | 'TC' + | 'TD' + | 'TF' + | 'TG' + | 'TH' + | 'TJ' + | 'TK' + | 'TL' + | 'TM' + | 'TN' + | 'TO' + | 'TR' + | 'TT' + | 'TV' + | 'TW' + | 'TZ' + | 'UA' + | 'UG' + | 'UM' + | 'US' + | 'UY' + | 'UZ' + | 'VA' + | 'VC' + | 'VE' + | 'VG' + | 'VI' + | 'VN' + | 'VU' + | 'WF' + | 'WS' + | 'YE' + | 'YT' + | 'ZA' + | 'ZM' + | 'ZW' + | 'AC' + | 'AN' + | 'AP' + | 'CP' + | 'DG' + | 'EA' + | 'EU' + | 'IC' + | 'JX' + | 'TA' + | 'QO' + | 'XK' + | '0C' + | null; + + nationality?: + | 'AD' + | 'AE' + | 'AF' + | 'AG' + | 'AI' + | 'AL' + | 'AM' + | 'AO' + | 'AQ' + | 'AR' + | 'AS' + | 'AT' + | 'AU' + | 'AW' + | 'AX' + | 'AZ' + | 'BA' + | 'BB' + | 'BD' + | 'BE' + | 'BF' + | 'BG' + | 'BH' + | 'BI' + | 'BJ' + | 'BL' + | 'BM' + | 'BN' + | 'BO' + | 'BQ' + | 'BR' + | 'BS' + | 'BT' + | 'BV' + | 'BW' + | 'BY' + | 'BZ' + | 'CA' + | 'CC' + | 'CD' + | 'CF' + | 'CG' + | 'CH' + | 'CI' + | 'CK' + | 'CL' + | 'CM' + | 'CN' + | 'CO' + | 'CR' + | 'CU' + | 'CV' + | 'CW' + | 'CX' + | 'CY' + | 'CZ' + | 'DE' + | 'DJ' + | 'DK' + | 'DM' + | 'DO' + | 'DZ' + | 'EC' + | 'EE' + | 'EG' + | 'EH' + | 'ER' + | 'ES' + | 'ET' + | 'FI' + | 'FJ' + | 'FK' + | 'FM' + | 'FO' + | 'FR' + | 'GA' + | 'GB' + | 'GD' + | 'GE' + | 'GF' + | 'GG' + | 'GH' + | 'GI' + | 'GL' + | 'GM' + | 'GN' + | 'GP' + | 'GQ' + | 'GR' + | 'GS' + | 'GT' + | 'GU' + | 'GW' + | 'GY' + | 'HK' + | 'HM' + | 'HN' + | 'HR' + | 'HT' + | 'HU' + | 'ID' + | 'IE' + | 'IL' + | 'IM' + | 'IN' + | 'IO' + | 'IQ' + | 'IR' + | 'IS' + | 'IT' + | 'JE' + | 'JM' + | 'JO' + | 'JP' + | 'KE' + | 'KG' + | 'KH' + | 'KI' + | 'KM' + | 'KN' + | 'KP' + | 'KR' + | 'KW' + | 'KY' + | 'KZ' + | 'LA' + | 'LB' + | 'LC' + | 'LI' + | 'LK' + | 'LR' + | 'LS' + | 'LT' + | 'LU' + | 'LV' + | 'LY' + | 'MA' + | 'MC' + | 'MD' + | 'ME' + | 'MF' + | 'MG' + | 'MH' + | 'MK' + | 'ML' + | 'MM' + | 'MN' + | 'MO' + | 'MP' + | 'MQ' + | 'MR' + | 'MS' + | 'MT' + | 'MU' + | 'MV' + | 'MW' + | 'MX' + | 'MY' + | 'MZ' + | 'NA' + | 'NC' + | 'NE' + | 'NF' + | 'NG' + | 'NI' + | 'NL' + | 'NO' + | 'NP' + | 'NR' + | 'NU' + | 'NZ' + | 'OM' + | 'PA' + | 'PE' + | 'PF' + | 'PG' + | 'PH' + | 'PK' + | 'PL' + | 'PM' + | 'PN' + | 'PR' + | 'PS' + | 'PT' + | 'PW' + | 'PY' + | 'QA' + | 'RE' + | 'RO' + | 'RS' + | 'RU' + | 'RW' + | 'SA' + | 'SB' + | 'SC' + | 'SD' + | 'SE' + | 'SG' + | 'SH' + | 'SI' + | 'SJ' + | 'SK' + | 'SL' + | 'SM' + | 'SN' + | 'SO' + | 'SR' + | 'SS' + | 'ST' + | 'SV' + | 'SX' + | 'SY' + | 'SZ' + | 'TC' + | 'TD' + | 'TF' + | 'TG' + | 'TH' + | 'TJ' + | 'TK' + | 'TL' + | 'TM' + | 'TN' + | 'TO' + | 'TR' + | 'TT' + | 'TV' + | 'TW' + | 'TZ' + | 'UA' + | 'UG' + | 'UM' + | 'US' + | 'UY' + | 'UZ' + | 'VA' + | 'VC' + | 'VE' + | 'VG' + | 'VI' + | 'VN' + | 'VU' + | 'WF' + | 'WS' + | 'YE' + | 'YT' + | 'ZA' + | 'ZM' + | 'ZW' + | 'AC' + | 'AN' + | 'AP' + | 'CP' + | 'DG' + | 'EA' + | 'EU' + | 'IC' + | 'JX' + | 'TA' + | 'QO' + | 'XK' + | '0C' + | null; +} + +export namespace KrakenEmbedStartIdentityMetadata { + /** + * Identity information hints including full name and date of birth for proof of + * identity verification. + */ + export interface Identity extends KrakenEmbedAPI.KrakenEmbedStartIdentityInfo {} +} + +/** + * Input payload for starting proof of identity verification via URLs. + */ +export interface KrakenEmbedStartIdentityVerificationURLInput { + front_url: string; + + type: 'proof_of_identity'; + + back_url?: string | null; + + /** + * Debug options for start verification. Only works in non-production environments. + */ + debug?: KrakenEmbedStartIdentityVerificationURLInput.Debug; + + /** + * Optional best-effort metadata hints for proof of identity verification. + */ + metadata?: KrakenEmbedStartIdentityVerificationURLInput.Metadata; +} + +export namespace KrakenEmbedStartIdentityVerificationURLInput { + /** + * Debug options for start verification. Only works in non-production environments. + */ + export interface Debug extends KrakenEmbedAPI.KrakenEmbedStartVerificationDebug {} + + /** + * Optional best-effort metadata hints for proof of identity verification. + */ + export interface Metadata extends KrakenEmbedAPI.KrakenEmbedStartIdentityMetadata {} +} + +/** + * Input payload for starting proof of liveness verification via URLs. + */ +export interface KrakenEmbedStartLivenessVerificationURLInput { + center_url: string; + + left_url: string; + + right_url: string; + + type: 'proof_of_liveness'; + + /** + * Debug options for start verification. Only works in non-production environments. + */ + debug?: KrakenEmbedStartLivenessVerificationURLInput.Debug; +} + +export namespace KrakenEmbedStartLivenessVerificationURLInput { + /** + * Debug options for start verification. Only works in non-production environments. + */ + export interface Debug extends KrakenEmbedAPI.KrakenEmbedStartVerificationDebug {} +} + +/** + * Debug options for start verification. Only works in non-production environments. + */ +export interface KrakenEmbedStartVerificationDebug { + outcome?: 'failed' | null; +} + +/** + * Discriminated union of all start verification URL input types. + */ +export type KrakenEmbedStartVerificationURLInput = + | KrakenEmbedStartIdentityVerificationURLInput + | KrakenEmbedStartAddressVerificationURLInput + | KrakenEmbedStartLivenessVerificationURLInput; + +/** + * Response body for starting verification via URL. + */ +export interface KrakenEmbedStartVerificationURLResponse { + /** + * Result payload for start verification URL response. + */ + result: KrakenEmbedStartVerificationURLResponse.Result; +} + +export namespace KrakenEmbedStartVerificationURLResponse { + /** + * Result payload for start verification URL response. + */ + export interface Result extends KrakenEmbedAPI.KrakenEmbedStartVerificationURLResult {} +} + +/** + * Result payload for start verification URL response. + */ +export interface KrakenEmbedStartVerificationURLResult { + verification_id: string; +} + export declare namespace KrakenEmbed { export { + type KrakenEmbedCancelCustomOrderInput as KrakenEmbedCancelCustomOrderInput, + type KrakenEmbedCancelCustomOrderPath as KrakenEmbedCancelCustomOrderPath, + type KrakenEmbedCancelCustomOrderResponse as KrakenEmbedCancelCustomOrderResponse, + type KrakenEmbedCancelCustomOrderResult as KrakenEmbedCancelCustomOrderResult, + type KrakenEmbedCreateCustomOrderInput as KrakenEmbedCreateCustomOrderInput, + type KrakenEmbedCreateCustomOrderResponse as KrakenEmbedCreateCustomOrderResponse, + type KrakenEmbedCreateCustomOrderResult as KrakenEmbedCreateCustomOrderResult, type KrakenEmbedCurrentDayPnl as KrakenEmbedCurrentDayPnl, + type KrakenEmbedCustomOrder as KrakenEmbedCustomOrder, + type KrakenEmbedCustomOrderAction as KrakenEmbedCustomOrderAction, + type KrakenEmbedCustomOrderAmount as KrakenEmbedCustomOrderAmount, + type KrakenEmbedCustomOrderOccurrence as KrakenEmbedCustomOrderOccurrence, + type KrakenEmbedCustomOrderOccurrenceExecutedAction as KrakenEmbedCustomOrderOccurrenceExecutedAction, + type KrakenEmbedCustomOrderOccurrenceTrigger as KrakenEmbedCustomOrderOccurrenceTrigger, + type KrakenEmbedCustomOrderQuoteAsset as KrakenEmbedCustomOrderQuoteAsset, + type KrakenEmbedCustomOrderStatus as KrakenEmbedCustomOrderStatus, + type KrakenEmbedCustomOrderTrigger as KrakenEmbedCustomOrderTrigger, type KrakenEmbedGetAssetListQueryParamsSchema as KrakenEmbedGetAssetListQueryParamsSchema, + type KrakenEmbedGetCustomOrderHistoryQueryParams as KrakenEmbedGetCustomOrderHistoryQueryParams, + type KrakenEmbedGetCustomOrderHistoryResponse as KrakenEmbedGetCustomOrderHistoryResponse, + type KrakenEmbedGetCustomOrderHistoryResult as KrakenEmbedGetCustomOrderHistoryResult, + type KrakenEmbedGetCustomOrderQueryParams as KrakenEmbedGetCustomOrderQueryParams, + type KrakenEmbedGetCustomOrderResponse as KrakenEmbedGetCustomOrderResponse, + type KrakenEmbedGetCustomOrderResult as KrakenEmbedGetCustomOrderResult, type KrakenEmbedGetPortfolioDetailsQueryParamsSchema as KrakenEmbedGetPortfolioDetailsQueryParamsSchema, type KrakenEmbedGetPortfolioSummaryQueryParams as KrakenEmbedGetPortfolioSummaryQueryParams, type KrakenEmbedGetPortfolioSummaryResponse as KrakenEmbedGetPortfolioSummaryResponse, type KrakenEmbedGetPortfolioTransactionsQueryParamsSchema as KrakenEmbedGetPortfolioTransactionsQueryParamsSchema, type KrakenEmbedGetQuoteQueryParams as KrakenEmbedGetQuoteQueryParams, + type KrakenEmbedListCustomOrdersQueryParams as KrakenEmbedListCustomOrdersQueryParams, + type KrakenEmbedListCustomOrdersResponse as KrakenEmbedListCustomOrdersResponse, + type KrakenEmbedListCustomOrdersResult as KrakenEmbedListCustomOrdersResult, + type KrakenEmbedStartAddressMetadata as KrakenEmbedStartAddressMetadata, + type KrakenEmbedStartAddressVerificationURLInput as KrakenEmbedStartAddressVerificationURLInput, + type KrakenEmbedStartIdentityInfo as KrakenEmbedStartIdentityInfo, + type KrakenEmbedStartIdentityMetadata as KrakenEmbedStartIdentityMetadata, + type KrakenEmbedStartIdentityVerificationURLInput as KrakenEmbedStartIdentityVerificationURLInput, + type KrakenEmbedStartLivenessVerificationURLInput as KrakenEmbedStartLivenessVerificationURLInput, + type KrakenEmbedStartVerificationDebug as KrakenEmbedStartVerificationDebug, + type KrakenEmbedStartVerificationURLInput as KrakenEmbedStartVerificationURLInput, + type KrakenEmbedStartVerificationURLResponse as KrakenEmbedStartVerificationURLResponse, + type KrakenEmbedStartVerificationURLResult as KrakenEmbedStartVerificationURLResult, }; } diff --git a/src/resources/policies.ts b/src/resources/policies.ts index 7d7dde8..65b8c6b 100644 --- a/src/resources/policies.ts +++ b/src/resources/policies.ts @@ -493,7 +493,8 @@ export interface ConditionSetItemsResponse { } /** - * Request body for creating a condition set. + * Request body for creating a condition set. Exactly one of `owner` or `owner_id` + * is required. */ export interface ConditionSetRequestBody { /** @@ -1032,7 +1033,8 @@ export interface TronTransactionCondition { } /** - * Request body for updating a condition set. + * Request body for updating a condition set. At least one field must be provided. + * `owner` and `owner_id` are mutually exclusive. */ export interface UpdateConditionSetRequestBody { /** diff --git a/src/resources/wallets/balance.ts b/src/resources/wallets/balance.ts index 3f56c47..40ab602 100644 --- a/src/resources/wallets/balance.ts +++ b/src/resources/wallets/balance.ts @@ -71,10 +71,15 @@ export interface BalanceGetParams { /** * The token contract address(es) to query in format "chain:address" (e.g., * "base:0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913" or - * "solana:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"). + * "solana:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"). Cannot be used together + * with `asset`/`chain` or with `include_currency`. */ token?: string | Array; + /** + * Named asset(s) to query (e.g. `eth`, `usdc`). Use together with `chain` to scope + * the query. Cannot be used with `token`. + */ asset?: | 'usdc' | 'usdc.e' @@ -86,6 +91,10 @@ export interface BalanceGetParams { | 'sol' | Array; + /** + * Chain(s) to query named assets on (e.g. `base`, `ethereum`). Use together with + * `asset`. Cannot be used with `token`. + */ chain?: | 'ethereum' | 'arbitrum' @@ -124,6 +133,10 @@ export interface BalanceGetParams { | 'solana_testnet' >; + /** + * If set, balances are converted to the specified fiat currency. Not supported + * when `token` is provided. + */ include_currency?: 'usd' | 'eur'; } diff --git a/src/resources/wallets/wallets.ts b/src/resources/wallets/wallets.ts index 8801186..510f27f 100644 --- a/src/resources/wallets/wallets.ts +++ b/src/resources/wallets/wallets.ts @@ -1667,6 +1667,8 @@ export interface SolanaSignAndSendTransactionRpcInput { chain_type?: 'solana'; + optimistic_broadcast?: boolean; + reference_id?: string; sponsor?: boolean; @@ -1708,6 +1710,8 @@ export interface SolanaSignAndSendTransactionRpcResponseData { reference_id?: string | null; + signed_transaction?: string; + transaction_id?: string; } @@ -3441,7 +3445,8 @@ export type WalletRpcResponse = export type WalletSolanaAsset = 'sol' | 'usdc' | 'eurc' | 'usdb'; /** - * Request body for updating a wallet. + * Request body for updating a wallet. `owner` and `owner_id` are mutually + * exclusive. */ export interface WalletUpdateRequestBody { /** @@ -4159,6 +4164,11 @@ export declare namespace WalletRpcParams { */ chain_type?: 'solana'; + /** + * Body param + */ + optimistic_broadcast?: boolean; + /** * Body param */ diff --git a/src/resources/webhooks.ts b/src/resources/webhooks.ts index f15f4e8..8b42b45 100644 --- a/src/resources/webhooks.ts +++ b/src/resources/webhooks.ts @@ -486,6 +486,56 @@ export interface IntentFailedWebhookPayload { created_by_id?: string; } +/** + * Payload for the intent.rejected webhook event. + */ +export interface IntentRejectedWebhookPayload { + /** + * Unix timestamp when the intent was created. + */ + created_at: number; + + /** + * Unix timestamp when the intent expires. + */ + expires_at: number; + + /** + * The unique ID of the intent. + */ + intent_id: string; + + /** + * Type of intent. + */ + intent_type: IntentsAPI.IntentType; + + /** + * Unix timestamp when the intent was rejected. + */ + rejected_at: number; + + /** + * The current status of the intent. + */ + status: string; + + /** + * The type of webhook event. + */ + type: 'intent.rejected'; + + /** + * Display name of the user who created the intent. + */ + created_by_display_name?: string; + + /** + * The ID of the user who created the intent. + */ + created_by_id?: string; +} + /** * Payload for the kraken_embed.quote.cancelled webhook event. */ @@ -2646,6 +2696,7 @@ export type WebhookPayload = | UserOperationCompletedWebhookPayload | IntentCreatedWebhookPayload | IntentAuthorizedWebhookPayload + | IntentRejectedWebhookPayload | IntentExecutedWebhookPayload | IntentFailedWebhookPayload | WalletActionSwapCreatedWebhookPayload @@ -2751,6 +2802,7 @@ export type UnsafeUnwrapWebhookEvent = | IntentCreatedWebhookPayload | IntentExecutedWebhookPayload | IntentFailedWebhookPayload + | IntentRejectedWebhookPayload | MfaDisabledWebhookPayload | MfaEnabledWebhookPayload | TransactionBroadcastedWebhookPayload @@ -2813,6 +2865,7 @@ export declare namespace Webhooks { type IntentCreatedWebhookPayload as IntentCreatedWebhookPayload, type IntentExecutedWebhookPayload as IntentExecutedWebhookPayload, type IntentFailedWebhookPayload as IntentFailedWebhookPayload, + type IntentRejectedWebhookPayload as IntentRejectedWebhookPayload, type KrakenEmbedQuoteCancelledWebhookPayload as KrakenEmbedQuoteCancelledWebhookPayload, type KrakenEmbedQuoteExecutedWebhookPayload as KrakenEmbedQuoteExecutedWebhookPayload, type KrakenEmbedQuoteExecutionFailedWebhookPayload as KrakenEmbedQuoteExecutionFailedWebhookPayload, diff --git a/src/version.ts b/src/version.ts index 74131f9..02c8084 100644 --- a/src/version.ts +++ b/src/version.ts @@ -1 +1 @@ -export const VERSION = '0.18.0'; // x-release-please-version +export const VERSION = '0.19.0'; // x-release-please-version