privy_ruby 0.1.0 → 0.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 (161) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -0
  3. data/README.md +1 -1
  4. data/lib/privy/client.rb +5 -4
  5. data/lib/privy/models/analytics_event_input.rb +2 -2
  6. data/lib/privy/models/bitcoin_address.rb +7 -0
  7. data/lib/privy/models/bridge_destination_asset.rb +1 -0
  8. data/lib/privy/models/bridge_fiat_virtual_account_destination.rb +6 -1
  9. data/lib/privy/models/bridge_fiat_virtual_account_request.rb +6 -2
  10. data/lib/privy/models/bridge_fiat_virtual_account_response.rb +2 -1
  11. data/lib/privy/models/bridge_fiat_virtual_account_source.rb +4 -1
  12. data/lib/privy/models/bridge_sandbox_fiat_virtual_account_request.rb +6 -2
  13. data/lib/privy/models/bridge_sandbox_fiat_virtual_account_response.rb +2 -1
  14. data/lib/privy/models/bridge_source_asset.rb +1 -0
  15. data/lib/privy/models/create_stripe_onramp_session_response.rb +16 -1
  16. data/lib/privy/models/device_verify_action.rb +16 -0
  17. data/lib/privy/models/device_verify_request_body.rb +27 -0
  18. data/lib/privy/models/device_verify_response.rb +18 -0
  19. data/lib/privy/models/evm_address.rb +7 -0
  20. data/lib/privy/models/evm_checksum_address.rb +7 -0
  21. data/lib/privy/models/gas.rb +35 -0
  22. data/lib/privy/models/hyperliquid_token_address.rb +7 -0
  23. data/lib/privy/models/linked_account_embedded_wallet.rb +1 -0
  24. data/lib/privy/models/oauth_grant.rb +54 -0
  25. data/lib/privy/models/oauth_grant_list_response.rb +18 -0
  26. data/lib/privy/models/oauth_grant_revoke_response.rb +30 -0
  27. data/lib/privy/models/oauth_token_authorization_code_request_body.rb +59 -0
  28. data/lib/privy/models/oauth_token_device_code_pending_error.rb +50 -0
  29. data/lib/privy/models/oauth_token_device_code_request_body.rb +36 -0
  30. data/lib/privy/models/oauth_token_grant_type.rb +17 -0
  31. data/lib/privy/models/oauth_token_refresh_token_request_body.rb +36 -0
  32. data/lib/privy/models/oauth_token_request_body.rb +24 -0
  33. data/lib/privy/models/oauth_token_success_response.rb +58 -0
  34. data/lib/privy/models/onramp_session_fees.rb +23 -0
  35. data/lib/privy/models/onramp_session_transaction_details.rb +59 -0
  36. data/lib/privy/models/solana_address.rb +7 -0
  37. data/lib/privy/models/swap_action_response.rb +38 -1
  38. data/lib/privy/models/swap_quote_request_body.rb +3 -3
  39. data/lib/privy/models/swap_quote_response.rb +18 -5
  40. data/lib/privy/models/swap_request_body.rb +3 -3
  41. data/lib/privy/models/token_transfer_destination.rb +2 -2
  42. data/lib/privy/models/transfer_action_response.rb +29 -3
  43. data/lib/privy/models/transfer_quote_request_body.rb +3 -2
  44. data/lib/privy/models/transfer_quote_response.rb +10 -1
  45. data/lib/privy/models/transfer_received_transaction_detail.rb +5 -0
  46. data/lib/privy/models/transfer_request_body.rb +3 -2
  47. data/lib/privy/models/transfer_sent_transaction_detail.rb +5 -0
  48. data/lib/privy/models/tron_address.rb +7 -0
  49. data/lib/privy/models/wallet_asset.rb +1 -0
  50. data/lib/privy/models/wallet_batch_create_response.rb +1 -0
  51. data/lib/privy/models/wallet_create_batch_params.rb +14 -0
  52. data/lib/privy/models/wallet_ethereum_asset.rb +1 -0
  53. data/lib/privy/models/wallets/balance_get_params.rb +11 -0
  54. data/lib/privy/models/wallets/balance_get_response.rb +5 -0
  55. data/lib/privy/models/wallets/transaction_get_params.rb +3 -0
  56. data/lib/privy/models.rb +46 -0
  57. data/lib/privy/resources/intents.rb +2 -1
  58. data/lib/privy/resources/wallets/swap.rb +2 -2
  59. data/lib/privy/resources/wallets.rb +25 -1
  60. data/lib/privy/version.rb +1 -1
  61. data/lib/privy.rb +24 -1
  62. data/rbi/privy/client.rbi +4 -3
  63. data/rbi/privy/models/analytics_event_input.rbi +3 -6
  64. data/rbi/privy/models/bitcoin_address.rbi +7 -0
  65. data/rbi/privy/models/bridge_destination_asset.rbi +1 -0
  66. data/rbi/privy/models/bridge_fiat_virtual_account_destination.rbi +8 -1
  67. data/rbi/privy/models/bridge_fiat_virtual_account_request.rbi +9 -1
  68. data/rbi/privy/models/bridge_fiat_virtual_account_response.rbi +2 -0
  69. data/rbi/privy/models/bridge_fiat_virtual_account_source.rbi +6 -1
  70. data/rbi/privy/models/bridge_sandbox_fiat_virtual_account_request.rbi +9 -1
  71. data/rbi/privy/models/bridge_sandbox_fiat_virtual_account_response.rbi +2 -0
  72. data/rbi/privy/models/bridge_source_asset.rbi +1 -0
  73. data/rbi/privy/models/create_stripe_onramp_session_response.rbi +61 -3
  74. data/rbi/privy/models/device_verify_action.rbi +22 -0
  75. data/rbi/privy/models/device_verify_request_body.rbi +44 -0
  76. data/rbi/privy/models/device_verify_response.rbi +28 -0
  77. data/rbi/privy/models/evm_address.rbi +7 -0
  78. data/rbi/privy/models/evm_checksum_address.rbi +7 -0
  79. data/rbi/privy/models/gas.rbi +46 -0
  80. data/rbi/privy/models/hyperliquid_token_address.rbi +7 -0
  81. data/rbi/privy/models/linked_account_embedded_wallet.rbi +1 -0
  82. data/rbi/privy/models/oauth_grant.rbi +78 -0
  83. data/rbi/privy/models/oauth_grant_list_response.rbi +32 -0
  84. data/rbi/privy/models/oauth_grant_revoke_response.rbi +58 -0
  85. data/rbi/privy/models/oauth_token_authorization_code_request_body.rbi +115 -0
  86. data/rbi/privy/models/oauth_token_device_code_pending_error.rbi +106 -0
  87. data/rbi/privy/models/oauth_token_device_code_request_body.rbi +78 -0
  88. data/rbi/privy/models/oauth_token_grant_type.rbi +29 -0
  89. data/rbi/privy/models/oauth_token_refresh_token_request_body.rbi +78 -0
  90. data/rbi/privy/models/oauth_token_request_body.rbi +23 -0
  91. data/rbi/privy/models/oauth_token_success_response.rbi +95 -0
  92. data/rbi/privy/models/onramp_session_fees.rbi +39 -0
  93. data/rbi/privy/models/onramp_session_transaction_details.rbi +95 -0
  94. data/rbi/privy/models/solana_address.rbi +7 -0
  95. data/rbi/privy/models/swap_action_response.rbi +84 -0
  96. data/rbi/privy/models/swap_quote_request_body.rbi +4 -4
  97. data/rbi/privy/models/swap_quote_response.rbi +19 -4
  98. data/rbi/privy/models/swap_request_body.rbi +4 -4
  99. data/rbi/privy/models/token_transfer_destination.rbi +2 -2
  100. data/rbi/privy/models/transfer_action_response.rbi +57 -2
  101. data/rbi/privy/models/transfer_quote_request_body.rbi +4 -2
  102. data/rbi/privy/models/transfer_quote_response.rbi +16 -3
  103. data/rbi/privy/models/transfer_received_transaction_detail.rbi +15 -0
  104. data/rbi/privy/models/transfer_request_body.rbi +4 -2
  105. data/rbi/privy/models/transfer_sent_transaction_detail.rbi +15 -0
  106. data/rbi/privy/models/tron_address.rbi +7 -0
  107. data/rbi/privy/models/wallet_asset.rbi +1 -0
  108. data/rbi/privy/models/wallet_batch_create_response.rbi +2 -19
  109. data/rbi/privy/models/wallet_batch_create_result.rbi +4 -4
  110. data/rbi/privy/models/wallet_create_batch_params.rbi +27 -0
  111. data/rbi/privy/models/wallet_ethereum_asset.rbi +1 -0
  112. data/rbi/privy/models/wallets/balance_get_params.rbi +22 -0
  113. data/rbi/privy/models/wallets/balance_get_response.rbi +15 -0
  114. data/rbi/privy/models/wallets/transaction_get_params.rbi +5 -0
  115. data/rbi/privy/models.rbi +51 -0
  116. data/rbi/privy/resources/intents.rbi +4 -1
  117. data/rbi/privy/resources/wallets/swap.rbi +2 -2
  118. data/rbi/privy/resources/wallets.rbi +19 -1
  119. data/sig/privy/client.rbs +2 -2
  120. data/sig/privy/models/analytics_event_input.rbs +4 -6
  121. data/sig/privy/models/bitcoin_address.rbs +5 -0
  122. data/sig/privy/models/create_stripe_onramp_session_response.rbs +29 -3
  123. data/sig/privy/models/device_verify_action.rbs +14 -0
  124. data/sig/privy/models/device_verify_request_body.rbs +22 -0
  125. data/sig/privy/models/device_verify_response.rbs +13 -0
  126. data/sig/privy/models/evm_address.rbs +5 -0
  127. data/sig/privy/models/evm_checksum_address.rbs +5 -0
  128. data/sig/privy/models/gas.rbs +21 -0
  129. data/sig/privy/models/hyperliquid_token_address.rbs +5 -0
  130. data/sig/privy/models/oauth_grant.rbs +45 -0
  131. data/sig/privy/models/oauth_grant_list_response.rbs +13 -0
  132. data/sig/privy/models/oauth_grant_revoke_response.rbs +28 -0
  133. data/sig/privy/models/oauth_token_authorization_code_request_body.rbs +56 -0
  134. data/sig/privy/models/oauth_token_device_code_pending_error.rbs +48 -0
  135. data/sig/privy/models/oauth_token_device_code_request_body.rbs +35 -0
  136. data/sig/privy/models/oauth_token_grant_type.rbs +18 -0
  137. data/sig/privy/models/oauth_token_refresh_token_request_body.rbs +35 -0
  138. data/sig/privy/models/oauth_token_request_body.rbs +14 -0
  139. data/sig/privy/models/oauth_token_success_response.rbs +49 -0
  140. data/sig/privy/models/onramp_session_fees.rbs +22 -0
  141. data/sig/privy/models/onramp_session_transaction_details.rbs +53 -0
  142. data/sig/privy/models/solana_address.rbs +5 -0
  143. data/sig/privy/models/swap_action_response.rbs +32 -0
  144. data/sig/privy/models/swap_quote_request_body.rbs +5 -5
  145. data/sig/privy/models/swap_quote_response.rbs +7 -0
  146. data/sig/privy/models/swap_request_body.rbs +5 -5
  147. data/sig/privy/models/transfer_action_response.rbs +23 -0
  148. data/sig/privy/models/transfer_quote_response.rbs +10 -3
  149. data/sig/privy/models/transfer_received_transaction_detail.rbs +15 -1
  150. data/sig/privy/models/transfer_sent_transaction_detail.rbs +15 -1
  151. data/sig/privy/models/tron_address.rbs +5 -0
  152. data/sig/privy/models/wallet_asset.rbs +2 -1
  153. data/sig/privy/models/wallet_create_batch_params.rbs +15 -0
  154. data/sig/privy/models/wallet_ethereum_asset.rbs +2 -1
  155. data/sig/privy/models/wallets/balance_get_params.rbs +10 -0
  156. data/sig/privy/models/wallets/balance_get_response.rbs +6 -0
  157. data/sig/privy/models/wallets/transaction_get_params.rbs +2 -0
  158. data/sig/privy/models.rbs +46 -0
  159. data/sig/privy/resources/wallets/swap.rbs +2 -2
  160. data/sig/privy/resources/wallets.rbs +5 -0
  161. metadata +71 -2
@@ -9,6 +9,7 @@ module Privy
9
9
  USDC = :usdc
10
10
  USDC_E = :"usdc.e"
11
11
  ETH = :eth
12
+ AVAX = :avax
12
13
  POL = :pol
13
14
  USDT = :usdt
14
15
  EURC = :eurc
@@ -2,6 +2,7 @@
2
2
 
3
3
  module Privy
4
4
  module Models
5
+ # @see Privy::Resources::Wallets#create_batch
5
6
  class WalletBatchCreateResponse < Privy::Internal::Type::BaseModel
6
7
  # @!attribute results
7
8
  # Array of results for each wallet creation request, in the same order as input.
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ # @see Privy::Resources::Wallets#create_batch
6
+ class WalletCreateBatchParams < Privy::Models::WalletBatchCreateInput
7
+ extend Privy::Internal::Type::RequestParameters::Converter
8
+ include Privy::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [Privy::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -9,6 +9,7 @@ module Privy
9
9
  USDC = :usdc
10
10
  USDC_E = :"usdc.e"
11
11
  ETH = :eth
12
+ AVAX = :avax
12
13
  POL = :pol
13
14
  USDT = :usdt
14
15
  EURC = :eurc
@@ -89,6 +89,8 @@ module Privy
89
89
 
90
90
  variant const: -> { Privy::Models::Wallets::BalanceGetParams::Asset::ETH }
91
91
 
92
+ variant const: -> { Privy::Models::Wallets::BalanceGetParams::Asset::AVAX }
93
+
92
94
  variant const: -> { Privy::Models::Wallets::BalanceGetParams::Asset::POL }
93
95
 
94
96
  variant const: -> { Privy::Models::Wallets::BalanceGetParams::Asset::USDT }
@@ -113,6 +115,7 @@ module Privy
113
115
  USDC = :usdc
114
116
  USDC_E = :"usdc.e"
115
117
  ETH = :eth
118
+ AVAX = :avax
116
119
  POL = :pol
117
120
  USDT = :usdt
118
121
  EURC = :eurc
@@ -134,6 +137,8 @@ module Privy
134
137
 
135
138
  variant const: -> { Privy::Models::Wallets::BalanceGetParams::Chain::ARBITRUM }
136
139
 
140
+ variant const: -> { Privy::Models::Wallets::BalanceGetParams::Chain::AVALANCHE }
141
+
137
142
  variant const: -> { Privy::Models::Wallets::BalanceGetParams::Chain::BASE }
138
143
 
139
144
  variant const: -> { Privy::Models::Wallets::BalanceGetParams::Chain::TEMPO }
@@ -152,6 +157,8 @@ module Privy
152
157
 
153
158
  variant const: -> { Privy::Models::Wallets::BalanceGetParams::Chain::ARBITRUM_SEPOLIA }
154
159
 
160
+ variant const: -> { Privy::Models::Wallets::BalanceGetParams::Chain::AVALANCHE_FUJI }
161
+
155
162
  variant const: -> { Privy::Models::Wallets::BalanceGetParams::Chain::BASE_SEPOLIA }
156
163
 
157
164
  variant const: -> { Privy::Models::Wallets::BalanceGetParams::Chain::LINEA_TESTNET }
@@ -171,6 +178,7 @@ module Privy
171
178
 
172
179
  ETHEREUM = :ethereum
173
180
  ARBITRUM = :arbitrum
181
+ AVALANCHE = :avalanche
174
182
  BASE = :base
175
183
  TEMPO = :tempo
176
184
  LINEA = :linea
@@ -180,6 +188,7 @@ module Privy
180
188
  ZKSYNC_ERA = :zksync_era
181
189
  SEPOLIA = :sepolia
182
190
  ARBITRUM_SEPOLIA = :arbitrum_sepolia
191
+ AVALANCHE_FUJI = :avalanche_fuji
183
192
  BASE_SEPOLIA = :base_sepolia
184
193
  LINEA_TESTNET = :linea_testnet
185
194
  OPTIMISM_SEPOLIA = :optimism_sepolia
@@ -207,6 +216,7 @@ module Privy
207
216
 
208
217
  ETHEREUM = :ethereum
209
218
  ARBITRUM = :arbitrum
219
+ AVALANCHE = :avalanche
210
220
  BASE = :base
211
221
  TEMPO = :tempo
212
222
  LINEA = :linea
@@ -216,6 +226,7 @@ module Privy
216
226
  ZKSYNC_ERA = :zksync_era
217
227
  SEPOLIA = :sepolia
218
228
  ARBITRUM_SEPOLIA = :arbitrum_sepolia
229
+ AVALANCHE_FUJI = :avalanche_fuji
219
230
  BASE_SEPOLIA = :base_sepolia
220
231
  LINEA_TESTNET = :linea_testnet
221
232
  OPTIMISM_SEPOLIA = :optimism_sepolia
@@ -57,6 +57,8 @@ module Privy
57
57
 
58
58
  variant const: -> { Privy::Models::Wallets::BalanceGetResponse::Balance::Asset::ETH }
59
59
 
60
+ variant const: -> { Privy::Models::Wallets::BalanceGetResponse::Balance::Asset::AVAX }
61
+
60
62
  variant const: -> { Privy::Models::Wallets::BalanceGetResponse::Balance::Asset::POL }
61
63
 
62
64
  variant const: -> { Privy::Models::Wallets::BalanceGetResponse::Balance::Asset::USDT }
@@ -81,6 +83,7 @@ module Privy
81
83
  USDC = :usdc
82
84
  USDC_E = :"usdc.e"
83
85
  ETH = :eth
86
+ AVAX = :avax
84
87
  POL = :pol
85
88
  USDT = :usdt
86
89
  EURC = :eurc
@@ -96,6 +99,7 @@ module Privy
96
99
 
97
100
  ETHEREUM = :ethereum
98
101
  ARBITRUM = :arbitrum
102
+ AVALANCHE = :avalanche
99
103
  BASE = :base
100
104
  TEMPO = :tempo
101
105
  LINEA = :linea
@@ -105,6 +109,7 @@ module Privy
105
109
  ZKSYNC_ERA = :zksync_era
106
110
  SEPOLIA = :sepolia
107
111
  ARBITRUM_SEPOLIA = :arbitrum_sepolia
112
+ AVALANCHE_FUJI = :avalanche_fuji
108
113
  BASE_SEPOLIA = :base_sepolia
109
114
  LINEA_TESTNET = :linea_testnet
110
115
  OPTIMISM_SEPOLIA = :optimism_sepolia
@@ -113,6 +113,8 @@ module Privy
113
113
 
114
114
  variant const: -> { Privy::Models::Wallets::TransactionGetParams::Asset::ETH }
115
115
 
116
+ variant const: -> { Privy::Models::Wallets::TransactionGetParams::Asset::AVAX }
117
+
116
118
  variant const: -> { Privy::Models::Wallets::TransactionGetParams::Asset::POL }
117
119
 
118
120
  variant const: -> { Privy::Models::Wallets::TransactionGetParams::Asset::USDT }
@@ -142,6 +144,7 @@ module Privy
142
144
  USDC = :usdc
143
145
  USDC_E = :"usdc.e"
144
146
  ETH = :eth
147
+ AVAX = :avax
145
148
  POL = :pol
146
149
  USDT = :usdt
147
150
  EURC = :eurc
data/lib/privy/models.rb CHANGED
@@ -141,6 +141,8 @@ module Privy
141
141
 
142
142
  BaseIntentResponse = Privy::Models::BaseIntentResponse
143
143
 
144
+ BitcoinAddress = Privy::Models::BitcoinAddress
145
+
144
146
  BridgeBrlFiatVirtualAccountDepositInstructions =
145
147
  Privy::Models::BridgeBrlFiatVirtualAccountDepositInstructions
146
148
 
@@ -313,6 +315,12 @@ module Privy
313
315
 
314
316
  DeviceAuthorizationResponse = Privy::Models::DeviceAuthorizationResponse
315
317
 
318
+ DeviceVerifyAction = Privy::Models::DeviceVerifyAction
319
+
320
+ DeviceVerifyRequestBody = Privy::Models::DeviceVerifyRequestBody
321
+
322
+ DeviceVerifyResponse = Privy::Models::DeviceVerifyResponse
323
+
316
324
  EarnAsset = Privy::Models::EarnAsset
317
325
 
318
326
  EarnDepositActionResponse = Privy::Models::EarnDepositActionResponse
@@ -482,8 +490,12 @@ module Privy
482
490
 
483
491
  EthereumYieldWithdrawInput = Privy::Models::EthereumYieldWithdrawInput
484
492
 
493
+ EvmAddress = Privy::Models::EvmAddress
494
+
485
495
  EvmCaip2ChainID = Privy::Models::EvmCaip2ChainID
486
496
 
497
+ EvmChecksumAddress = Privy::Models::EvmChecksumAddress
498
+
487
499
  EvmTransactionWalletActionStep = Privy::Models::EvmTransactionWalletActionStep
488
500
 
489
501
  EvmUserOperationWalletActionStep = Privy::Models::EvmUserOperationWalletActionStep
@@ -612,6 +624,8 @@ module Privy
612
624
 
613
625
  FundsWithdrawnWebhookPayload = Privy::Models::FundsWithdrawnWebhookPayload
614
626
 
627
+ Gas = Privy::Models::Gas
628
+
615
629
  GasSpendCurrency = Privy::Models::GasSpendCurrency
616
630
 
617
631
  GasSpendRequestBody = Privy::Models::GasSpendRequestBody
@@ -652,6 +666,8 @@ module Privy
652
666
 
653
667
  HpkeImportConfig = Privy::Models::HpkeImportConfig
654
668
 
669
+ HyperliquidTokenAddress = Privy::Models::HyperliquidTokenAddress
670
+
655
671
  ICloudClientType = Privy::Models::ICloudClientType
656
672
 
657
673
  IntentAuthorization = Privy::Models::IntentAuthorization
@@ -1043,6 +1059,12 @@ module Privy
1043
1059
 
1044
1060
  OAuthCodeType = Privy::Models::OAuthCodeType
1045
1061
 
1062
+ OAuthGrant = Privy::Models::OAuthGrant
1063
+
1064
+ OAuthGrantListResponse = Privy::Models::OAuthGrantListResponse
1065
+
1066
+ OAuthGrantRevokeResponse = Privy::Models::OAuthGrantRevokeResponse
1067
+
1046
1068
  OAuthInitICloudRecoveryInput = Privy::Models::OAuthInitICloudRecoveryInput
1047
1069
 
1048
1070
  OAuthInitRecoveryInput = Privy::Models::OAuthInitRecoveryInput
@@ -1057,8 +1079,22 @@ module Privy
1057
1079
 
1058
1080
  OAuthProviderID = Privy::Models::OAuthProviderID
1059
1081
 
1082
+ OAuthTokenAuthorizationCodeRequestBody = Privy::Models::OAuthTokenAuthorizationCodeRequestBody
1083
+
1084
+ OAuthTokenDeviceCodePendingError = Privy::Models::OAuthTokenDeviceCodePendingError
1085
+
1086
+ OAuthTokenDeviceCodeRequestBody = Privy::Models::OAuthTokenDeviceCodeRequestBody
1087
+
1088
+ OAuthTokenGrantType = Privy::Models::OAuthTokenGrantType
1089
+
1090
+ OAuthTokenRefreshTokenRequestBody = Privy::Models::OAuthTokenRefreshTokenRequestBody
1091
+
1092
+ OAuthTokenRequestBody = Privy::Models::OAuthTokenRequestBody
1093
+
1060
1094
  OAuthTokens = Privy::Models::OAuthTokens
1061
1095
 
1096
+ OAuthTokenSuccessResponse = Privy::Models::OAuthTokenSuccessResponse
1097
+
1062
1098
  OAuthTransferRequestBody = Privy::Models::OAuthTransferRequestBody
1063
1099
 
1064
1100
  OAuthTransferUserInfo = Privy::Models::OAuthTransferUserInfo
@@ -1073,8 +1109,12 @@ module Privy
1073
1109
 
1074
1110
  OnrampProvider = Privy::Models::OnrampProvider
1075
1111
 
1112
+ OnrampSessionFees = Privy::Models::OnrampSessionFees
1113
+
1076
1114
  OnrampSessionParams = Privy::Models::OnrampSessionParams
1077
1115
 
1116
+ OnrampSessionTransactionDetails = Privy::Models::OnrampSessionTransactionDetails
1117
+
1078
1118
  OptionalRefreshTokenInput = Privy::Models::OptionalRefreshTokenInput
1079
1119
 
1080
1120
  OrganizationSecretIDInput = Privy::Models::OrganizationSecretIDInput
@@ -1342,6 +1382,8 @@ module Privy
1342
1382
 
1343
1383
  SMSMfaMethod = Privy::Models::SMSMfaMethod
1344
1384
 
1385
+ SolanaAddress = Privy::Models::SolanaAddress
1386
+
1345
1387
  SolanaProgramInstructionCondition = Privy::Models::SolanaProgramInstructionCondition
1346
1388
 
1347
1389
  SolanaRpcInput = Privy::Models::SolanaRpcInput
@@ -1642,6 +1684,8 @@ module Privy
1642
1684
 
1643
1685
  TransferTelegramInput = Privy::Models::TransferTelegramInput
1644
1686
 
1687
+ TronAddress = Privy::Models::TronAddress
1688
+
1645
1689
  TronCalldataCondition = Privy::Models::TronCalldataCondition
1646
1690
 
1647
1691
  TronTransactionCondition = Privy::Models::TronTransactionCondition
@@ -1834,6 +1878,8 @@ module Privy
1834
1878
 
1835
1879
  WalletChainType = Privy::Models::WalletChainType
1836
1880
 
1881
+ WalletCreateBatchParams = Privy::Models::WalletCreateBatchParams
1882
+
1837
1883
  WalletCreateParams = Privy::Models::WalletCreateParams
1838
1884
 
1839
1885
  WalletCreateWalletsWithRecoveryParams = Privy::Models::WalletCreateWalletsWithRecoveryParams
@@ -2,6 +2,7 @@
2
2
 
3
3
  module Privy
4
4
  module Resources
5
+ # Operations related to authorization intents for wallet actions
5
6
  class Intents
6
7
  # List intents for an app. Returns a paginated list of intents with their current
7
8
  # status and details.
@@ -186,7 +187,7 @@ module Privy
186
187
  #
187
188
  # @param fee_configuration [Privy::Models::FeeConfiguration] Body param: Total fees assessed on a transfer, in BPS
188
189
  #
189
- # @param slippage_bps [Integer] Body param: Maximum allowed slippage in basis points (1 bps = 0.01%).
190
+ # @param slippage_bps [Integer] Body param: Maximum allowed slippage in basis points (1 bps = 0.01%). Only appli
190
191
  #
191
192
  # @param privy_request_expiry [String] Header param: Request expiry. Value is a Unix timestamp in milliseconds represen
192
193
  #
@@ -24,7 +24,7 @@ module Privy
24
24
  #
25
25
  # @param fee_configuration [Privy::Models::FeeConfiguration] Body param: Total fees assessed on a transfer, in BPS
26
26
  #
27
- # @param slippage_bps [Float] Body param: Maximum slippage tolerance in basis points (e.g., 50 for 0.5%).
27
+ # @param slippage_bps [Integer] Body param: Maximum slippage tolerance in basis points (e.g., 50 for 0.5%).
28
28
  #
29
29
  # @param privy_authorization_signature [String] Header param: Request authorization signature. If multiple signatures are requir
30
30
  #
@@ -71,7 +71,7 @@ module Privy
71
71
  #
72
72
  # @param fee_configuration [Privy::Models::FeeConfiguration] Body param: Total fees assessed on a transfer, in BPS
73
73
  #
74
- # @param slippage_bps [Float] Body param: Maximum slippage tolerance in basis points (e.g., 50 for 0.5%). If o
74
+ # @param slippage_bps [Integer] Body param: Maximum slippage tolerance in basis points (e.g., 50 for 0.5%). If o
75
75
  #
76
76
  # @param privy_authorization_signature [String] Header param: Request authorization signature. If multiple signatures are requir
77
77
  #
@@ -217,7 +217,7 @@ module Privy
217
217
  #
218
218
  # @param fee_configuration [Privy::Models::FeeConfiguration] Body param: Total fees assessed on a transfer, in BPS
219
219
  #
220
- # @param slippage_bps [Integer] Body param: Maximum allowed slippage in basis points (1 bps = 0.01%).
220
+ # @param slippage_bps [Integer] Body param: Maximum allowed slippage in basis points (1 bps = 0.01%). Only appli
221
221
  #
222
222
  # @param privy_authorization_signature [String] Header param: Request authorization signature. If multiple signatures are requir
223
223
  #
@@ -278,6 +278,30 @@ module Privy
278
278
  )
279
279
  end
280
280
 
281
+ # Creates multiple wallets in a single request. Each wallet creation is
282
+ # independent; failures for one wallet do not affect others. Maximum batch size is
283
+ # 100 wallets.
284
+ #
285
+ # @overload create_batch(wallets:, request_options: {})
286
+ #
287
+ # @param wallets [Array<Privy::Models::WalletBatchItemInput>] Array of wallet creation requests. Minimum 1, maximum 100.
288
+ #
289
+ # @param request_options [Privy::RequestOptions, Hash{Symbol=>Object}, nil]
290
+ #
291
+ # @return [Privy::Models::WalletBatchCreateResponse]
292
+ #
293
+ # @see Privy::Models::WalletCreateBatchParams
294
+ def create_batch(params)
295
+ parsed, options = Privy::WalletCreateBatchParams.dump_request(params)
296
+ @client.request(
297
+ method: :post,
298
+ path: "v1/wallets/batch",
299
+ body: parsed,
300
+ model: Privy::WalletBatchCreateResponse,
301
+ options: options
302
+ )
303
+ end
304
+
281
305
  # @deprecated
282
306
  #
283
307
  # Create one or more wallets associated with a recovery user, so the user can
data/lib/privy/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Privy
4
- VERSION = "0.1.0"
4
+ VERSION = "0.2.0"
5
5
  end
data/lib/privy.rb CHANGED
@@ -53,10 +53,12 @@ require_relative "privy/internal/transport/base_client"
53
53
  require_relative "privy/internal/transport/pooled_net_requester"
54
54
  require_relative "privy/client"
55
55
  require_relative "privy/internal/cursor"
56
+ require_relative "privy/models/onramp_session_fees"
56
57
  require_relative "privy/models/kraken_embed_earn_amount"
57
58
  require_relative "privy/models/kraken_embed_start_identity_info"
58
59
  require_relative "privy/models/user_invite_input"
59
60
  require_relative "privy/models/organization_secret_view"
61
+ require_relative "privy/models/onramp_session_transaction_details"
60
62
  require_relative "privy/models/embedded_wallet_input_schema"
61
63
  require_relative "privy/models/policy_rule_request_body"
62
64
  require_relative "privy/models/wallet_rpc_request_body"
@@ -87,6 +89,7 @@ require_relative "privy/models/linked_account_ethereum_embedded_wallet"
87
89
  require_relative "privy/models/user"
88
90
  require_relative "privy/models/organization_secret_id_input"
89
91
  require_relative "privy/models/wallet_authenticate_request_body"
92
+ require_relative "privy/models/wallet_batch_create_input"
90
93
  require_relative "privy/models/wallet_export_request_body"
91
94
  require_relative "privy/models/get_by_wallet_address_request_body"
92
95
  require_relative "privy/models/raw_sign_input"
@@ -145,6 +148,7 @@ require_relative "privy/models/balance_asset"
145
148
  require_relative "privy/models/balance_asset_by_chain"
146
149
  require_relative "privy/models/balance_response"
147
150
  require_relative "privy/models/base_action_result"
151
+ require_relative "privy/models/bitcoin_address"
148
152
  require_relative "privy/models/bridge_brl_fiat_virtual_account_deposit_instructions"
149
153
  require_relative "privy/models/bridge_crypto_deposit_metadata"
150
154
  require_relative "privy/models/bridge_crypto_transfer_metadata"
@@ -226,6 +230,9 @@ require_relative "privy/models/custom_oauth_provider_id"
226
230
  require_relative "privy/models/custom_token_transfer_source"
227
231
  require_relative "privy/models/developer_fee"
228
232
  require_relative "privy/models/device_authorization_response"
233
+ require_relative "privy/models/device_verify_action"
234
+ require_relative "privy/models/device_verify_request_body"
235
+ require_relative "privy/models/device_verify_response"
229
236
  require_relative "privy/models/earn_asset"
230
237
  require_relative "privy/models/earn_deposit_action_response"
231
238
  require_relative "privy/models/earn_incentive_claim_action_response"
@@ -306,7 +313,9 @@ require_relative "privy/models/ethereum_yield_sweep_response"
306
313
  require_relative "privy/models/ethereum_yield_sweep_status"
307
314
  require_relative "privy/models/ethereum_yield_sweep_type"
308
315
  require_relative "privy/models/ethereum_yield_withdraw_input"
316
+ require_relative "privy/models/evm_address"
309
317
  require_relative "privy/models/evm_caip_2_chain_id"
318
+ require_relative "privy/models/evm_checksum_address"
310
319
  require_relative "privy/models/evm_transaction_wallet_action_step"
311
320
  require_relative "privy/models/evm_user_operation_wallet_action_step"
312
321
  require_relative "privy/models/evm_wallet_action_step_status"
@@ -371,6 +380,7 @@ require_relative "privy/models/funding_method_enum"
371
380
  require_relative "privy/models/funding_option"
372
381
  require_relative "privy/models/funds_deposited_webhook_payload"
373
382
  require_relative "privy/models/funds_withdrawn_webhook_payload"
383
+ require_relative "privy/models/gas"
374
384
  require_relative "privy/models/gas_spend_currency"
375
385
  require_relative "privy/models/gas_spend_request_body"
376
386
  require_relative "privy/models/gas_spend_response_body"
@@ -390,6 +400,7 @@ require_relative "privy/models/hex"
390
400
  require_relative "privy/models/hpke_aead_algorithm"
391
401
  require_relative "privy/models/hpke_encryption"
392
402
  require_relative "privy/models/hpke_import_config"
403
+ require_relative "privy/models/hyperliquid_token_address"
393
404
  require_relative "privy/models/icloud_client_type"
394
405
  require_relative "privy/models/intent_authorization"
395
406
  require_relative "privy/models/intent_authorization_key_quorum_member"
@@ -558,6 +569,9 @@ require_relative "privy/models/oauth_authenticate_request_body"
558
569
  require_relative "privy/models/oauth_authorization_code_request_body"
559
570
  require_relative "privy/models/oauth_callback_icloud_expo_input"
560
571
  require_relative "privy/models/oauth_code_type"
572
+ require_relative "privy/models/oauth_grant"
573
+ require_relative "privy/models/oauth_grant_list_response"
574
+ require_relative "privy/models/oauth_grant_revoke_response"
561
575
  require_relative "privy/models/oauth_init_icloud_recovery_input"
562
576
  require_relative "privy/models/oauth_init_recovery_input"
563
577
  require_relative "privy/models/oauth_init_request_body"
@@ -565,7 +579,14 @@ require_relative "privy/models/oauth_init_response_body"
565
579
  require_relative "privy/models/oauth_link_request_body"
566
580
  require_relative "privy/models/oauth_link_response_body"
567
581
  require_relative "privy/models/oauth_provider_id"
582
+ require_relative "privy/models/oauth_token_authorization_code_request_body"
583
+ require_relative "privy/models/oauth_token_device_code_pending_error"
584
+ require_relative "privy/models/oauth_token_device_code_request_body"
585
+ require_relative "privy/models/oauth_token_grant_type"
586
+ require_relative "privy/models/oauth_token_refresh_token_request_body"
587
+ require_relative "privy/models/oauth_token_request_body"
568
588
  require_relative "privy/models/oauth_tokens"
589
+ require_relative "privy/models/oauth_token_success_response"
569
590
  require_relative "privy/models/oauth_transfer_request_body"
570
591
  require_relative "privy/models/oauth_transfer_user_info"
571
592
  require_relative "privy/models/oauth_transfer_user_info_meta"
@@ -703,6 +724,7 @@ require_relative "privy/models/smart_wallet_network_configuration_input"
703
724
  require_relative "privy/models/smart_wallet_siwe_input"
704
725
  require_relative "privy/models/smart_wallet_type"
705
726
  require_relative "privy/models/sms_mfa_method"
727
+ require_relative "privy/models/solana_address"
706
728
  require_relative "privy/models/solana_program_instruction_condition"
707
729
  require_relative "privy/models/solana_rpc_input"
708
730
  require_relative "privy/models/solana_rpc_response"
@@ -848,6 +870,7 @@ require_relative "privy/models/transfer_sent_transaction_detail"
848
870
  require_relative "privy/models/transfer_siwe_input"
849
871
  require_relative "privy/models/transfer_siws_input"
850
872
  require_relative "privy/models/transfer_telegram_input"
873
+ require_relative "privy/models/tron_address"
851
874
  require_relative "privy/models/tron_calldata_condition"
852
875
  require_relative "privy/models/tron_transaction_condition"
853
876
  require_relative "privy/models/typed_data_domain_input_params"
@@ -929,11 +952,11 @@ require_relative "privy/models/wallet_asset"
929
952
  require_relative "privy/models/wallet_authenticate_with_jwt_params"
930
953
  require_relative "privy/models/wallet_authenticate_with_jwt_response"
931
954
  require_relative "privy/models/wallet_authorization_headers"
932
- require_relative "privy/models/wallet_batch_create_input"
933
955
  require_relative "privy/models/wallet_batch_create_response"
934
956
  require_relative "privy/models/wallet_batch_create_result"
935
957
  require_relative "privy/models/wallet_batch_item_input"
936
958
  require_relative "privy/models/wallet_chain_type"
959
+ require_relative "privy/models/wallet_create_batch_params"
937
960
  require_relative "privy/models/wallet_create_params"
938
961
  require_relative "privy/models/wallet_create_wallets_with_recovery_params"
939
962
  require_relative "privy/models/wallet_create_wallets_with_recovery_response"
data/rbi/privy/client.rbi CHANGED
@@ -46,6 +46,7 @@ module Privy
46
46
  sig { returns(Privy::Resources::KeyQuorums) }
47
47
  attr_reader :key_quorums
48
48
 
49
+ # Operations related to authorization intents for wallet actions
49
50
  sig { returns(Privy::Resources::Intents) }
50
51
  attr_reader :intents
51
52
 
@@ -71,6 +72,9 @@ module Privy
71
72
  sig { returns(Privy::Resources::ClientAuth) }
72
73
  attr_reader :client_auth
73
74
 
75
+ sig { returns(Privy::Resources::Shared) }
76
+ attr_reader :shared
77
+
74
78
  sig { returns(Privy::Resources::Onramps) }
75
79
  attr_reader :onramps
76
80
 
@@ -83,9 +87,6 @@ module Privy
83
87
  sig { returns(Privy::Resources::CrossApp) }
84
88
  attr_reader :cross_app
85
89
 
86
- sig { returns(Privy::Resources::Shared) }
87
- attr_reader :shared
88
-
89
90
  sig { returns(Privy::Resources::OAuth) }
90
91
  attr_reader :oauth
91
92
 
@@ -12,10 +12,7 @@ module Privy
12
12
  attr_accessor :event_name
13
13
 
14
14
  sig { returns(T.nilable(String)) }
15
- attr_reader :client_id
16
-
17
- sig { params(client_id: String).void }
18
- attr_writer :client_id
15
+ attr_accessor :client_id
19
16
 
20
17
  sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
21
18
  attr_reader :payload
@@ -27,7 +24,7 @@ module Privy
27
24
  sig do
28
25
  params(
29
26
  event_name: String,
30
- client_id: String,
27
+ client_id: T.nilable(String),
31
28
  payload: T::Hash[Symbol, T.anything]
32
29
  ).returns(T.attached_class)
33
30
  end
@@ -38,7 +35,7 @@ module Privy
38
35
  override.returns(
39
36
  {
40
37
  event_name: String,
41
- client_id: String,
38
+ client_id: T.nilable(String),
42
39
  payload: T::Hash[Symbol, T.anything]
43
40
  }
44
41
  )
@@ -0,0 +1,7 @@
1
+ # typed: strong
2
+
3
+ module Privy
4
+ module Models
5
+ BitcoinAddress = String
6
+ end
7
+ end
@@ -2,6 +2,7 @@
2
2
 
3
3
  module Privy
4
4
  module Models
5
+ # Supported destination stablecoin assets for fiat-to-crypto transfers.
5
6
  module BridgeDestinationAsset
6
7
  extend Privy::Internal::Type::Enum
7
8
 
@@ -14,12 +14,14 @@ module Privy
14
14
  sig { returns(String) }
15
15
  attr_accessor :address
16
16
 
17
+ # Supported destination stablecoin assets for fiat-to-crypto transfers.
17
18
  sig { returns(Privy::BridgeDestinationAsset::OrSymbol) }
18
19
  attr_accessor :asset
19
20
 
20
21
  sig { returns(String) }
21
22
  attr_accessor :chain
22
23
 
24
+ # The destination chain, asset, and address for a virtual account transfer.
23
25
  sig do
24
26
  params(
25
27
  address: String,
@@ -27,7 +29,12 @@ module Privy
27
29
  chain: String
28
30
  ).returns(T.attached_class)
29
31
  end
30
- def self.new(address:, asset:, chain:)
32
+ def self.new(
33
+ address:,
34
+ # Supported destination stablecoin assets for fiat-to-crypto transfers.
35
+ asset:,
36
+ chain:
37
+ )
31
38
  end
32
39
 
33
40
  sig do
@@ -11,6 +11,7 @@ module Privy
11
11
  )
12
12
  end
13
13
 
14
+ # The destination chain, asset, and address for a virtual account transfer.
14
15
  sig { returns(Privy::BridgeFiatVirtualAccountDestination) }
15
16
  attr_reader :destination
16
17
 
@@ -26,6 +27,7 @@ module Privy
26
27
  end
27
28
  attr_accessor :provider
28
29
 
30
+ # The source fiat currency configuration for a virtual account.
29
31
  sig { returns(Privy::BridgeFiatVirtualAccountSource) }
30
32
  attr_reader :source
31
33
 
@@ -40,7 +42,13 @@ module Privy
40
42
  source: Privy::BridgeFiatVirtualAccountSource::OrHash
41
43
  ).returns(T.attached_class)
42
44
  end
43
- def self.new(destination:, provider:, source:)
45
+ def self.new(
46
+ # The destination chain, asset, and address for a virtual account transfer.
47
+ destination:,
48
+ provider:,
49
+ # The source fiat currency configuration for a virtual account.
50
+ source:
51
+ )
44
52
  end
45
53
 
46
54
  sig do
@@ -25,6 +25,7 @@ module Privy
25
25
  end
26
26
  attr_accessor :deposit_instructions
27
27
 
28
+ # The destination chain, asset, and address for a virtual account transfer.
28
29
  sig { returns(Privy::BridgeFiatVirtualAccountDestination) }
29
30
  attr_reader :destination
30
31
 
@@ -62,6 +63,7 @@ module Privy
62
63
  def self.new(
63
64
  # The deposit instructions for a virtual account.
64
65
  deposit_instructions:,
66
+ # The destination chain, asset, and address for a virtual account transfer.
65
67
  destination:,
66
68
  provider:,
67
69
  status:
@@ -8,15 +8,20 @@ module Privy
8
8
  T.any(Privy::BridgeFiatVirtualAccountSource, Privy::Internal::AnyHash)
9
9
  end
10
10
 
11
+ # Supported source fiat currencies for virtual account deposits.
11
12
  sig { returns(Privy::BridgeSourceAsset::OrSymbol) }
12
13
  attr_accessor :asset
13
14
 
15
+ # The source fiat currency configuration for a virtual account.
14
16
  sig do
15
17
  params(asset: Privy::BridgeSourceAsset::OrSymbol).returns(
16
18
  T.attached_class
17
19
  )
18
20
  end
19
- def self.new(asset:)
21
+ def self.new(
22
+ # Supported source fiat currencies for virtual account deposits.
23
+ asset:
24
+ )
20
25
  end
21
26
 
22
27
  sig { override.returns({ asset: Privy::BridgeSourceAsset::OrSymbol }) }