weft-sdk 0.6.2 → 0.9.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 (168) hide show
  1. checksums.yaml +4 -4
  2. data/docs/APIKeysApi.md +1 -2
  3. data/docs/AccountApi.md +6 -5
  4. data/docs/AccountDetails.md +10 -13
  5. data/docs/ApiKey.md +0 -1
  6. data/docs/ApiKeyCreated.md +0 -1
  7. data/docs/ApiKeyCreatedResponse.md +0 -1
  8. data/docs/ApiKeyListResponse.md +0 -1
  9. data/docs/AuthApi.md +6 -7
  10. data/docs/AuthResponse.md +0 -1
  11. data/docs/AuthResponseData.md +0 -1
  12. data/docs/BalanceApi.md +1 -2
  13. data/docs/BalanceResponse.md +3 -4
  14. data/docs/ConfirmRequest.md +0 -1
  15. data/docs/CreateApiKeyRequest.md +0 -1
  16. data/docs/DefaultApi.md +0 -1
  17. data/docs/EnrolledResource.md +43 -0
  18. data/docs/Error.md +0 -1
  19. data/docs/ErrorResponse.md +0 -1
  20. data/docs/Fetch403Response.md +48 -0
  21. data/docs/FetchApi.md +10 -7
  22. data/docs/FetchBalanceSnapshot.md +5 -2
  23. data/docs/FetchErrorResponse.md +0 -1
  24. data/docs/FetchRequest.md +0 -1
  25. data/docs/FetchRequestBody.md +0 -1
  26. data/docs/FetchResponse.md +6 -3
  27. data/docs/InsufficientScopeResponse.md +21 -0
  28. data/docs/MeApiKey.md +25 -0
  29. data/docs/MeApiKeyCreator.md +21 -0
  30. data/docs/MeResponse.md +1 -2
  31. data/docs/MeResponseData.md +78 -0
  32. data/docs/Merchant.md +0 -1
  33. data/docs/MessageResponse.md +0 -1
  34. data/docs/MessageResponseData.md +0 -1
  35. data/docs/Pagination.md +0 -1
  36. data/docs/PasswordResetRequest.md +0 -1
  37. data/docs/PasswordUpdateRequest.md +0 -1
  38. data/docs/Payment.md +0 -3
  39. data/docs/PaymentListResponse.md +0 -1
  40. data/docs/PaymentResponse.md +0 -1
  41. data/docs/PaymentsApi.md +0 -1
  42. data/docs/PrincipalWallet.md +19 -0
  43. data/docs/PromoBalance.md +0 -1
  44. data/docs/Purchase.md +43 -0
  45. data/docs/PurchaseArtifact.md +23 -0
  46. data/docs/PurchaseListResponse.md +19 -0
  47. data/docs/PurchaseResponse.md +17 -0
  48. data/docs/PurchasesApi.md +148 -0
  49. data/docs/ResendConfirmationRequest.md +0 -1
  50. data/docs/ResourceEnrollmentRequest.md +23 -0
  51. data/docs/ResourceEnrollmentResponse.md +17 -0
  52. data/docs/ResourceStats.md +29 -0
  53. data/docs/ResourcesApi.md +71 -0
  54. data/docs/SearchApi.md +2 -3
  55. data/docs/SearchCapabilityRef.md +19 -0
  56. data/docs/SearchEndpointCall.md +23 -0
  57. data/docs/SearchEndpointHit.md +41 -0
  58. data/docs/SearchEndpointPrice.md +25 -0
  59. data/docs/SearchErrorResponse.md +0 -1
  60. data/docs/SearchFilterSpec.md +23 -0
  61. data/docs/SearchPaymentOffer.md +31 -0
  62. data/docs/SearchPriceAtomicFilter.md +25 -0
  63. data/docs/SearchPriceUsdFilter.md +25 -0
  64. data/docs/SearchProtocolFilter.md +19 -0
  65. data/docs/SearchProviderRef.md +21 -0
  66. data/docs/SearchRequest.md +3 -4
  67. data/docs/SearchResourceTypeFilter.md +19 -0
  68. data/docs/SearchResponse.md +35 -8
  69. data/docs/SearchResponseWarningsInner.md +23 -0
  70. data/docs/SearchResult.md +8 -21
  71. data/docs/SignInRequest.md +0 -1
  72. data/docs/SignUpRequest.md +0 -1
  73. data/docs/SpendingPolicy.md +0 -1
  74. data/docs/User.md +0 -1
  75. data/docs/UserPrincipal.md +33 -0
  76. data/docs/Wallet.md +5 -2
  77. data/lib/weft/generated/api/account_api.rb +6 -4
  78. data/lib/weft/generated/api/api_keys_api.rb +4 -4
  79. data/lib/weft/generated/api/auth_api.rb +14 -14
  80. data/lib/weft/generated/api/balance_api.rb +4 -4
  81. data/lib/weft/generated/api/default_api.rb +2 -2
  82. data/lib/weft/generated/api/fetch_api.rb +22 -6
  83. data/lib/weft/generated/api/payments_api.rb +2 -2
  84. data/lib/weft/generated/api/purchases_api.rb +150 -0
  85. data/lib/weft/generated/api/resources_api.rb +90 -0
  86. data/lib/weft/generated/api/search_api.rb +6 -6
  87. data/lib/weft/generated/api_client.rb +2 -2
  88. data/lib/weft/generated/api_error.rb +2 -2
  89. data/lib/weft/generated/api_model_base.rb +2 -2
  90. data/lib/weft/generated/configuration.rb +2 -2
  91. data/lib/weft/generated/models/account_details.rb +94 -85
  92. data/lib/weft/generated/models/api_key.rb +2 -2
  93. data/lib/weft/generated/models/api_key_created.rb +2 -2
  94. data/lib/weft/generated/models/api_key_created_response.rb +2 -2
  95. data/lib/weft/generated/models/api_key_list_response.rb +2 -2
  96. data/lib/weft/generated/models/auth_response.rb +2 -2
  97. data/lib/weft/generated/models/auth_response_data.rb +2 -2
  98. data/lib/weft/generated/models/balance_response.rb +5 -5
  99. data/lib/weft/generated/models/confirm_request.rb +2 -2
  100. data/lib/weft/generated/models/create_api_key_request.rb +2 -2
  101. data/lib/weft/generated/models/enrolled_resource.rb +474 -0
  102. data/lib/weft/generated/models/error.rb +3 -3
  103. data/lib/weft/generated/models/error_response.rb +3 -3
  104. data/lib/weft/generated/models/fetch403_response.rb +104 -0
  105. data/lib/weft/generated/models/fetch_balance_snapshot.rb +59 -4
  106. data/lib/weft/generated/models/fetch_error_response.rb +5 -5
  107. data/lib/weft/generated/models/fetch_request.rb +5 -5
  108. data/lib/weft/generated/models/fetch_request_body.rb +2 -2
  109. data/lib/weft/generated/models/fetch_response.rb +85 -7
  110. data/lib/weft/generated/models/insufficient_scope_response.rb +242 -0
  111. data/lib/weft/generated/models/{search_skill.rb → me_api_key.rb} +50 -92
  112. data/lib/weft/generated/models/me_api_key_creator.rb +200 -0
  113. data/lib/weft/generated/models/me_response.rb +3 -3
  114. data/lib/weft/generated/models/me_response_data.rb +55 -0
  115. data/lib/weft/generated/models/merchant.rb +2 -2
  116. data/lib/weft/generated/models/message_response.rb +2 -2
  117. data/lib/weft/generated/models/message_response_data.rb +2 -2
  118. data/lib/weft/generated/models/pagination.rb +2 -2
  119. data/lib/weft/generated/models/password_reset_request.rb +2 -2
  120. data/lib/weft/generated/models/password_update_request.rb +2 -2
  121. data/lib/weft/generated/models/payment.rb +3 -12
  122. data/lib/weft/generated/models/payment_list_response.rb +2 -2
  123. data/lib/weft/generated/models/payment_response.rb +2 -2
  124. data/lib/weft/generated/models/principal_wallet.rb +190 -0
  125. data/lib/weft/generated/models/promo_balance.rb +3 -3
  126. data/lib/weft/generated/models/purchase.rb +427 -0
  127. data/lib/weft/generated/models/purchase_artifact.rb +237 -0
  128. data/lib/weft/generated/models/purchase_list_response.rb +192 -0
  129. data/lib/weft/generated/models/purchase_response.rb +164 -0
  130. data/lib/weft/generated/models/resend_confirmation_request.rb +2 -2
  131. data/lib/weft/generated/models/{search_agent_card.rb → resource_enrollment_request.rb} +59 -75
  132. data/lib/weft/generated/models/resource_enrollment_response.rb +164 -0
  133. data/lib/weft/generated/models/resource_stats.rb +323 -0
  134. data/lib/weft/generated/models/{search_skill_endpoint.rb → search_capability_ref.rb} +18 -19
  135. data/lib/weft/generated/models/search_endpoint_call.rb +179 -0
  136. data/lib/weft/generated/models/search_endpoint_hit.rb +296 -0
  137. data/lib/weft/generated/models/search_endpoint_price.rb +223 -0
  138. data/lib/weft/generated/models/search_error_response.rb +5 -5
  139. data/lib/weft/generated/models/search_filter_spec.rb +175 -0
  140. data/lib/weft/generated/models/{search_pricing.rb → search_payment_offer.rb} +64 -67
  141. data/lib/weft/generated/models/search_price_atomic_filter.rb +284 -0
  142. data/lib/weft/generated/models/search_price_usd_filter.rb +294 -0
  143. data/lib/weft/generated/models/search_protocol_filter.rb +200 -0
  144. data/lib/weft/generated/models/{search_endpoints.rb → search_provider_ref.rb} +26 -36
  145. data/lib/weft/generated/models/search_request.rb +36 -27
  146. data/lib/weft/generated/models/search_resource_type_filter.rb +200 -0
  147. data/lib/weft/generated/models/search_response.rb +366 -30
  148. data/lib/weft/generated/models/search_response_warnings_inner.rb +210 -0
  149. data/lib/weft/generated/models/search_result.rb +68 -220
  150. data/lib/weft/generated/models/sign_in_request.rb +2 -2
  151. data/lib/weft/generated/models/sign_up_request.rb +2 -2
  152. data/lib/weft/generated/models/spending_policy.rb +2 -2
  153. data/lib/weft/generated/models/user.rb +2 -2
  154. data/lib/weft/generated/models/user_principal.rb +370 -0
  155. data/lib/weft/generated/models/wallet.rb +58 -4
  156. data/lib/weft/generated/version.rb +3 -3
  157. data/lib/weft/generated.rb +10 -4
  158. data/lib/weft/sdk.rb +1 -1
  159. metadata +75 -17
  160. data/docs/SearchAgentCard.md +0 -34
  161. data/docs/SearchEndpoints.md +0 -24
  162. data/docs/SearchFilters.md +0 -26
  163. data/docs/SearchPricing.md +0 -24
  164. data/docs/SearchRanking.md +0 -26
  165. data/docs/SearchSkill.md +0 -36
  166. data/docs/SearchSkillEndpoint.md +0 -20
  167. data/lib/weft/generated/models/search_filters.rb +0 -277
  168. data/lib/weft/generated/models/search_ranking.rb +0 -277
@@ -1,277 +0,0 @@
1
- =begin
2
- #Weft API
3
-
4
- #The Weft API is the buyer-runtime surface that powers the `weft` CLI, the hosted MCP server (`weft.network/mcp`), and any third-party agent that wants to discover and pay for paid resources on Weft. v1 covers five buyer concerns: 1. Account onboarding (`/api/v1/auth/*`, `/api/v1/me`) 2. CLI authentication (`/api/v1/api_keys`) 3. Wallet visibility (`/api/v1/balance`) 4. Discovery (`/api/v1/search`) 5. Paid execution (`/api/v1/fetch`) 6. Purchase history (`/api/v1/payments`) Seller-side concerns (agent management, payout analytics, webhook delivery, the public storefront for `data_api` resources) live in the dashboard and are intentionally not documented here. They will be split out into a separate, dashboard-scoped spec when they need to be SDK-consumable. All errors share the envelope defined by `ErrorResponse`, except the buyer-runtime endpoints (`/search`, `/fetch`) which use bespoke envelopes carrying additional context — see `SearchErrorResponse` and `FetchErrorResponse`.
5
-
6
- The version of the OpenAPI document: 0.6.2
7
-
8
- Generated by: https://openapi-generator.tech
9
- Generator version: 7.19.0
10
-
11
- =end
12
-
13
- require 'date'
14
- require 'time'
15
-
16
- module Weft
17
- class SearchRanking < ApiModelBase
18
- attr_accessor :popularity_score
19
-
20
- attr_accessor :settlement_count_30d
21
-
22
- attr_accessor :success_rate_30d
23
-
24
- attr_accessor :p50_latency_ms
25
-
26
- attr_accessor :first_seen_at
27
-
28
- # Attribute mapping from ruby-style variable name to JSON key.
29
- def self.attribute_map
30
- {
31
- :'popularity_score' => :'popularity_score',
32
- :'settlement_count_30d' => :'settlement_count_30d',
33
- :'success_rate_30d' => :'success_rate_30d',
34
- :'p50_latency_ms' => :'p50_latency_ms',
35
- :'first_seen_at' => :'first_seen_at'
36
- }
37
- end
38
-
39
- # Returns attribute mapping this model knows about
40
- def self.acceptable_attribute_map
41
- attribute_map
42
- end
43
-
44
- # Returns all the JSON keys this model knows about
45
- def self.acceptable_attributes
46
- acceptable_attribute_map.values
47
- end
48
-
49
- # Attribute type mapping.
50
- def self.openapi_types
51
- {
52
- :'popularity_score' => :'Float',
53
- :'settlement_count_30d' => :'Integer',
54
- :'success_rate_30d' => :'Float',
55
- :'p50_latency_ms' => :'Integer',
56
- :'first_seen_at' => :'Time'
57
- }
58
- end
59
-
60
- # List of attributes with nullable: true
61
- def self.openapi_nullable
62
- Set.new([
63
- ])
64
- end
65
-
66
- # Initializes the object
67
- # @param [Hash] attributes Model attributes in the form of hash
68
- def initialize(attributes = {})
69
- if (!attributes.is_a?(Hash))
70
- fail ArgumentError, "The input argument (attributes) must be a hash in `Weft::SearchRanking` initialize method"
71
- end
72
-
73
- # check to see if the attribute exists and convert string to symbol for hash key
74
- acceptable_attribute_map = self.class.acceptable_attribute_map
75
- attributes = attributes.each_with_object({}) { |(k, v), h|
76
- if (!acceptable_attribute_map.key?(k.to_sym))
77
- fail ArgumentError, "`#{k}` is not a valid attribute in `Weft::SearchRanking`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
78
- end
79
- h[k.to_sym] = v
80
- }
81
-
82
- if attributes.key?(:'popularity_score')
83
- self.popularity_score = attributes[:'popularity_score']
84
- end
85
-
86
- if attributes.key?(:'settlement_count_30d')
87
- self.settlement_count_30d = attributes[:'settlement_count_30d']
88
- end
89
-
90
- if attributes.key?(:'success_rate_30d')
91
- self.success_rate_30d = attributes[:'success_rate_30d']
92
- end
93
-
94
- if attributes.key?(:'p50_latency_ms')
95
- self.p50_latency_ms = attributes[:'p50_latency_ms']
96
- end
97
-
98
- if attributes.key?(:'first_seen_at')
99
- self.first_seen_at = attributes[:'first_seen_at']
100
- end
101
- end
102
-
103
- # Show invalid properties with the reasons. Usually used together with valid?
104
- # @return Array for valid properties with the reasons
105
- def list_invalid_properties
106
- warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
107
- invalid_properties = Array.new
108
- if !@popularity_score.nil? && @popularity_score > 1
109
- invalid_properties.push('invalid value for "popularity_score", must be smaller than or equal to 1.')
110
- end
111
-
112
- if !@popularity_score.nil? && @popularity_score < 0
113
- invalid_properties.push('invalid value for "popularity_score", must be greater than or equal to 0.')
114
- end
115
-
116
- if !@settlement_count_30d.nil? && @settlement_count_30d < 0
117
- invalid_properties.push('invalid value for "settlement_count_30d", must be greater than or equal to 0.')
118
- end
119
-
120
- if !@success_rate_30d.nil? && @success_rate_30d > 1
121
- invalid_properties.push('invalid value for "success_rate_30d", must be smaller than or equal to 1.')
122
- end
123
-
124
- if !@success_rate_30d.nil? && @success_rate_30d < 0
125
- invalid_properties.push('invalid value for "success_rate_30d", must be greater than or equal to 0.')
126
- end
127
-
128
- if !@p50_latency_ms.nil? && @p50_latency_ms < 0
129
- invalid_properties.push('invalid value for "p50_latency_ms", must be greater than or equal to 0.')
130
- end
131
-
132
- invalid_properties
133
- end
134
-
135
- # Check to see if the all the properties in the model are valid
136
- # @return true if the model is valid
137
- def valid?
138
- warn '[DEPRECATED] the `valid?` method is obsolete'
139
- return false if !@popularity_score.nil? && @popularity_score > 1
140
- return false if !@popularity_score.nil? && @popularity_score < 0
141
- return false if !@settlement_count_30d.nil? && @settlement_count_30d < 0
142
- return false if !@success_rate_30d.nil? && @success_rate_30d > 1
143
- return false if !@success_rate_30d.nil? && @success_rate_30d < 0
144
- return false if !@p50_latency_ms.nil? && @p50_latency_ms < 0
145
- true
146
- end
147
-
148
- # Custom attribute writer method with validation
149
- # @param [Object] popularity_score Value to be assigned
150
- def popularity_score=(popularity_score)
151
- if popularity_score.nil?
152
- fail ArgumentError, 'popularity_score cannot be nil'
153
- end
154
-
155
- if popularity_score > 1
156
- fail ArgumentError, 'invalid value for "popularity_score", must be smaller than or equal to 1.'
157
- end
158
-
159
- if popularity_score < 0
160
- fail ArgumentError, 'invalid value for "popularity_score", must be greater than or equal to 0.'
161
- end
162
-
163
- @popularity_score = popularity_score
164
- end
165
-
166
- # Custom attribute writer method with validation
167
- # @param [Object] settlement_count_30d Value to be assigned
168
- def settlement_count_30d=(settlement_count_30d)
169
- if settlement_count_30d.nil?
170
- fail ArgumentError, 'settlement_count_30d cannot be nil'
171
- end
172
-
173
- if settlement_count_30d < 0
174
- fail ArgumentError, 'invalid value for "settlement_count_30d", must be greater than or equal to 0.'
175
- end
176
-
177
- @settlement_count_30d = settlement_count_30d
178
- end
179
-
180
- # Custom attribute writer method with validation
181
- # @param [Object] success_rate_30d Value to be assigned
182
- def success_rate_30d=(success_rate_30d)
183
- if success_rate_30d.nil?
184
- fail ArgumentError, 'success_rate_30d cannot be nil'
185
- end
186
-
187
- if success_rate_30d > 1
188
- fail ArgumentError, 'invalid value for "success_rate_30d", must be smaller than or equal to 1.'
189
- end
190
-
191
- if success_rate_30d < 0
192
- fail ArgumentError, 'invalid value for "success_rate_30d", must be greater than or equal to 0.'
193
- end
194
-
195
- @success_rate_30d = success_rate_30d
196
- end
197
-
198
- # Custom attribute writer method with validation
199
- # @param [Object] p50_latency_ms Value to be assigned
200
- def p50_latency_ms=(p50_latency_ms)
201
- if p50_latency_ms.nil?
202
- fail ArgumentError, 'p50_latency_ms cannot be nil'
203
- end
204
-
205
- if p50_latency_ms < 0
206
- fail ArgumentError, 'invalid value for "p50_latency_ms", must be greater than or equal to 0.'
207
- end
208
-
209
- @p50_latency_ms = p50_latency_ms
210
- end
211
-
212
- # Checks equality by comparing each attribute.
213
- # @param [Object] Object to be compared
214
- def ==(o)
215
- return true if self.equal?(o)
216
- self.class == o.class &&
217
- popularity_score == o.popularity_score &&
218
- settlement_count_30d == o.settlement_count_30d &&
219
- success_rate_30d == o.success_rate_30d &&
220
- p50_latency_ms == o.p50_latency_ms &&
221
- first_seen_at == o.first_seen_at
222
- end
223
-
224
- # @see the `==` method
225
- # @param [Object] Object to be compared
226
- def eql?(o)
227
- self == o
228
- end
229
-
230
- # Calculates hash code according to all attributes.
231
- # @return [Integer] Hash code
232
- def hash
233
- [popularity_score, settlement_count_30d, success_rate_30d, p50_latency_ms, first_seen_at].hash
234
- end
235
-
236
- # Builds the object from hash
237
- # @param [Hash] attributes Model attributes in the form of hash
238
- # @return [Object] Returns the model itself
239
- def self.build_from_hash(attributes)
240
- return nil unless attributes.is_a?(Hash)
241
- attributes = attributes.transform_keys(&:to_sym)
242
- transformed_hash = {}
243
- openapi_types.each_pair do |key, type|
244
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
245
- transformed_hash["#{key}"] = nil
246
- elsif type =~ /\AArray<(.*)>/i
247
- # check to ensure the input is an array given that the attribute
248
- # is documented as an array but the input is not
249
- if attributes[attribute_map[key]].is_a?(Array)
250
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
251
- end
252
- elsif !attributes[attribute_map[key]].nil?
253
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
254
- end
255
- end
256
- new(transformed_hash)
257
- end
258
-
259
- # Returns the object in the form of hash
260
- # @return [Hash] Returns the object in the form of hash
261
- def to_hash
262
- hash = {}
263
- self.class.attribute_map.each_pair do |attr, param|
264
- value = self.send(attr)
265
- if value.nil?
266
- is_nullable = self.class.openapi_nullable.include?(attr)
267
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
268
- end
269
-
270
- hash[param] = _to_hash(value)
271
- end
272
- hash
273
- end
274
-
275
- end
276
-
277
- end