privy_ruby 0.0.2 → 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 (303) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +34 -0
  3. data/README.md +1 -1
  4. data/lib/privy/base58.rb +41 -0
  5. data/lib/privy/client.rb +12 -3
  6. data/lib/privy/cryptography.rb +34 -0
  7. data/lib/privy/models/analytics_event_input.rb +2 -2
  8. data/lib/privy/models/bitcoin_address.rb +7 -0
  9. data/lib/privy/models/bridge_destination_asset.rb +1 -0
  10. data/lib/privy/models/bridge_fiat_virtual_account_destination.rb +6 -1
  11. data/lib/privy/models/bridge_fiat_virtual_account_request.rb +6 -2
  12. data/lib/privy/models/bridge_fiat_virtual_account_response.rb +2 -1
  13. data/lib/privy/models/bridge_fiat_virtual_account_source.rb +4 -1
  14. data/lib/privy/models/bridge_sandbox_fiat_virtual_account_request.rb +6 -2
  15. data/lib/privy/models/bridge_sandbox_fiat_virtual_account_response.rb +2 -1
  16. data/lib/privy/models/bridge_source_asset.rb +1 -0
  17. data/lib/privy/models/create_link_auth_intent_input.rb +17 -0
  18. data/lib/privy/models/create_link_auth_intent_response.rb +36 -0
  19. data/lib/privy/models/create_stripe_onramp_session_input.rb +33 -0
  20. data/lib/privy/models/create_stripe_onramp_session_response.rb +38 -0
  21. data/lib/privy/models/device_authorization_response.rb +63 -0
  22. data/lib/privy/models/device_verify_action.rb +16 -0
  23. data/lib/privy/models/device_verify_request_body.rb +27 -0
  24. data/lib/privy/models/device_verify_response.rb +18 -0
  25. data/lib/privy/models/earn_incentive_reward_entry.rb +50 -0
  26. data/lib/privy/models/earn_incentive_rewards_query.rb +18 -0
  27. data/lib/privy/models/earn_incentive_rewards_response.rb +19 -0
  28. data/lib/privy/models/evm_address.rb +7 -0
  29. data/lib/privy/models/evm_checksum_address.rb +7 -0
  30. data/lib/privy/models/exchange_stripe_tokens_input.rb +23 -0
  31. data/lib/privy/models/exchange_stripe_tokens_response.rb +17 -0
  32. data/lib/privy/models/fiat_onramp_provider.rb +2 -0
  33. data/lib/privy/models/fiat_onramp_stripe_sdk_session_response.rb +45 -0
  34. data/lib/privy/models/fiat_onramp_url_session_response.rb +39 -0
  35. data/lib/privy/models/gas.rb +35 -0
  36. data/lib/privy/models/get_fiat_onramp_url_response.rb +12 -14
  37. data/lib/privy/models/get_stripe_crypto_customer_response.rb +39 -0
  38. data/lib/privy/models/hyperliquid_token_address.rb +7 -0
  39. data/lib/privy/models/kraken_embed_custom_order_cancelled_webhook_payload.rb +66 -0
  40. data/lib/privy/models/kraken_embed_custom_order_executed_webhook_payload.rb +54 -0
  41. data/lib/privy/models/kraken_embed_custom_order_execution_failed_webhook_payload.rb +67 -0
  42. data/lib/privy/models/link_auth_intent_created.rb +35 -0
  43. data/lib/privy/models/link_auth_intent_no_account.rb +27 -0
  44. data/lib/privy/models/linked_account_embedded_wallet.rb +1 -0
  45. data/lib/privy/models/list_stripe_consumer_wallets_response.rb +17 -0
  46. data/lib/privy/models/list_stripe_payment_tokens_response.rb +17 -0
  47. data/lib/privy/models/oauth_grant.rb +54 -0
  48. data/lib/privy/models/oauth_grant_list_response.rb +18 -0
  49. data/lib/privy/models/oauth_grant_revoke_response.rb +30 -0
  50. data/lib/privy/models/oauth_token_authorization_code_request_body.rb +59 -0
  51. data/lib/privy/models/oauth_token_device_code_pending_error.rb +50 -0
  52. data/lib/privy/models/oauth_token_device_code_request_body.rb +36 -0
  53. data/lib/privy/models/oauth_token_grant_type.rb +17 -0
  54. data/lib/privy/models/oauth_token_refresh_token_request_body.rb +36 -0
  55. data/lib/privy/models/oauth_token_request_body.rb +24 -0
  56. data/lib/privy/models/oauth_token_success_response.rb +58 -0
  57. data/lib/privy/models/onramp_session_fees.rb +23 -0
  58. data/lib/privy/models/onramp_session_params.rb +61 -0
  59. data/lib/privy/models/onramp_session_transaction_details.rb +59 -0
  60. data/lib/privy/models/refresh_stripe_quote_response.rb +18 -0
  61. data/lib/privy/models/rule_delete_intent_response.rb +63 -0
  62. data/lib/privy/models/rule_intent_response.rb +0 -1
  63. data/lib/privy/models/rule_mutate_intent_response.rb +64 -0
  64. data/lib/privy/models/solana_address.rb +7 -0
  65. data/lib/privy/models/stripe_consumer_wallet.rb +29 -0
  66. data/lib/privy/models/stripe_crypto_customer_active.rb +39 -0
  67. data/lib/privy/models/stripe_crypto_customer_expired.rb +33 -0
  68. data/lib/privy/models/stripe_crypto_customer_none.rb +27 -0
  69. data/lib/privy/models/stripe_onramp_checkout_response.rb +25 -0
  70. data/lib/privy/models/stripe_onramp_session_status.rb +17 -0
  71. data/lib/privy/models/stripe_payment_token.rb +23 -0
  72. data/lib/privy/models/stripe_quote.rb +17 -0
  73. data/lib/privy/models/stripe_transaction_details.rb +17 -0
  74. data/lib/privy/models/stripe_verification.rb +23 -0
  75. data/lib/privy/models/swap_action_response.rb +46 -1
  76. data/lib/privy/models/swap_destination.rb +13 -4
  77. data/lib/privy/models/swap_quote_destination.rb +15 -4
  78. data/lib/privy/models/swap_quote_request_body.rb +12 -4
  79. data/lib/privy/models/swap_quote_response.rb +40 -3
  80. data/lib/privy/models/swap_request_body.rb +12 -4
  81. data/lib/privy/models/token_transfer_destination.rb +2 -2
  82. data/lib/privy/models/transfer_action_response.rb +29 -3
  83. data/lib/privy/models/transfer_quote_request_body.rb +3 -2
  84. data/lib/privy/models/transfer_quote_response.rb +10 -1
  85. data/lib/privy/models/transfer_received_transaction_detail.rb +5 -0
  86. data/lib/privy/models/transfer_request_body.rb +3 -2
  87. data/lib/privy/models/transfer_sent_transaction_detail.rb +5 -0
  88. data/lib/privy/models/tron_address.rb +7 -0
  89. data/lib/privy/models/wallet_asset.rb +1 -0
  90. data/lib/privy/models/wallet_batch_create_response.rb +1 -0
  91. data/lib/privy/models/wallet_create_batch_params.rb +14 -0
  92. data/lib/privy/models/wallet_ethereum_asset.rb +1 -0
  93. data/lib/privy/models/wallets/balance_get_params.rb +11 -0
  94. data/lib/privy/models/wallets/balance_get_response.rb +5 -0
  95. data/lib/privy/models/wallets/swap_execute_params.rb +45 -0
  96. data/lib/privy/models/wallets/swap_quote_params.rb +36 -0
  97. data/lib/privy/models/wallets/transaction_get_params.rb +3 -0
  98. data/lib/privy/models.rb +117 -4
  99. data/lib/privy/public_api/privy_client.rb +2 -1
  100. data/lib/privy/public_api/services/earn/ethereum/incentive.rb +61 -0
  101. data/lib/privy/public_api/services/earn/ethereum.rb +131 -0
  102. data/lib/privy/public_api/services/earn.rb +18 -0
  103. data/lib/privy/public_api/services/key_quorums.rb +7 -1
  104. data/lib/privy/public_api/services/policies.rb +21 -3
  105. data/lib/privy/public_api/services/transactions.rb +14 -0
  106. data/lib/privy/public_api/services/wallets.rb +153 -1
  107. data/lib/privy/resources/intents.rb +8 -7
  108. data/lib/privy/resources/oauth.rb +14 -0
  109. data/lib/privy/resources/onramps.rb +14 -0
  110. data/lib/privy/resources/wallets/swap.rb +105 -0
  111. data/lib/privy/resources/wallets.rb +35 -3
  112. data/lib/privy/version.rb +1 -1
  113. data/lib/privy/wallet_entropy.rb +60 -0
  114. data/lib/privy.rb +71 -5
  115. data/rbi/privy/client.rbi +9 -2
  116. data/rbi/privy/models/analytics_event_input.rbi +3 -6
  117. data/rbi/privy/models/bitcoin_address.rbi +7 -0
  118. data/rbi/privy/models/bridge_destination_asset.rbi +1 -0
  119. data/rbi/privy/models/bridge_fiat_virtual_account_destination.rbi +8 -1
  120. data/rbi/privy/models/bridge_fiat_virtual_account_request.rbi +9 -1
  121. data/rbi/privy/models/bridge_fiat_virtual_account_response.rbi +2 -0
  122. data/rbi/privy/models/bridge_fiat_virtual_account_source.rbi +6 -1
  123. data/rbi/privy/models/bridge_sandbox_fiat_virtual_account_request.rbi +9 -1
  124. data/rbi/privy/models/bridge_sandbox_fiat_virtual_account_response.rbi +2 -0
  125. data/rbi/privy/models/bridge_source_asset.rbi +1 -0
  126. data/rbi/privy/models/create_link_auth_intent_input.rbi +27 -0
  127. data/rbi/privy/models/create_link_auth_intent_response.rbi +68 -0
  128. data/rbi/privy/models/create_stripe_onramp_session_input.rbi +55 -0
  129. data/rbi/privy/models/create_stripe_onramp_session_response.rbi +88 -0
  130. data/rbi/privy/models/device_authorization_response.rbi +81 -0
  131. data/rbi/privy/models/device_verify_action.rbi +22 -0
  132. data/rbi/privy/models/device_verify_request_body.rbi +44 -0
  133. data/rbi/privy/models/device_verify_response.rbi +28 -0
  134. data/rbi/privy/models/earn_incentive_reward_entry.rbi +73 -0
  135. data/rbi/privy/models/earn_incentive_rewards_query.rbi +28 -0
  136. data/rbi/privy/models/earn_incentive_rewards_response.rbi +35 -0
  137. data/rbi/privy/models/evm_address.rbi +7 -0
  138. data/rbi/privy/models/evm_checksum_address.rbi +7 -0
  139. data/rbi/privy/models/exchange_stripe_tokens_input.rbi +33 -0
  140. data/rbi/privy/models/exchange_stripe_tokens_response.rbi +24 -0
  141. data/rbi/privy/models/fiat_onramp_provider.rbi +3 -0
  142. data/rbi/privy/models/fiat_onramp_stripe_sdk_session_response.rbi +78 -0
  143. data/rbi/privy/models/fiat_onramp_url_session_response.rbi +65 -0
  144. data/rbi/privy/models/gas.rbi +46 -0
  145. data/rbi/privy/models/get_fiat_onramp_url_response.rbi +12 -15
  146. data/rbi/privy/models/get_stripe_crypto_customer_response.rbi +81 -0
  147. data/rbi/privy/models/hyperliquid_token_address.rbi +7 -0
  148. data/rbi/privy/models/kraken_embed_custom_order_cancelled_webhook_payload.rbi +111 -0
  149. data/rbi/privy/models/kraken_embed_custom_order_executed_webhook_payload.rbi +101 -0
  150. data/rbi/privy/models/kraken_embed_custom_order_execution_failed_webhook_payload.rbi +111 -0
  151. data/rbi/privy/models/link_auth_intent_created.rbi +60 -0
  152. data/rbi/privy/models/link_auth_intent_no_account.rbi +54 -0
  153. data/rbi/privy/models/linked_account_embedded_wallet.rbi +1 -0
  154. data/rbi/privy/models/list_stripe_consumer_wallets_response.rbi +31 -0
  155. data/rbi/privy/models/list_stripe_payment_tokens_response.rbi +31 -0
  156. data/rbi/privy/models/oauth_grant.rbi +78 -0
  157. data/rbi/privy/models/oauth_grant_list_response.rbi +32 -0
  158. data/rbi/privy/models/oauth_grant_revoke_response.rbi +58 -0
  159. data/rbi/privy/models/oauth_token_authorization_code_request_body.rbi +115 -0
  160. data/rbi/privy/models/oauth_token_device_code_pending_error.rbi +106 -0
  161. data/rbi/privy/models/oauth_token_device_code_request_body.rbi +78 -0
  162. data/rbi/privy/models/oauth_token_grant_type.rbi +29 -0
  163. data/rbi/privy/models/oauth_token_refresh_token_request_body.rbi +78 -0
  164. data/rbi/privy/models/oauth_token_request_body.rbi +23 -0
  165. data/rbi/privy/models/oauth_token_success_response.rbi +95 -0
  166. data/rbi/privy/models/onramp_session_fees.rbi +39 -0
  167. data/rbi/privy/models/onramp_session_params.rbi +76 -0
  168. data/rbi/privy/models/onramp_session_transaction_details.rbi +95 -0
  169. data/rbi/privy/models/refresh_stripe_quote_response.rbi +33 -0
  170. data/rbi/privy/models/rule_delete_intent_response.rbi +113 -0
  171. data/rbi/privy/models/rule_mutate_intent_response.rbi +113 -0
  172. data/rbi/privy/models/solana_address.rbi +7 -0
  173. data/rbi/privy/models/stripe_consumer_wallet.rbi +38 -0
  174. data/rbi/privy/models/stripe_crypto_customer_active.rbi +68 -0
  175. data/rbi/privy/models/stripe_crypto_customer_expired.rbi +63 -0
  176. data/rbi/privy/models/stripe_crypto_customer_none.rbi +53 -0
  177. data/rbi/privy/models/stripe_onramp_checkout_response.rbi +51 -0
  178. data/rbi/privy/models/stripe_onramp_session_status.rbi +26 -0
  179. data/rbi/privy/models/stripe_payment_token.rbi +27 -0
  180. data/rbi/privy/models/stripe_quote.rbi +22 -0
  181. data/rbi/privy/models/stripe_transaction_details.rbi +24 -0
  182. data/rbi/privy/models/stripe_verification.rbi +27 -0
  183. data/rbi/privy/models/swap_action_response.rbi +96 -22
  184. data/rbi/privy/models/swap_destination.rbi +26 -7
  185. data/rbi/privy/models/swap_quote_destination.rbi +30 -7
  186. data/rbi/privy/models/swap_quote_request_body.rbi +15 -4
  187. data/rbi/privy/models/swap_quote_response.rbi +71 -5
  188. data/rbi/privy/models/swap_request_body.rbi +15 -4
  189. data/rbi/privy/models/token_transfer_destination.rbi +2 -2
  190. data/rbi/privy/models/transfer_action_response.rbi +57 -2
  191. data/rbi/privy/models/transfer_quote_request_body.rbi +4 -2
  192. data/rbi/privy/models/transfer_quote_response.rbi +16 -3
  193. data/rbi/privy/models/transfer_received_transaction_detail.rbi +15 -0
  194. data/rbi/privy/models/transfer_request_body.rbi +4 -2
  195. data/rbi/privy/models/transfer_sent_transaction_detail.rbi +15 -0
  196. data/rbi/privy/models/tron_address.rbi +7 -0
  197. data/rbi/privy/models/wallet_asset.rbi +1 -0
  198. data/rbi/privy/models/wallet_batch_create_response.rbi +2 -19
  199. data/rbi/privy/models/wallet_batch_create_result.rbi +4 -4
  200. data/rbi/privy/models/wallet_create_batch_params.rbi +27 -0
  201. data/rbi/privy/models/wallet_ethereum_asset.rbi +1 -0
  202. data/rbi/privy/models/wallets/balance_get_params.rbi +22 -0
  203. data/rbi/privy/models/wallets/balance_get_response.rbi +15 -0
  204. data/rbi/privy/models/wallets/swap_execute_params.rbi +71 -0
  205. data/rbi/privy/models/wallets/swap_quote_params.rbi +58 -0
  206. data/rbi/privy/models/wallets/transaction_get_params.rbi +5 -0
  207. data/rbi/privy/models.rbi +127 -5
  208. data/rbi/privy/resources/intents.rbi +7 -4
  209. data/rbi/privy/resources/oauth.rbi +12 -0
  210. data/rbi/privy/resources/onramps.rbi +12 -0
  211. data/rbi/privy/resources/wallets/swap.rbi +94 -0
  212. data/rbi/privy/resources/wallets.rbi +28 -3
  213. data/sig/privy/client.rbs +5 -1
  214. data/sig/privy/models/analytics_event_input.rbs +4 -6
  215. data/sig/privy/models/bitcoin_address.rbs +5 -0
  216. data/sig/privy/models/create_link_auth_intent_input.rbs +15 -0
  217. data/sig/privy/models/create_link_auth_intent_response.rbs +26 -0
  218. data/sig/privy/models/create_stripe_onramp_session_input.rbs +30 -0
  219. data/sig/privy/models/create_stripe_onramp_session_response.rbs +42 -0
  220. data/sig/privy/models/device_authorization_response.rbs +45 -0
  221. data/sig/privy/models/device_verify_action.rbs +14 -0
  222. data/sig/privy/models/device_verify_request_body.rbs +22 -0
  223. data/sig/privy/models/device_verify_response.rbs +13 -0
  224. data/sig/privy/models/earn_incentive_reward_entry.rbs +42 -0
  225. data/sig/privy/models/earn_incentive_rewards_query.rbs +13 -0
  226. data/sig/privy/models/earn_incentive_rewards_response.rbs +16 -0
  227. data/sig/privy/models/evm_address.rbs +5 -0
  228. data/sig/privy/models/evm_checksum_address.rbs +5 -0
  229. data/sig/privy/models/exchange_stripe_tokens_input.rbs +19 -0
  230. data/sig/privy/models/exchange_stripe_tokens_response.rbs +13 -0
  231. data/sig/privy/models/fiat_onramp_provider.rbs +4 -0
  232. data/sig/privy/models/fiat_onramp_stripe_sdk_session_response.rbs +45 -0
  233. data/sig/privy/models/fiat_onramp_url_session_response.rbs +40 -0
  234. data/sig/privy/models/gas.rbs +21 -0
  235. data/sig/privy/models/get_fiat_onramp_url_response.rbs +6 -8
  236. data/sig/privy/models/get_stripe_crypto_customer_response.rbs +29 -0
  237. data/sig/privy/models/hyperliquid_token_address.rbs +5 -0
  238. data/sig/privy/models/kraken_embed_custom_order_cancelled_webhook_payload.rbs +50 -0
  239. data/sig/privy/models/kraken_embed_custom_order_executed_webhook_payload.rbs +45 -0
  240. data/sig/privy/models/kraken_embed_custom_order_execution_failed_webhook_payload.rbs +50 -0
  241. data/sig/privy/models/link_auth_intent_created.rbs +32 -0
  242. data/sig/privy/models/link_auth_intent_no_account.rbs +26 -0
  243. data/sig/privy/models/list_stripe_consumer_wallets_response.rbs +14 -0
  244. data/sig/privy/models/list_stripe_payment_tokens_response.rbs +14 -0
  245. data/sig/privy/models/oauth_grant.rbs +45 -0
  246. data/sig/privy/models/oauth_grant_list_response.rbs +13 -0
  247. data/sig/privy/models/oauth_grant_revoke_response.rbs +28 -0
  248. data/sig/privy/models/oauth_token_authorization_code_request_body.rbs +56 -0
  249. data/sig/privy/models/oauth_token_device_code_pending_error.rbs +48 -0
  250. data/sig/privy/models/oauth_token_device_code_request_body.rbs +35 -0
  251. data/sig/privy/models/oauth_token_grant_type.rbs +18 -0
  252. data/sig/privy/models/oauth_token_refresh_token_request_body.rbs +35 -0
  253. data/sig/privy/models/oauth_token_request_body.rbs +14 -0
  254. data/sig/privy/models/oauth_token_success_response.rbs +49 -0
  255. data/sig/privy/models/onramp_session_fees.rbs +22 -0
  256. data/sig/privy/models/onramp_session_params.rbs +50 -0
  257. data/sig/privy/models/onramp_session_transaction_details.rbs +53 -0
  258. data/sig/privy/models/refresh_stripe_quote_response.rbs +13 -0
  259. data/sig/privy/models/rule_delete_intent_response.rbs +66 -0
  260. data/sig/privy/models/rule_mutate_intent_response.rbs +66 -0
  261. data/sig/privy/models/solana_address.rbs +5 -0
  262. data/sig/privy/models/stripe_consumer_wallet.rbs +22 -0
  263. data/sig/privy/models/stripe_crypto_customer_active.rbs +40 -0
  264. data/sig/privy/models/stripe_crypto_customer_expired.rbs +35 -0
  265. data/sig/privy/models/stripe_crypto_customer_none.rbs +28 -0
  266. data/sig/privy/models/stripe_onramp_checkout_response.rbs +29 -0
  267. data/sig/privy/models/stripe_onramp_session_status.rbs +15 -0
  268. data/sig/privy/models/stripe_payment_token.rbs +15 -0
  269. data/sig/privy/models/stripe_quote.rbs +13 -0
  270. data/sig/privy/models/stripe_transaction_details.rbs +13 -0
  271. data/sig/privy/models/stripe_verification.rbs +15 -0
  272. data/sig/privy/models/swap_action_response.rbs +39 -0
  273. data/sig/privy/models/swap_destination.rbs +16 -3
  274. data/sig/privy/models/swap_quote_destination.rbs +16 -3
  275. data/sig/privy/models/swap_quote_request_body.rbs +14 -5
  276. data/sig/privy/models/swap_quote_response.rbs +33 -3
  277. data/sig/privy/models/swap_request_body.rbs +14 -5
  278. data/sig/privy/models/transfer_action_response.rbs +23 -0
  279. data/sig/privy/models/transfer_quote_response.rbs +10 -3
  280. data/sig/privy/models/transfer_received_transaction_detail.rbs +15 -1
  281. data/sig/privy/models/transfer_sent_transaction_detail.rbs +15 -1
  282. data/sig/privy/models/tron_address.rbs +5 -0
  283. data/sig/privy/models/wallet_asset.rbs +2 -1
  284. data/sig/privy/models/wallet_create_batch_params.rbs +15 -0
  285. data/sig/privy/models/wallet_ethereum_asset.rbs +2 -1
  286. data/sig/privy/models/wallets/balance_get_params.rbs +10 -0
  287. data/sig/privy/models/wallets/balance_get_response.rbs +6 -0
  288. data/sig/privy/models/wallets/swap_execute_params.rbs +44 -0
  289. data/sig/privy/models/wallets/swap_quote_params.rbs +34 -0
  290. data/sig/privy/models/wallets/transaction_get_params.rbs +2 -0
  291. data/sig/privy/models.rbs +115 -5
  292. data/sig/privy/resources/intents.rbs +3 -3
  293. data/sig/privy/resources/oauth.rbs +7 -0
  294. data/sig/privy/resources/onramps.rbs +7 -0
  295. data/sig/privy/resources/wallets/swap.rbs +34 -0
  296. data/sig/privy/resources/wallets.rbs +7 -0
  297. metadata +194 -8
  298. data/lib/privy/models/gas_sponsorship_configuration.rb +0 -29
  299. data/lib/privy/models/gas_sponsorship_configuration_input.rb +0 -29
  300. data/rbi/privy/models/gas_sponsorship_configuration.rbi +0 -48
  301. data/rbi/privy/models/gas_sponsorship_configuration_input.rbi +0 -60
  302. data/sig/privy/models/gas_sponsorship_configuration.rbs +0 -30
  303. data/sig/privy/models/gas_sponsorship_configuration_input.rbs +0 -36
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 51e25ac71d2aa91eb15e1f25786474dab96e24a923c19aba56ddc8e4eafd30aa
4
- data.tar.gz: f6adf206cd6d68890b264536771bde67ab3b4e713a7427a69e0ace6c930ce2f9
3
+ metadata.gz: '084a5766c69229fc0513f76be1dfcfa93c88b440b257ae3627ec99b02d86add9'
4
+ data.tar.gz: 3f2a1597ecd5f94da344fb7186fe9b5933ffd09a4cc80775e42c3f8a85366bf5
5
5
  SHA512:
6
- metadata.gz: 9363c7b9cc66d84ba4daa2060d2316eca42a728f2ebe05b0cae6fc2447d4b8c64e651bc754da42443d161d5007e9a4165445450e527b674d1fd28895351c87d4
7
- data.tar.gz: db7de0267ee175d3f5adc0792cd71dbbce20057322b2a695f9f2391ac7fada81817df8ea9cf2b2d59b3e58af96f4a168dbe038edeefb67ba5271440b7df9a044
6
+ metadata.gz: bb46a564adc43b1a0f2027f2ec18d6bac81caf465027ec4094beaacd0b52f0b38459ac2fc569bbf917a35bf3ba7d8631aa9fa0fb0f6dd54e049e941a6ba03872
7
+ data.tar.gz: 3fe7e9539f2c0a495f20af158b2d3ab314c13ebdef98f3ad12266f00cca040b76d884a2d87de241cd958d41eeb1c620b3f12c8a8f081ae65a83d2619ac9b6cd3
data/CHANGELOG.md CHANGED
@@ -1,5 +1,39 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.2.0 (2026-06-05)
4
+
5
+ Full Changelog: [v0.1.0...v0.2.0](https://github.com/privy-io/ruby-sdk/compare/v0.1.0...v0.2.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([28c0f44](https://github.com/privy-io/ruby-sdk/commit/28c0f443e0bf9844b899845f2d2974c613fc0866))
10
+ * **api:** api update ([5ef4349](https://github.com/privy-io/ruby-sdk/commit/5ef4349cc57bc7d8438eb0645f24a5befd532710))
11
+ * **api:** api update ([263594f](https://github.com/privy-io/ruby-sdk/commit/263594fb816a62e0f5bd91c3e15a311161fdacbe))
12
+ * **api:** api update ([ec23c50](https://github.com/privy-io/ruby-sdk/commit/ec23c50b5b2be99a30e3fecb60a611186620b257))
13
+ * **api:** api update ([4b9daed](https://github.com/privy-io/ruby-sdk/commit/4b9daed0e62564e63a4629fc5cb0b1ea3406558e))
14
+ * **api:** api update ([cead6ea](https://github.com/privy-io/ruby-sdk/commit/cead6eaa5b7f14ea4d53cb57031df82a604960f9))
15
+
16
+ ## 0.1.0 (2026-06-01)
17
+
18
+ Full Changelog: [v0.0.2...v0.1.0](https://github.com/privy-io/ruby-sdk/compare/v0.0.2...v0.1.0)
19
+
20
+ ### Features
21
+
22
+ * **api:** api update ([c3f99bb](https://github.com/privy-io/ruby-sdk/commit/c3f99bb1fb234e765d8916413ea41291159fbc2d))
23
+ * **api:** api update ([5394738](https://github.com/privy-io/ruby-sdk/commit/539473886ed5be1af9f03caf7e132471563a6596))
24
+ * **api:** api update ([c6f6a31](https://github.com/privy-io/ruby-sdk/commit/c6f6a31171dc2f12fb990fd11084eaff3a658a42))
25
+ * **api:** api update ([124a1eb](https://github.com/privy-io/ruby-sdk/commit/124a1eb8d4b60bbf215ce6d7c44eba7df4066e25))
26
+ * **api:** api update ([54ac7a9](https://github.com/privy-io/ruby-sdk/commit/54ac7a985a01f4205b670f0dc3b627ac6c0cd214))
27
+ * **api:** api update ([47b8c13](https://github.com/privy-io/ruby-sdk/commit/47b8c13516892c9d1138fd7e890c00dbe78b0210))
28
+ * transaction.get ([#55](https://github.com/privy-io/ruby-sdk/issues/55)) ([d0623c4](https://github.com/privy-io/ruby-sdk/commit/d0623c43e75f362e50c545580fba9b4182d9d553))
29
+ * wallet actions earn ([#53](https://github.com/privy-io/ruby-sdk/issues/53)) ([96b1d76](https://github.com/privy-io/ruby-sdk/commit/96b1d76a440936e64d18785033aec72aa3a921e1))
30
+ * wallet export and import ([#50](https://github.com/privy-io/ruby-sdk/issues/50)) ([2f9e563](https://github.com/privy-io/ruby-sdk/commit/2f9e56383d46ab9bfc0baed95036ff5bb1f81c18))
31
+
32
+
33
+ ### Chores
34
+
35
+ * formatting ([#54](https://github.com/privy-io/ruby-sdk/issues/54)) ([58658ee](https://github.com/privy-io/ruby-sdk/commit/58658ee0a4a7c5bacf0a3ebef78f22fc8d2171be))
36
+
3
37
  ## 0.0.2 (2026-05-21)
4
38
 
5
39
  Full Changelog: [v0.0.1...v0.0.2](https://github.com/privy-io/ruby-sdk/compare/v0.0.1...v0.0.2)
data/README.md CHANGED
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
17
17
  <!-- x-release-please-start-version -->
18
18
 
19
19
  ```ruby
20
- gem "privy_ruby", "~> 0.0.2"
20
+ gem "privy_ruby", "~> 0.2.0"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Base58
5
+ ALPHABET = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"
6
+ INDEX = ALPHABET.chars.each_with_index.to_h.freeze
7
+
8
+ module_function
9
+
10
+ def encode(bytes)
11
+ integer = bytes.unpack1("H*").to_i(16)
12
+ encoded = +""
13
+ while integer.positive?
14
+ integer, remainder = integer.divmod(58)
15
+ encoded.prepend(ALPHABET[remainder])
16
+ end
17
+
18
+ leading_zeroes = bytes.bytes.take_while(&:zero?).length
19
+ ("1" * leading_zeroes) + encoded
20
+ end
21
+
22
+ def decode(value)
23
+ integer = 0
24
+ value.each_char do |char|
25
+ digit = INDEX[char]
26
+ raise ArgumentError, "invalid base58 character: #{char.inspect}" if digit.nil?
27
+
28
+ integer = (integer * 58) + digit
29
+ end
30
+
31
+ bytes = []
32
+ while integer.positive?
33
+ bytes.unshift(integer & 0xff)
34
+ integer >>= 8
35
+ end
36
+
37
+ leading_zeroes = value.each_char.take_while { |char| char == "1" }.length
38
+ ("\x00".b * leading_zeroes) + bytes.pack("C*")
39
+ end
40
+ end
41
+ end
data/lib/privy/client.rb CHANGED
@@ -47,6 +47,7 @@ module Privy
47
47
  # @return [Privy::Resources::KeyQuorums]
48
48
  attr_reader :key_quorums
49
49
 
50
+ # Operations related to authorization intents for wallet actions
50
51
  # @return [Privy::Resources::Intents]
51
52
  attr_reader :intents
52
53
 
@@ -72,6 +73,12 @@ module Privy
72
73
  # @return [Privy::Resources::ClientAuth]
73
74
  attr_reader :client_auth
74
75
 
76
+ # @return [Privy::Resources::Shared]
77
+ attr_reader :shared
78
+
79
+ # @return [Privy::Resources::Onramps]
80
+ attr_reader :onramps
81
+
75
82
  # @return [Privy::Resources::Funding]
76
83
  attr_reader :funding
77
84
 
@@ -81,8 +88,8 @@ module Privy
81
88
  # @return [Privy::Resources::CrossApp]
82
89
  attr_reader :cross_app
83
90
 
84
- # @return [Privy::Resources::Shared]
85
- attr_reader :shared
91
+ # @return [Privy::Resources::OAuth]
92
+ attr_reader :oauth
86
93
 
87
94
  # @return [Privy::Resources::WalletActions]
88
95
  attr_reader :wallet_actions
@@ -190,10 +197,12 @@ module Privy
190
197
  @embedded_wallets = Privy::Resources::EmbeddedWallets.new(client: self)
191
198
  @analytics = Privy::Resources::Analytics.new(client: self)
192
199
  @client_auth = Privy::Resources::ClientAuth.new(client: self)
200
+ @shared = Privy::Resources::Shared.new(client: self)
201
+ @onramps = Privy::Resources::Onramps.new(client: self)
193
202
  @funding = Privy::Resources::Funding.new(client: self)
194
203
  @organizations = Privy::Resources::Organizations.new(client: self)
195
204
  @cross_app = Privy::Resources::CrossApp.new(client: self)
196
- @shared = Privy::Resources::Shared.new(client: self)
205
+ @oauth = Privy::Resources::OAuth.new(client: self)
197
206
  @wallet_actions = Privy::Resources::WalletActions.new(client: self)
198
207
  @yield_ = Privy::Resources::Yield.new(client: self)
199
208
  @kraken_embed = Privy::Resources::KrakenEmbed.new(client: self)
@@ -48,5 +48,39 @@ module Privy
48
48
  OpenSSL::PKey.read(@public_key_spki)
49
49
  end
50
50
  end
51
+
52
+ HpkeEncryptedPayload = Data.define(:encapsulated_key, :ciphertext)
53
+
54
+ class HpkeSender
55
+ def initialize
56
+ @hpke = HPKE.new(HPKE::DHKEM_P256_HKDF_SHA256, HPKE::HKDF_SHA256, HPKE::CHACHA20_POLY1305)
57
+ end
58
+
59
+ # Encrypts a payload for a recipient using HPKE base mode.
60
+ #
61
+ # @param public_key_spki [String] Raw DER bytes of the recipient's SPKI-encoded public key,
62
+ # or a raw uncompressed P-256 public key point.
63
+ # @param payload [String] Raw plaintext bytes
64
+ # @return [Privy::Cryptography::HpkeEncryptedPayload]
65
+ def encrypt(public_key_spki, payload)
66
+ recipient_public_key = OpenSSL::PKey.read(normalize_public_key_spki(public_key_spki))
67
+ encrypted = @hpke.setup_base_s(recipient_public_key, "")
68
+ ciphertext = encrypted.fetch(:context_s).seal("", payload)
69
+
70
+ HpkeEncryptedPayload.new(encapsulated_key: encrypted.fetch(:enc), ciphertext: ciphertext)
71
+ end
72
+
73
+ private
74
+
75
+ def normalize_public_key_spki(public_key)
76
+ return p256_uncompressed_point_to_spki(public_key) if public_key.bytesize == 65 && public_key.getbyte(0) == 0x04
77
+
78
+ public_key
79
+ end
80
+
81
+ def p256_uncompressed_point_to_spki(public_key)
82
+ ["3059301306072a8648ce3d020106082a8648ce3d030107034200"].pack("H*") + public_key
83
+ end
84
+ end
51
85
  end
52
86
  end
@@ -11,7 +11,7 @@ module Privy
11
11
  # @!attribute client_id
12
12
  #
13
13
  # @return [String, nil]
14
- optional :client_id, String
14
+ optional :client_id, String, nil?: true
15
15
 
16
16
  # @!attribute payload
17
17
  #
@@ -22,7 +22,7 @@ module Privy
22
22
  # The input for capturing an analytics event.
23
23
  #
24
24
  # @param event_name [String]
25
- # @param client_id [String]
25
+ # @param client_id [String, nil]
26
26
  # @param payload [Hash{Symbol=>Object}]
27
27
  end
28
28
  end
@@ -0,0 +1,7 @@
1
+ # frozen_string_literal: true
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
 
@@ -9,6 +9,7 @@ module Privy
9
9
  required :address, String
10
10
 
11
11
  # @!attribute asset
12
+ # Supported destination stablecoin assets for fiat-to-crypto transfers.
12
13
  #
13
14
  # @return [Symbol, Privy::Models::BridgeDestinationAsset]
14
15
  required :asset, enum: -> { Privy::BridgeDestinationAsset }
@@ -19,8 +20,12 @@ module Privy
19
20
  required :chain, String
20
21
 
21
22
  # @!method initialize(address:, asset:, chain:)
23
+ # The destination chain, asset, and address for a virtual account transfer.
24
+ #
22
25
  # @param address [String]
23
- # @param asset [Symbol, Privy::Models::BridgeDestinationAsset]
26
+ #
27
+ # @param asset [Symbol, Privy::Models::BridgeDestinationAsset] Supported destination stablecoin assets for fiat-to-crypto transfers.
28
+ #
24
29
  # @param chain [String]
25
30
  end
26
31
  end
@@ -4,6 +4,7 @@ module Privy
4
4
  module Models
5
5
  class BridgeFiatVirtualAccountRequest < Privy::Internal::Type::BaseModel
6
6
  # @!attribute destination
7
+ # The destination chain, asset, and address for a virtual account transfer.
7
8
  #
8
9
  # @return [Privy::Models::BridgeFiatVirtualAccountDestination]
9
10
  required :destination, -> { Privy::BridgeFiatVirtualAccountDestination }
@@ -14,6 +15,7 @@ module Privy
14
15
  required :provider, enum: -> { Privy::BridgeFiatVirtualAccountRequest::Provider }
15
16
 
16
17
  # @!attribute source
18
+ # The source fiat currency configuration for a virtual account.
17
19
  #
18
20
  # @return [Privy::Models::BridgeFiatVirtualAccountSource]
19
21
  required :source, -> { Privy::BridgeFiatVirtualAccountSource }
@@ -21,9 +23,11 @@ module Privy
21
23
  # @!method initialize(destination:, provider:, source:)
22
24
  # The request input for creating virtual account.
23
25
  #
24
- # @param destination [Privy::Models::BridgeFiatVirtualAccountDestination]
26
+ # @param destination [Privy::Models::BridgeFiatVirtualAccountDestination] The destination chain, asset, and address for a virtual account transfer.
27
+ #
25
28
  # @param provider [Symbol, Privy::Models::BridgeFiatVirtualAccountRequest::Provider]
26
- # @param source [Privy::Models::BridgeFiatVirtualAccountSource]
29
+ #
30
+ # @param source [Privy::Models::BridgeFiatVirtualAccountSource] The source fiat currency configuration for a virtual account.
27
31
 
28
32
  # @see Privy::Models::BridgeFiatVirtualAccountRequest#provider
29
33
  module Provider
@@ -10,6 +10,7 @@ module Privy
10
10
  required :deposit_instructions, union: -> { Privy::BridgeFiatVirtualAccountDepositInstructions }
11
11
 
12
12
  # @!attribute destination
13
+ # The destination chain, asset, and address for a virtual account transfer.
13
14
  #
14
15
  # @return [Privy::Models::BridgeFiatVirtualAccountDestination]
15
16
  required :destination, -> { Privy::BridgeFiatVirtualAccountDestination }
@@ -29,7 +30,7 @@ module Privy
29
30
  #
30
31
  # @param deposit_instructions [Privy::Models::BridgeUsdFiatVirtualAccountDepositInstructions, Privy::Models::BridgeEurFiatVirtualAccountDepositInstructions, Privy::Models::BridgeMxnFiatVirtualAccountDepositInstructions, Privy::Models::BridgeBrlFiatVirtualAccountDepositInstructions, Privy::Models::BridgeGbpFiatVirtualAccountDepositInstructions] The deposit instructions for a virtual account.
31
32
  #
32
- # @param destination [Privy::Models::BridgeFiatVirtualAccountDestination]
33
+ # @param destination [Privy::Models::BridgeFiatVirtualAccountDestination] The destination chain, asset, and address for a virtual account transfer.
33
34
  #
34
35
  # @param provider [Symbol, Privy::Models::BridgeFiatVirtualAccountResponse::Provider]
35
36
  #
@@ -4,12 +4,15 @@ module Privy
4
4
  module Models
5
5
  class BridgeFiatVirtualAccountSource < Privy::Internal::Type::BaseModel
6
6
  # @!attribute asset
7
+ # Supported source fiat currencies for virtual account deposits.
7
8
  #
8
9
  # @return [Symbol, Privy::Models::BridgeSourceAsset]
9
10
  required :asset, enum: -> { Privy::BridgeSourceAsset }
10
11
 
11
12
  # @!method initialize(asset:)
12
- # @param asset [Symbol, Privy::Models::BridgeSourceAsset]
13
+ # The source fiat currency configuration for a virtual account.
14
+ #
15
+ # @param asset [Symbol, Privy::Models::BridgeSourceAsset] Supported source fiat currencies for virtual account deposits.
13
16
  end
14
17
  end
15
18
  end
@@ -4,6 +4,7 @@ module Privy
4
4
  module Models
5
5
  class BridgeSandboxFiatVirtualAccountRequest < Privy::Internal::Type::BaseModel
6
6
  # @!attribute destination
7
+ # The destination chain, asset, and address for a virtual account transfer.
7
8
  #
8
9
  # @return [Privy::Models::BridgeFiatVirtualAccountDestination]
9
10
  required :destination, -> { Privy::BridgeFiatVirtualAccountDestination }
@@ -14,6 +15,7 @@ module Privy
14
15
  required :provider, enum: -> { Privy::BridgeSandboxFiatVirtualAccountRequest::Provider }
15
16
 
16
17
  # @!attribute source
18
+ # The source fiat currency configuration for a virtual account.
17
19
  #
18
20
  # @return [Privy::Models::BridgeFiatVirtualAccountSource]
19
21
  required :source, -> { Privy::BridgeFiatVirtualAccountSource }
@@ -21,9 +23,11 @@ module Privy
21
23
  # @!method initialize(destination:, provider:, source:)
22
24
  # The request input for creating virtual account.
23
25
  #
24
- # @param destination [Privy::Models::BridgeFiatVirtualAccountDestination]
26
+ # @param destination [Privy::Models::BridgeFiatVirtualAccountDestination] The destination chain, asset, and address for a virtual account transfer.
27
+ #
25
28
  # @param provider [Symbol, Privy::Models::BridgeSandboxFiatVirtualAccountRequest::Provider]
26
- # @param source [Privy::Models::BridgeFiatVirtualAccountSource]
29
+ #
30
+ # @param source [Privy::Models::BridgeFiatVirtualAccountSource] The source fiat currency configuration for a virtual account.
27
31
 
28
32
  # @see Privy::Models::BridgeSandboxFiatVirtualAccountRequest#provider
29
33
  module Provider
@@ -10,6 +10,7 @@ module Privy
10
10
  required :deposit_instructions, union: -> { Privy::BridgeFiatVirtualAccountDepositInstructions }
11
11
 
12
12
  # @!attribute destination
13
+ # The destination chain, asset, and address for a virtual account transfer.
13
14
  #
14
15
  # @return [Privy::Models::BridgeFiatVirtualAccountDestination]
15
16
  required :destination, -> { Privy::BridgeFiatVirtualAccountDestination }
@@ -29,7 +30,7 @@ module Privy
29
30
  #
30
31
  # @param deposit_instructions [Privy::Models::BridgeUsdFiatVirtualAccountDepositInstructions, Privy::Models::BridgeEurFiatVirtualAccountDepositInstructions, Privy::Models::BridgeMxnFiatVirtualAccountDepositInstructions, Privy::Models::BridgeBrlFiatVirtualAccountDepositInstructions, Privy::Models::BridgeGbpFiatVirtualAccountDepositInstructions] The deposit instructions for a virtual account.
31
32
  #
32
- # @param destination [Privy::Models::BridgeFiatVirtualAccountDestination]
33
+ # @param destination [Privy::Models::BridgeFiatVirtualAccountDestination] The destination chain, asset, and address for a virtual account transfer.
33
34
  #
34
35
  # @param provider [Symbol, Privy::Models::BridgeSandboxFiatVirtualAccountResponse::Provider]
35
36
  #
@@ -2,6 +2,7 @@
2
2
 
3
3
  module Privy
4
4
  module Models
5
+ # Supported source fiat currencies for virtual account deposits.
5
6
  module BridgeSourceAsset
6
7
  extend Privy::Internal::Type::Enum
7
8
 
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ class CreateLinkAuthIntentInput < Privy::Internal::Type::BaseModel
6
+ # @!attribute email
7
+ #
8
+ # @return [String, nil]
9
+ optional :email, String
10
+
11
+ # @!method initialize(email: nil)
12
+ # Input for creating a Link auth intent to initiate Stripe onramp authentication.
13
+ #
14
+ # @param email [String]
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ class CreateLinkAuthIntentResponse < Privy::Internal::Type::BaseModel
6
+ # @!attribute data
7
+ # Auth intent created. Pass id to authenticate().
8
+ #
9
+ # @return [Privy::Models::LinkAuthIntentCreated, Privy::Models::LinkAuthIntentNoAccount]
10
+ required :data, union: -> { Privy::CreateLinkAuthIntentResponse::Data }
11
+
12
+ # @!method initialize(data:)
13
+ # The created Link auth intent.
14
+ #
15
+ # @param data [Privy::Models::LinkAuthIntentCreated, Privy::Models::LinkAuthIntentNoAccount] Auth intent created. Pass id to authenticate().
16
+
17
+ # Auth intent created. Pass id to authenticate().
18
+ #
19
+ # @see Privy::Models::CreateLinkAuthIntentResponse#data
20
+ module Data
21
+ extend Privy::Internal::Type::Union
22
+
23
+ discriminator :status
24
+
25
+ # Auth intent created. Pass id to authenticate().
26
+ variant :created, -> { Privy::LinkAuthIntentCreated }
27
+
28
+ # No Link account for this email. Call registerLinkUser() then retry.
29
+ variant :no_account, -> { Privy::LinkAuthIntentNoAccount }
30
+
31
+ # @!method self.variants
32
+ # @return [Array(Privy::Models::LinkAuthIntentCreated, Privy::Models::LinkAuthIntentNoAccount)]
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,33 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ class CreateStripeOnrampSessionInput < Privy::Internal::Type::BaseModel
6
+ # @!attribute environment
7
+ # Whether to use the sandbox or production environment for fiat onramp.
8
+ #
9
+ # @return [Symbol, Privy::Models::FiatOnrampEnvironment]
10
+ required :environment, enum: -> { Privy::FiatOnrampEnvironment }
11
+
12
+ # @!attribute session
13
+ # Parameters for creating a Stripe onramp session.
14
+ #
15
+ # @return [Privy::Models::OnrampSessionParams]
16
+ required :session, -> { Privy::OnrampSessionParams }
17
+
18
+ # @!attribute session_id
19
+ #
20
+ # @return [String]
21
+ required :session_id, String
22
+
23
+ # @!method initialize(environment:, session:, session_id:)
24
+ # Input for creating a Stripe onramp session.
25
+ #
26
+ # @param environment [Symbol, Privy::Models::FiatOnrampEnvironment] Whether to use the sandbox or production environment for fiat onramp.
27
+ #
28
+ # @param session [Privy::Models::OnrampSessionParams] Parameters for creating a Stripe onramp session.
29
+ #
30
+ # @param session_id [String]
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ class CreateStripeOnrampSessionResponse < Privy::Internal::Type::BaseModel
6
+ # @!attribute id
7
+ #
8
+ # @return [String]
9
+ required :id, String
10
+
11
+ # @!attribute session_id
12
+ #
13
+ # @return [String]
14
+ required :session_id, String
15
+
16
+ # @!attribute transaction_details
17
+ # Transaction details returned from a Stripe onramp session.
18
+ #
19
+ # @return [Privy::Models::CreateStripeOnrampSessionResponse::TransactionDetails, nil]
20
+ optional :transaction_details, -> { Privy::CreateStripeOnrampSessionResponse::TransactionDetails }
21
+
22
+ # @!method initialize(id:, session_id:, transaction_details: nil)
23
+ # The created onramp session.
24
+ #
25
+ # @param id [String]
26
+ #
27
+ # @param session_id [String]
28
+ #
29
+ # @param transaction_details [Privy::Models::CreateStripeOnrampSessionResponse::TransactionDetails] Transaction details returned from a Stripe onramp session.
30
+
31
+ # @see Privy::Models::CreateStripeOnrampSessionResponse#transaction_details
32
+ class TransactionDetails < Privy::Models::OnrampSessionTransactionDetails
33
+ # @!method initialize
34
+ # Transaction details returned from a Stripe onramp session.
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,63 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ class DeviceAuthorizationResponse < Privy::Internal::Type::BaseModel
6
+ # @!attribute device_code
7
+ # A long-lived code used by the device to poll for authorization status.
8
+ #
9
+ # @return [String]
10
+ required :device_code, String
11
+
12
+ # @!attribute expires_in
13
+ # The lifetime in seconds of the device_code and user_code.
14
+ #
15
+ # @return [Integer]
16
+ required :expires_in, Integer
17
+
18
+ # @!attribute interval
19
+ # The minimum number of seconds the device should wait between polling requests.
20
+ #
21
+ # @return [Integer]
22
+ required :interval, Integer
23
+
24
+ # @!attribute user_code
25
+ # A short code displayed to the user, who enters it at the verification URI to
26
+ # authorize the device.
27
+ #
28
+ # @return [String]
29
+ required :user_code, String
30
+
31
+ # @!attribute verification_uri
32
+ # The URI where the user navigates to enter the user_code.
33
+ #
34
+ # @return [String]
35
+ required :verification_uri, String
36
+
37
+ # @!attribute verification_uri_complete
38
+ # The verification URI with the user_code pre-filled as a query parameter.
39
+ #
40
+ # @return [String]
41
+ required :verification_uri_complete, String
42
+
43
+ # @!method initialize(device_code:, expires_in:, interval:, user_code:, verification_uri:, verification_uri_complete:)
44
+ # Some parameter documentations has been truncated, see
45
+ # {Privy::Models::DeviceAuthorizationResponse} for more details.
46
+ #
47
+ # Response from the device authorization endpoint per RFC 8628. Contains codes and
48
+ # URIs for the device flow.
49
+ #
50
+ # @param device_code [String] A long-lived code used by the device to poll for authorization status.
51
+ #
52
+ # @param expires_in [Integer] The lifetime in seconds of the device_code and user_code.
53
+ #
54
+ # @param interval [Integer] The minimum number of seconds the device should wait between polling requests.
55
+ #
56
+ # @param user_code [String] A short code displayed to the user, who enters it at the verification URI to aut
57
+ #
58
+ # @param verification_uri [String] The URI where the user navigates to enter the user_code.
59
+ #
60
+ # @param verification_uri_complete [String] The verification URI with the user_code pre-filled as a query parameter.
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ # The action to take on the device authorization request.
6
+ module DeviceVerifyAction
7
+ extend Privy::Internal::Type::Enum
8
+
9
+ APPROVE = :approve
10
+ DENY = :deny
11
+
12
+ # @!method self.values
13
+ # @return [Array<Symbol>]
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ class DeviceVerifyRequestBody < Privy::Internal::Type::BaseModel
6
+ # @!attribute action
7
+ # The action to take on the device authorization request.
8
+ #
9
+ # @return [Symbol, Privy::Models::DeviceVerifyAction]
10
+ required :action, enum: -> { Privy::DeviceVerifyAction }
11
+
12
+ # @!attribute user_code
13
+ # The user code displayed on the CLI device.
14
+ #
15
+ # @return [String]
16
+ required :user_code, String
17
+
18
+ # @!method initialize(action:, user_code:)
19
+ # Request body for approving or denying a device authorization request. The user
20
+ # must be authenticated and belong to the target app.
21
+ #
22
+ # @param action [Symbol, Privy::Models::DeviceVerifyAction] The action to take on the device authorization request.
23
+ #
24
+ # @param user_code [String] The user code displayed on the CLI device.
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Privy
4
+ module Models
5
+ class DeviceVerifyResponse < Privy::Internal::Type::BaseModel
6
+ # @!attribute success
7
+ # Whether the action was processed successfully.
8
+ #
9
+ # @return [Boolean]
10
+ required :success, Privy::Internal::Type::Boolean
11
+
12
+ # @!method initialize(success:)
13
+ # Response indicating the device authorization action was processed.
14
+ #
15
+ # @param success [Boolean] Whether the action was processed successfully.
16
+ end
17
+ end
18
+ end