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
@@ -0,0 +1,31 @@
1
+ # Weft::SearchPaymentOffer
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **protocol** | **String** | The payment rail (e.g. `x402`, `mpp`). | |
8
+ | **scheme** | **String** | | [optional] |
9
+ | **network** | **String** | | [optional] |
10
+ | **asset** | **String** | | [optional] |
11
+ | **amount** | **String** | | [optional] |
12
+ | **pay_to** | **String** | | [optional] |
13
+ | **max_timeout_seconds** | **Integer** | | [optional] |
14
+ | **facilitator** | **String** | | [optional] |
15
+
16
+ ## Example
17
+
18
+ ```ruby
19
+ require 'weft-sdk'
20
+
21
+ instance = Weft::SearchPaymentOffer.new(
22
+ protocol: null,
23
+ scheme: null,
24
+ network: null,
25
+ asset: null,
26
+ amount: null,
27
+ pay_to: null,
28
+ max_timeout_seconds: null,
29
+ facilitator: null
30
+ )
31
+ ```
@@ -0,0 +1,25 @@
1
+ # Weft::SearchPriceAtomicFilter
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **lte** | **Integer** | Price ≤ this many micro-USD (inclusive ceiling). | [optional] |
8
+ | **gte** | **Integer** | Price ≥ this many micro-USD (inclusive floor). | [optional] |
9
+ | **eq** | **Integer** | Price exactly this many micro-USD. | [optional] |
10
+ | **range_gte** | **Integer** | Range lower bound (inclusive), micro-USD. Set with range_lte. | [optional] |
11
+ | **range_lte** | **Integer** | Range upper bound (inclusive), micro-USD. Set with range_gte. | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'weft-sdk'
17
+
18
+ instance = Weft::SearchPriceAtomicFilter.new(
19
+ lte: null,
20
+ gte: null,
21
+ eq: null,
22
+ range_gte: null,
23
+ range_lte: null
24
+ )
25
+ ```
@@ -0,0 +1,25 @@
1
+ # Weft::SearchPriceUsdFilter
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **lte** | **String** | Price ≤ this many USD (inclusive ceiling), e.g. \"0.009\". | [optional] |
8
+ | **gte** | **String** | Price ≥ this many USD (inclusive floor), e.g. \"0.001\". | [optional] |
9
+ | **eq** | **String** | Price exactly this many USD, e.g. \"1.5\". | [optional] |
10
+ | **range_gte** | **String** | Range lower bound (inclusive), USD. Set with range_lte. | [optional] |
11
+ | **range_lte** | **String** | Range upper bound (inclusive), USD. Set with range_gte. | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'weft-sdk'
17
+
18
+ instance = Weft::SearchPriceUsdFilter.new(
19
+ lte: null,
20
+ gte: null,
21
+ eq: null,
22
+ range_gte: null,
23
+ range_lte: null
24
+ )
25
+ ```
@@ -0,0 +1,19 @@
1
+ # Weft::SearchProtocolFilter
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **eq** | **String** | Primary protocol is exactly this value. | [optional] |
8
+ | **_in** | **Array<String>** | Primary protocol is one of these values. | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'weft-sdk'
14
+
15
+ instance = Weft::SearchProtocolFilter.new(
16
+ eq: null,
17
+ _in: null
18
+ )
19
+ ```
@@ -0,0 +1,21 @@
1
+ # Weft::SearchProviderRef
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **provider_id** | **String** | | [optional] |
8
+ | **display_name** | **String** | | [optional] |
9
+ | **origin_domains** | **Array<String>** | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'weft-sdk'
15
+
16
+ instance = Weft::SearchProviderRef.new(
17
+ provider_id: null,
18
+ display_name: null,
19
+ origin_domains: null
20
+ )
21
+ ```
@@ -5,8 +5,8 @@
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
7
  | **query** | **String** | Free-text query. Required and non-empty. | |
8
- | **limit** | **Integer** | Max number of hits to return. Clamped to [1, 50]. | [optional][default to 10] |
9
- | **filters** | [**SearchFilters**](SearchFilters.md) | | [optional] |
8
+ | **max_results** | **Integer** | Max number of hits to return. Invalid values are rejected, not clamped. | [optional][default to 10] |
9
+ | **filters** | [**SearchFilterSpec**](SearchFilterSpec.md) | | [optional] |
10
10
 
11
11
  ## Example
12
12
 
@@ -15,8 +15,7 @@ require 'weft-sdk'
15
15
 
16
16
  instance = Weft::SearchRequest.new(
17
17
  query: send email from an agent,
18
- limit: null,
18
+ max_results: null,
19
19
  filters: null
20
20
  )
21
21
  ```
22
-
@@ -0,0 +1,19 @@
1
+ # Weft::SearchResourceTypeFilter
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **eq** | **String** | Resource type is exactly this value. | [optional] |
8
+ | **_in** | **Array<String>** | Resource type is one of these values. | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'weft-sdk'
14
+
15
+ instance = Weft::SearchResourceTypeFilter.new(
16
+ eq: null,
17
+ _in: null
18
+ )
19
+ ```
@@ -4,10 +4,24 @@
4
4
 
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
- | **results** | [**Array<SearchResult>**](SearchResult.md) | | |
8
- | **paid_usd** | **String** | Always `null` in v1. | [optional] |
9
- | **tx_hash** | **String** | Always `null` in v1. | [optional] |
10
- | **artifact_id** | **String** | Always `null` in v1. | [optional] |
7
+ | **query_trace_id** | **String** | Opaque trace id for the served query, matching the platform `query_trace_id` — and the `search_id` that re-reads it. Deliberately the same id rather than a second handle: one serve, one name. | |
8
+ | **query** | **String** | | |
9
+ | **format** | **String** | Which view this response carries, echoing the requested format. `json` populates `results` and leaves `markdown` null; `markdown` populates `markdown` and leaves `results` empty. Exactly one is populated per response, never both — returning both eagerly would double the payload. | [optional] |
10
+ | **markdown** | **String** | The flat comparison table, when `format` is `markdown`; null otherwise. Rendered deterministically from the same stored result the `json` view returns, so the two views of one search can never disagree. | [optional] |
11
+ | **result_count** | **Integer** | How many `(Provider + Capability)` results the search produced. Read THIS, not `results.length`, for the count: on a `markdown` response `results` is empty by design, so `result_count > 0` with an empty `results` is a rendered table while `result_count == 0` is a genuine zero-result. | [optional] |
12
+ | **served_from** | **String** | `live` for a fresh serve; `snapshot` for an immutable replay of a completed search. A re-read is a snapshot and says so — read it with `as_of` and `stale`. | [optional] |
13
+ | **as_of** | **Time** | When the results were produced. Now on a `live` serve; on a `snapshot` the ORIGINAL serve time, because a replay returns exactly what was paid for, not current truth. | [optional] |
14
+ | **stale** | **Boolean** | Whether the active search index has changed since these results were produced. `true` does not mean the results are wrong — it means they are a snapshot of an index that has since moved. Always `false` on a `live` serve. | [optional] |
15
+ | **payment_note** | **String** | How payment works across the catalog, stated once for the whole response rather than repeated in every endpoint's usage instructions. | [optional] |
16
+ | **applied_filters** | [**SearchFilterSpec**](SearchFilterSpec.md) | The `FilterSpec` actually applied to recall, echoed back so the caller sees exactly what constrained the results. In the current contract this is the caller's `filters` verbatim (empty object when none were sent). | [optional] |
17
+ | **decomposition_source** | **String** | Origin of `applied_filters`; always `CALLER`. | [optional] |
18
+ | **embedder_model** | **String** | | |
19
+ | **candidates_considered** | **Integer** | | |
20
+ | **warnings** | [**Array<SearchResponseWarningsInner>**](SearchResponseWarningsInner.md) | | |
21
+ | **match_quality** | **String** | Calibrated confidence in this result set — read this instead of thresholding a raw similarity score. `strong`: the top match is confidently on-intent, proceed. `weak`: above the relevance floor but inside the band where plausible-but-wrong matches live, verify the result before paying. `none`: nothing cleared the floor — `results` is empty and `reason` / `suggestion` say why. Results below the floor are never returned as near-misses. | [optional][default to 'none'] |
22
+ | **reason** | **String** | Machine-readable cause of an empty result set, non-null exactly when `match_quality` is `none`. `below_relevance_floor`: candidates ranked but the best scored under the floor. `filter_collapsed_pool`: a caller filter cut the pool before ranking and nothing relevant survived — relax the filter. `no_catalog_coverage`: recall returned no candidates at all on an unfiltered query. `unsupported_filter_value`: a CATEGORICAL filter value (`type` / `protocol`) matches zero stored values, so it could never have matched — categorical only, since a continuous bound like `price` that matches nothing is reported as `filter_collapsed_pool` instead (the bound needs raising, the dimension is not unsupported). `index_unavailable`: no active index — an operational fault, paired with the `EMPTY_INDEX` warning. | [optional] |
23
+ | **suggestion** | **String** | Human/agent-readable explanation of `reason`, carrying the concrete numbers behind it (pool sizes, the best discarded score against the floor, the values actually stored for a filter). Non-null exactly when `reason` is. | [optional] |
24
+ | **results** | [**Array<SearchResult>**](SearchResult.md) | Ranked `(Provider + Capability)` results; empty when the index is empty or nothing cleared the relevance floor. Results BELOW the floor are never returned — an empty list plus a `reason` is the honest answer, not a list of near-misses in the same shape as a genuine match. | |
11
25
  | **_mock** | **Boolean** | Present and `true` only when served by the mock backend. | [optional] |
12
26
 
13
27
  ## Example
@@ -16,11 +30,24 @@
16
30
  require 'weft-sdk'
17
31
 
18
32
  instance = Weft::SearchResponse.new(
33
+ query_trace_id: null,
34
+ query: null,
35
+ format: null,
36
+ markdown: null,
37
+ result_count: null,
38
+ served_from: null,
39
+ as_of: null,
40
+ stale: null,
41
+ payment_note: null,
42
+ applied_filters: null,
43
+ decomposition_source: null,
44
+ embedder_model: null,
45
+ candidates_considered: null,
46
+ warnings: null,
47
+ match_quality: null,
48
+ reason: null,
49
+ suggestion: null,
19
50
  results: null,
20
- paid_usd: null,
21
- tx_hash: null,
22
- artifact_id: null,
23
51
  _mock: null
24
52
  )
25
53
  ```
26
-
@@ -0,0 +1,23 @@
1
+ # Weft::SearchResponseWarningsInner
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **code** | **String** | | |
8
+ | **message** | **String** | | |
9
+ | **cause** | **String** | Typed cause for codes that carry one. Null otherwise. | [optional] |
10
+ | **context** | **Object** | Structured context for the warning. Null when the code carries none. | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'weft-sdk'
16
+
17
+ instance = Weft::SearchResponseWarningsInner.new(
18
+ code: null,
19
+ message: null,
20
+ cause: null,
21
+ context: null
22
+ )
23
+ ```
data/docs/SearchResult.md CHANGED
@@ -4,16 +4,10 @@
4
4
 
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
- | **id** | **String** | Stable agent identifier (e.g. `weft:agent:agentmail`). | |
8
- | **score** | **Float** | Cosine similarity score, clipped to [0, 1]. | |
9
- | **protocol** | **String** | Agent protocol surface. | |
10
- | **domain** | **Array<String>** | Domain tags declared by the agent. | |
11
- | **reseller** | **String** | Reseller slug if this agent is fronted by an aggregator (e.g. `locus`). | [optional] |
12
- | **upstream** | **String** | Upstream provider hostname when fronted by a reseller. | [optional] |
13
- | **agent_card** | [**SearchAgentCard**](SearchAgentCard.md) | | |
14
- | **pricing** | [**SearchPricing**](SearchPricing.md) | | |
15
- | **ranking** | [**SearchRanking**](SearchRanking.md) | | |
16
- | **endpoints** | [**SearchEndpoints**](SearchEndpoints.md) | | |
7
+ | **provider** | [**SearchProviderRef**](SearchProviderRef.md) | | |
8
+ | **capability** | [**SearchCapabilityRef**](SearchCapabilityRef.md) | | |
9
+ | **endpoints** | [**Array<SearchEndpointHit>**](SearchEndpointHit.md) | | |
10
+ | **score** | **Float** | | |
17
11
 
18
12
  ## Example
19
13
 
@@ -21,16 +15,9 @@
21
15
  require 'weft-sdk'
22
16
 
23
17
  instance = Weft::SearchResult.new(
24
- id: null,
25
- score: null,
26
- protocol: null,
27
- domain: null,
28
- reseller: null,
29
- upstream: null,
30
- agent_card: null,
31
- pricing: null,
32
- ranking: null,
33
- endpoints: null
18
+ provider: null,
19
+ capability: null,
20
+ endpoints: null,
21
+ score: null
34
22
  )
35
23
  ```
36
-
@@ -17,4 +17,3 @@ instance = Weft::SignInRequest.new(
17
17
  password: null
18
18
  )
19
19
  ```
20
-
@@ -19,4 +19,3 @@ instance = Weft::SignUpRequest.new(
19
19
  password_confirmation: null
20
20
  )
21
21
  ```
22
-
@@ -19,4 +19,3 @@ instance = Weft::SpendingPolicy.new(
19
19
  weekly_limit_usd: 50.00
20
20
  )
21
21
  ```
22
-
data/docs/User.md CHANGED
@@ -19,4 +19,3 @@ instance = Weft::User.new(
19
19
  status: null
20
20
  )
21
21
  ```
22
-
@@ -0,0 +1,33 @@
1
+ # Weft::UserPrincipal
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **principal_type** | **String** | | |
8
+ | **id** | **Integer** | | |
9
+ | **email** | **String** | | |
10
+ | **display_name** | **String** | | [optional] |
11
+ | **status** | **String** | | |
12
+ | **buyer_enabled** | **Boolean** | | |
13
+ | **seller_enabled** | **Boolean** | | |
14
+ | **provisioning_status** | **String** | | |
15
+ | **wallet** | [**PrincipalWallet**](PrincipalWallet.md) | | |
16
+
17
+ ## Example
18
+
19
+ ```ruby
20
+ require 'weft-sdk'
21
+
22
+ instance = Weft::UserPrincipal.new(
23
+ principal_type: null,
24
+ id: null,
25
+ email: null,
26
+ display_name: null,
27
+ status: null,
28
+ buyer_enabled: null,
29
+ seller_enabled: null,
30
+ provisioning_status: null,
31
+ wallet: null
32
+ )
33
+ ```
data/docs/Wallet.md CHANGED
@@ -5,7 +5,9 @@
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
7
  | **address** | **String** | EVM address of the buyer's Privy-managed wallet. Null if no wallet provisioned. | |
8
- | **balance_usdc** | **String** | Live USDC balance, 2dp. Returns \"0.00\" if the upstream wallet provider is unreachable. | |
8
+ | **balance_usdc** | **String** | Live Base USDC balance, exact to the micro-dollar (up to 6 decimals, minimum 2). Returns \"0.00\" if the upstream wallet provider is unreachable. | |
9
+ | **tempo_usd** | **String** | Aggregated USD value of the allowlisted Tempo TIP-20 dollar tokens on the wallet's paired Tempo chain, exact to the micro-dollar. `null` when the value is UNKNOWN — the Tempo RPC read failed, or no dollar token is allowlisted for that chain yet (e.g. Tempo mainnet pre-launch). A null here is never \"0.00\"; it means \"we couldn't determine it\", and `total_usd` then reflects the Base component only. | |
10
+ | **total_usd** | **String** | Single aggregated USD balance = Base USDC + Tempo dollar tokens, exact to the micro-dollar. When `tempo_usd` is null (unavailable/unallowlisted) this equals `balance_usdc` alone. Null when the Base USDC provider is unreachable, because the surface never claims zero for a component it could not read. | |
9
11
  | **network** | **String** | Wallet network (e.g. `base-sepolia`). | |
10
12
 
11
13
  ## Example
@@ -16,7 +18,8 @@ require 'weft-sdk'
16
18
  instance = Weft::Wallet.new(
17
19
  address: null,
18
20
  balance_usdc: 12.34,
21
+ tempo_usd: 3.00,
22
+ total_usd: 15.34,
19
23
  network: null
20
24
  )
21
25
  ```
22
-
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #Weft API
3
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`.
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/purchases`) 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
5
 
6
- The version of the OpenAPI document: 0.6.2
6
+ The version of the OpenAPI document: 0.9.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.19.0
@@ -19,7 +19,8 @@ module Weft
19
19
  def initialize(api_client = ApiClient.default)
20
20
  @api_client = api_client
21
21
  end
22
- # Get current account
22
+ # Get the current credential principal
23
+ # Returns the Organization represented by a resource API key, or the User represented by an account API key or OAuth access token. Branch on `data.principal_type`; existing Organization fields remain unchanged.
23
24
  # @param [Hash] opts the optional parameters
24
25
  # @return [MeResponse]
25
26
  def get_me(opts = {})
@@ -27,7 +28,8 @@ module Weft
27
28
  data
28
29
  end
29
30
 
30
- # Get current account
31
+ # Get the current credential principal
32
+ # Returns the Organization represented by a resource API key, or the User represented by an account API key or OAuth access token. Branch on `data.principal_type`; existing Organization fields remain unchanged.
31
33
  # @param [Hash] opts the optional parameters
32
34
  # @return [Array<(MeResponse, Integer, Hash)>] MeResponse data, response status code and response headers
33
35
  def get_me_with_http_info(opts = {})
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #Weft API
3
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`.
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/purchases`) 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
5
 
6
- The version of the OpenAPI document: 0.6.2
6
+ The version of the OpenAPI document: 0.9.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.19.0
@@ -20,7 +20,7 @@ module Weft
20
20
  @api_client = api_client
21
21
  end
22
22
  # Create an API key
23
- # @param create_api_key_request [CreateApiKeyRequest]
23
+ # @param create_api_key_request [CreateApiKeyRequest]
24
24
  # @param [Hash] opts the optional parameters
25
25
  # @return [ApiKeyCreatedResponse]
26
26
  def create_api_key(create_api_key_request, opts = {})
@@ -29,7 +29,7 @@ module Weft
29
29
  end
30
30
 
31
31
  # Create an API key
32
- # @param create_api_key_request [CreateApiKeyRequest]
32
+ # @param create_api_key_request [CreateApiKeyRequest]
33
33
  # @param [Hash] opts the optional parameters
34
34
  # @return [Array<(ApiKeyCreatedResponse, Integer, Hash)>] ApiKeyCreatedResponse data, response status code and response headers
35
35
  def create_api_key_with_http_info(create_api_key_request, opts = {})
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #Weft API
3
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`.
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/purchases`) 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
5
 
6
- The version of the OpenAPI document: 0.6.2
6
+ The version of the OpenAPI document: 0.9.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.19.0
@@ -20,7 +20,7 @@ module Weft
20
20
  @api_client = api_client
21
21
  end
22
22
  # Confirm an account
23
- # @param confirm_request [ConfirmRequest]
23
+ # @param confirm_request [ConfirmRequest]
24
24
  # @param [Hash] opts the optional parameters
25
25
  # @return [AuthResponse]
26
26
  def confirm_account(confirm_request, opts = {})
@@ -29,7 +29,7 @@ module Weft
29
29
  end
30
30
 
31
31
  # Confirm an account
32
- # @param confirm_request [ConfirmRequest]
32
+ # @param confirm_request [ConfirmRequest]
33
33
  # @param [Hash] opts the optional parameters
34
34
  # @return [Array<(AuthResponse, Integer, Hash)>] AuthResponse data, response status code and response headers
35
35
  def confirm_account_with_http_info(confirm_request, opts = {})
@@ -86,7 +86,7 @@ module Weft
86
86
  end
87
87
 
88
88
  # Request password reset
89
- # @param password_reset_request [PasswordResetRequest]
89
+ # @param password_reset_request [PasswordResetRequest]
90
90
  # @param [Hash] opts the optional parameters
91
91
  # @return [MessageResponse]
92
92
  def request_password_reset(password_reset_request, opts = {})
@@ -95,7 +95,7 @@ module Weft
95
95
  end
96
96
 
97
97
  # Request password reset
98
- # @param password_reset_request [PasswordResetRequest]
98
+ # @param password_reset_request [PasswordResetRequest]
99
99
  # @param [Hash] opts the optional parameters
100
100
  # @return [Array<(MessageResponse, Integer, Hash)>] MessageResponse data, response status code and response headers
101
101
  def request_password_reset_with_http_info(password_reset_request, opts = {})
@@ -152,7 +152,7 @@ module Weft
152
152
  end
153
153
 
154
154
  # Resend confirmation email
155
- # @param resend_confirmation_request [ResendConfirmationRequest]
155
+ # @param resend_confirmation_request [ResendConfirmationRequest]
156
156
  # @param [Hash] opts the optional parameters
157
157
  # @return [MessageResponse]
158
158
  def resend_confirmation(resend_confirmation_request, opts = {})
@@ -161,7 +161,7 @@ module Weft
161
161
  end
162
162
 
163
163
  # Resend confirmation email
164
- # @param resend_confirmation_request [ResendConfirmationRequest]
164
+ # @param resend_confirmation_request [ResendConfirmationRequest]
165
165
  # @param [Hash] opts the optional parameters
166
166
  # @return [Array<(MessageResponse, Integer, Hash)>] MessageResponse data, response status code and response headers
167
167
  def resend_confirmation_with_http_info(resend_confirmation_request, opts = {})
@@ -218,7 +218,7 @@ module Weft
218
218
  end
219
219
 
220
220
  # Sign in with email and password
221
- # @param sign_in_request [SignInRequest]
221
+ # @param sign_in_request [SignInRequest]
222
222
  # @param [Hash] opts the optional parameters
223
223
  # @return [AuthResponse]
224
224
  def sign_in(sign_in_request, opts = {})
@@ -227,7 +227,7 @@ module Weft
227
227
  end
228
228
 
229
229
  # Sign in with email and password
230
- # @param sign_in_request [SignInRequest]
230
+ # @param sign_in_request [SignInRequest]
231
231
  # @param [Hash] opts the optional parameters
232
232
  # @return [Array<(AuthResponse, Integer, Hash)>] AuthResponse data, response status code and response headers
233
233
  def sign_in_with_http_info(sign_in_request, opts = {})
@@ -284,7 +284,7 @@ module Weft
284
284
  end
285
285
 
286
286
  # Create an account
287
- # @param sign_up_request [SignUpRequest]
287
+ # @param sign_up_request [SignUpRequest]
288
288
  # @param [Hash] opts the optional parameters
289
289
  # @return [AuthResponse]
290
290
  def sign_up(sign_up_request, opts = {})
@@ -293,7 +293,7 @@ module Weft
293
293
  end
294
294
 
295
295
  # Create an account
296
- # @param sign_up_request [SignUpRequest]
296
+ # @param sign_up_request [SignUpRequest]
297
297
  # @param [Hash] opts the optional parameters
298
298
  # @return [Array<(AuthResponse, Integer, Hash)>] AuthResponse data, response status code and response headers
299
299
  def sign_up_with_http_info(sign_up_request, opts = {})
@@ -350,7 +350,7 @@ module Weft
350
350
  end
351
351
 
352
352
  # Update password with reset token
353
- # @param password_update_request [PasswordUpdateRequest]
353
+ # @param password_update_request [PasswordUpdateRequest]
354
354
  # @param [Hash] opts the optional parameters
355
355
  # @return [MessageResponse]
356
356
  def update_password(password_update_request, opts = {})
@@ -359,7 +359,7 @@ module Weft
359
359
  end
360
360
 
361
361
  # Update password with reset token
362
- # @param password_update_request [PasswordUpdateRequest]
362
+ # @param password_update_request [PasswordUpdateRequest]
363
363
  # @param [Hash] opts the optional parameters
364
364
  # @return [Array<(MessageResponse, Integer, Hash)>] MessageResponse data, response status code and response headers
365
365
  def update_password_with_http_info(password_update_request, opts = {})
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #Weft API
3
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`.
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/purchases`) 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
5
 
6
- The version of the OpenAPI document: 0.6.2
6
+ The version of the OpenAPI document: 0.9.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.19.0
@@ -20,7 +20,7 @@ module Weft
20
20
  @api_client = api_client
21
21
  end
22
22
  # Get wallet, spending policy, and current-window spend
23
- # Read-only snapshot for the buyer behind the bearer token. The response always includes a `promo` block — values are zero in v1 and fill in once the freemium promo ledger ships, without a shape change. `wallet.balance_usdc` is fetched live from Privy; if Privy is unreachable the field returns `\"0.00\"` rather than erroring the whole call. Account-scoped: the bearer must be a buyer-scoped API key.
23
+ # Read-only snapshot for the buyer behind the bearer token. The response always includes a `promo` block — values are zero in v1 and fill in once the freemium promo ledger ships, without a shape change. `wallet.balance_usdc` is fetched live from Privy; if Privy is unreachable the field returns `\"0.00\"` rather than erroring the whole call. Account-scoped: the bearer must be a buyer-scoped API key.
24
24
  # @param [Hash] opts the optional parameters
25
25
  # @return [BalanceResponse]
26
26
  def get_balance(opts = {})
@@ -29,7 +29,7 @@ module Weft
29
29
  end
30
30
 
31
31
  # Get wallet, spending policy, and current-window spend
32
- # Read-only snapshot for the buyer behind the bearer token. The response always includes a &#x60;promo&#x60; block — values are zero in v1 and fill in once the freemium promo ledger ships, without a shape change. &#x60;wallet.balance_usdc&#x60; is fetched live from Privy; if Privy is unreachable the field returns &#x60;\&quot;0.00\&quot;&#x60; rather than erroring the whole call. Account-scoped: the bearer must be a buyer-scoped API key.
32
+ # Read-only snapshot for the buyer behind the bearer token. The response always includes a &#x60;promo&#x60; block — values are zero in v1 and fill in once the freemium promo ledger ships, without a shape change. &#x60;wallet.balance_usdc&#x60; is fetched live from Privy; if Privy is unreachable the field returns &#x60;\&quot;0.00\&quot;&#x60; rather than erroring the whole call. Account-scoped: the bearer must be a buyer-scoped API key.
33
33
  # @param [Hash] opts the optional parameters
34
34
  # @return [Array<(BalanceResponse, Integer, Hash)>] BalanceResponse data, response status code and response headers
35
35
  def get_balance_with_http_info(opts = {})
@@ -1,9 +1,9 @@
1
1
  =begin
2
2
  #Weft API
3
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`.
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/purchases`) 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
5
 
6
- The version of the OpenAPI document: 0.6.2
6
+ The version of the OpenAPI document: 0.9.0
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.19.0