@reclaimprotocol/client 0.1.23 → 0.1.24

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.
@@ -32,15 +32,16 @@ export interface paths {
32
32
  };
33
33
  /**
34
34
  * Search providers
35
- * @description Search published Reclaim providers by domain or data point. A provider is the recipe an end-user follows to prove something about themselves (e.g. "I have N followers on Twitter"). Returns a list of matches. Call this BEFORE `create_provider` — most popular domains already have a public provider you can reuse.
36
- * Catalog page listing all providers. Returns a paginated list of providers the caller can see. Public providers are visible to everyone; private providers are only visible to org members.
35
+ * @description Search Reclaim providers by domain or data point. A provider is the recipe an end-user follows to prove something about themselves, such as "I have N followers on Twitter".
36
+ * Call this BEFORE `create_provider` — most popular domains already have a public provider you can reuse, and creating another one just stacks duplicates.
37
+ * Returns a paginated list of the providers the caller can see: public providers to everyone, private providers only to members of the owning organization.
37
38
  */
38
39
  get: operations["Providers"];
39
40
  put?: never;
40
41
  /**
41
42
  * Create a provider
42
43
  * @description Create a new Reclaim provider. Use this only after `providers` returned nothing useful for the domain. The caller must be an active member of the target organization.
43
- * Creates a new provider in the specified organization. `visibility` is coerced to `PRIVATE` at creation regardless of what's sent; the author may toggle to `PUBLIC` later via `PATCH /providers/{id}`. While `PRIVATE`, versions go to the go live freely; once `PUBLIC`, non-admin versions need admin review. See `Provider.visibility`.
44
+ * Creates a new provider in the specified organization. `visibility` is coerced to `PRIVATE` at creation regardless of what's sent; the author may toggle to `PUBLIC` later via `PATCH /providers/{id}`. While `PRIVATE`, versions go live freely; once `PUBLIC`, non-admin versions need admin review. See `Provider.visibility`.
44
45
  * The server also seeds an initial `0.1.0` version on the `draft` branch in the same transaction so the provider is immediately editable. Its `initialUrl` defaults to `https://<domain>`; all other version fields fall back to their schema-declared defaults (a `structured` verificationType, empty requests, empty web settings). `Provider.latestVersion` stays `null` until the draft is promoted to the live channel.
45
46
  */
46
47
  post: operations["CreateProvider"];
@@ -410,6 +411,26 @@ export interface paths {
410
411
  patch?: never;
411
412
  trace?: never;
412
413
  };
414
+ "/admin/providers/{providerId}/fix-with-ai": {
415
+ parameters: {
416
+ query?: never;
417
+ header?: never;
418
+ path?: never;
419
+ cookie?: never;
420
+ };
421
+ get?: never;
422
+ /**
423
+ * Set AI repair eligibility for a provider (admin-only)
424
+ * @description Admin only. Sets whether failed verification sessions using this provider may offer the Fix with AI workflow. This is a desired-state, idempotent operation.
425
+ */
426
+ put: operations["AdminSetProviderFixWithAi"];
427
+ post?: never;
428
+ delete?: never;
429
+ options?: never;
430
+ head?: never;
431
+ patch?: never;
432
+ trace?: never;
433
+ };
413
434
  "/admin/orgs": {
414
435
  parameters: {
415
436
  query?: never;
@@ -719,7 +740,7 @@ export interface paths {
719
740
  put?: never;
720
741
  /**
721
742
  * Grant prepaid credits to an org (admin-only)
722
- * @description Admin only. Add credit to an org's wallet. PROMOTIONAL is goodwill (no payment, no invoice); PURCHASE records money paid out of band (wire, crypto) and raises a real Stripe invoice the customer can download; ADJUSTMENT is a correction, e.g. writing off overage consumed during a grace window.
743
+ * @description Admin only. Add credit to an org's wallet. PROMOTIONAL is goodwill (no payment, no invoice); PURCHASE records money paid out of band (wire, crypto) and raises a real Stripe invoice the customer can download; ADJUSTMENT is a correction, for example, writing off overage consumed during a grace window.
723
744
  */
724
745
  post: operations["AdminGrantOrgCredit"];
725
746
  delete?: never;
@@ -783,7 +804,7 @@ export interface paths {
783
804
  put?: never;
784
805
  /**
785
806
  * Grant staff to a user by email (admin-only)
786
- * @description Admin only. Grants staff to an existing user by email, on ANY email domain (e.g. a contractor on gmail). The target must have signed in at least once so their app user exists; membership grants admin immediately. Idempotent.
807
+ * @description Admin only. Grants staff to an existing user by email, on ANY email domain (for example, a contractor on gmail). The target must have signed in at least once so their app user exists; membership grants admin immediately. Idempotent.
787
808
  */
788
809
  post: operations["AddStaffMember"];
789
810
  delete?: never;
@@ -847,7 +868,7 @@ export interface paths {
847
868
  put?: never;
848
869
  /**
849
870
  * Issue an additional token for a verification client (admin)
850
- * @description Admin only. Adds a new token to the client; existing tokens keep working (a client may hold several live tokens, e.g. one per deployment or for zero-downtime rotation). The plaintext is returned ONCE — only its HMAC is stored.
871
+ * @description Admin only. Adds a new token to the client; existing tokens keep working (a client may hold several live tokens, for example, one per deployment or for zero-downtime rotation). The plaintext is returned ONCE — only its HMAC is stored.
851
872
  */
852
873
  post: operations["IssueVerificationClientToken"];
853
874
  delete?: never;
@@ -1093,6 +1114,50 @@ export interface paths {
1093
1114
  patch?: never;
1094
1115
  trace?: never;
1095
1116
  };
1117
+ "/v/{sessionId}/fix-with-ai": {
1118
+ parameters: {
1119
+ query?: never;
1120
+ header?: never;
1121
+ path?: never;
1122
+ cookie?: never;
1123
+ };
1124
+ /**
1125
+ * List AI repair actions for failed providers
1126
+ * @description Returns an HTML recovery fragment containing one action per failed, admin-enabled provider in the terminal source session. Requires a signed-in member of the source session's billing organization.
1127
+ */
1128
+ get: operations["FixWithAiRecovery"];
1129
+ put?: never;
1130
+ /**
1131
+ * Create or reopen a billed AI repair session
1132
+ * @description Creates one idempotent repair attempt for the selected failed provider. The source organization is charged only when a new child is created. Repeated requests reopen a pending or successful child. After a child ends in error, rejection, or expiry, a later request creates a new, separately billed attempt. The server derives the exact failed version and repair prompt.
1133
+ */
1134
+ post: operations["CreateFixWithAiSession"];
1135
+ delete?: never;
1136
+ options?: never;
1137
+ head?: never;
1138
+ patch?: never;
1139
+ trace?: never;
1140
+ };
1141
+ "/v/{sessionId}/fix-with-ai/activate": {
1142
+ parameters: {
1143
+ query?: never;
1144
+ header?: never;
1145
+ path?: never;
1146
+ cookie?: never;
1147
+ };
1148
+ get?: never;
1149
+ put?: never;
1150
+ /**
1151
+ * Start a pending AI repair after the verification page loads
1152
+ * @description Idempotently queues a pending repair session. The server derives the claimant country from the request and publishes no browser credentials.
1153
+ */
1154
+ post: operations["ActivateFixWithAiRepair"];
1155
+ delete?: never;
1156
+ options?: never;
1157
+ head?: never;
1158
+ patch?: never;
1159
+ trace?: never;
1160
+ };
1096
1161
  "/.well-known/jwks.json": {
1097
1162
  parameters: {
1098
1163
  query?: never;
@@ -1875,7 +1940,7 @@ export interface paths {
1875
1940
  };
1876
1941
  /**
1877
1942
  * Serve the bytes of a stored image
1878
- * @description Returns the raw bytes of the uploaded image with the original `Content-Type`. The URL is content-addressed (by image id) so the response is immutable — long `Cache-Control: max-age` is applied. Images are referenced via parent records (e.g. `Organization.iconUrl`).
1943
+ * @description Returns the raw bytes of the uploaded image with the original `Content-Type`. The URL is content-addressed (by image id) so the response is immutable — long `Cache-Control: max-age` is applied. Images are referenced via parent records, for example `Organization.iconUrl`.
1879
1944
  */
1880
1945
  get: operations["GetImage"];
1881
1946
  put?: never;
@@ -1943,7 +2008,7 @@ export interface paths {
1943
2008
  *
1944
2009
  * - If `slug` matches the provider's current slug, returns the
1945
2010
  * resource (HTML or JSON per `Accept`).
1946
- * - If `slug` does not match (e.g. the provider was renamed since
2011
+ * - If `slug` does not match (for example, the provider was renamed since
1947
2012
  * the URL was minted), HTML callers receive a `301` redirect
1948
2013
  * to this same route with the *current* slug. JSON callers
1949
2014
  * receive the resource directly with `200` regardless of slug
@@ -1971,7 +2036,7 @@ export interface paths {
1971
2036
  };
1972
2037
  /**
1973
2038
  * List a provider's versions
1974
- * @description Lists versions visible to the caller. Non-public branches (`ai`, `draft`, `in_review`, `rejected`) are only visible to members of the provider's owning organization.
2039
+ * @description Lists versions visible to the caller. Non-public branches (`ai`, `draft`, `fixed`, `in_review`, `rejected`) are only visible to members of the provider's owning organization.
1975
2040
  */
1976
2041
  get: operations["ListProviderVersions"];
1977
2042
  put?: never;
@@ -2004,20 +2069,23 @@ export interface paths {
2004
2069
  path?: never;
2005
2070
  cookie?: never;
2006
2071
  };
2007
- /** Get a specific provider version */
2072
+ /**
2073
+ * Get a specific provider version
2074
+ * @description Fetches one exact canonical version. Trunk is public when the provider is public. Non-trunk versions are visible to admins and members of the provider's organization. A member of the organization that paid for a successful AI repair may also read only the exact `fixed` version created by that repair.
2075
+ */
2008
2076
  get: operations["GetProviderVersion"];
2009
2077
  put?: never;
2010
2078
  post?: never;
2011
2079
  /**
2012
2080
  * Delete a provider version
2013
- * @description Soft-archives a version on the `draft`, `ai`, or `rejected` branch — sets `status` to `ARCHIVED` so history is preserved. Trunk (live) and `in_review` versions cannot be archived this way; archive the parent provider instead. Supports optimistic concurrency via `If-Match`.
2081
+ * @description Soft-archives a version on the `draft`, `ai`, or `rejected` branch — sets `status` to `ARCHIVED` so history is preserved. `fixed`, trunk (live), and `in_review` versions cannot be archived this way; archive the parent provider instead. Supports optimistic concurrency via `If-Match`.
2014
2082
  */
2015
2083
  delete: operations["DeleteProviderVersion"];
2016
2084
  options?: never;
2017
2085
  head?: never;
2018
2086
  /**
2019
2087
  * Update a provider version
2020
- * @description Mutable only while the version is on the `draft` or `rejected` branch. Versions on `in_review` or the live channel reject all writes here. Caller must be a member of the provider's owning organization. Supports optimistic concurrency via `If-Match`.
2088
+ * @description Mutable only while the version is on the `draft` or `rejected` branch. Versions on `fixed`, `in_review`, or the live channel reject all writes here. Caller must be a member of the provider's owning organization. Supports optimistic concurrency via `If-Match`.
2021
2089
  */
2022
2090
  patch: operations["UpdateProviderVersion"];
2023
2091
  trace?: never;
@@ -2667,6 +2735,11 @@ export interface components {
2667
2735
  * @description Builder-managed remote browser session id.
2668
2736
  */
2669
2737
  AgentBrowserSessionID: string;
2738
+ /** @description Optional allocation preferences for the authoring browser. */
2739
+ CreateAgentBrowserSessionRequest: {
2740
+ /** @description ISO 3166-1 alpha-2 country the browser should browse from. Popcorn owns the proxy itself and routes the whole session's egress through its own deployment-configured exit for this country; callers never supply a proxy URL or credentials. Omit for the deployment's default (direct) egress. If the deployment has no proxy configured, the browser is still allocated, just without the requested country. */
2741
+ countryCode?: string;
2742
+ };
2670
2743
  /** @description A short-lived Popcorn browser allocated for provider authoring. Treat `cdpUrl` and `apiUrl` as credentials: the local agent consumes them and must not display, persist, or share them. `liveViewUrl` is intentionally shareable with the volunteer operating the browser. */
2671
2744
  AgentBrowserSession: {
2672
2745
  id: components["schemas"]["AgentBrowserSessionID"];
@@ -2759,7 +2832,7 @@ export interface components {
2759
2832
  *
2760
2833
  * - `ANONYMOUS`: System-managed, member-less org auto-created to
2761
2834
  * anchor an unaffiliated ETH credential's org-level settings
2762
- * (e.g. callback subscriptions). Created lazily and archived
2835
+ * (for example, callback subscriptions). Created lazily and archived
2763
2836
  * when its credential is linked to a real organization. Never
2764
2837
  * created or named by clients; has no members.
2765
2838
  * @enum {string}
@@ -2985,7 +3058,7 @@ export interface components {
2985
3058
  billingAddress?: components["schemas"]["BillingAddress"];
2986
3059
  /** @description Buyer tax / VAT id, shown on invoices. Synced from Stripe. */
2987
3060
  taxId?: string;
2988
- /** @description Stripe tax-id type paired with `taxId` (e.g. `eu_vat`, `in_gst`, `us_ein`). Synced from Stripe. */
3061
+ /** @description Stripe tax-id type paired with `taxId` (for example, `eu_vat`, `in_gst`, `us_ein`). Synced from Stripe. */
2989
3062
  taxIdType?: string;
2990
3063
  /**
2991
3064
  * Format: uuid
@@ -3074,7 +3147,7 @@ export interface components {
3074
3147
  SetOrgGraceRequest: {
3075
3148
  /**
3076
3149
  * Format: date-time
3077
- * @description Deadline as an RFC 3339 UTC date-time (e.g. `2026-08-21T23:59:00Z`). Access lasts until this instant, then the org drops to the free plan.
3150
+ * @description Deadline as an RFC 3339 UTC date-time, for example `2026-08-21T23:59:00Z`. Access lasts until this instant, then the org drops to the free plan.
3078
3151
  */
3079
3152
  graceUntil: string;
3080
3153
  };
@@ -3146,7 +3219,7 @@ export interface components {
3146
3219
  description?: string;
3147
3220
  /** @description Marks singleton well-known plans; `free` is the default plan for orgs with no purchase. */
3148
3221
  systemKey?: string;
3149
- /** @description Price per period in the plan's currency (e.g. 10.99). */
3222
+ /** @description Price per period in the plan's currency (for example, 10.99). */
3150
3223
  pricePerPeriod: number;
3151
3224
  currency: string;
3152
3225
  pools: components["schemas"]["PlanPool"][];
@@ -3169,13 +3242,13 @@ export interface components {
3169
3242
  /** @description Number of periodUnit per cycle. */
3170
3243
  periodCount?: number;
3171
3244
  /**
3172
- * @description Days an overdue org keeps paid limits before dropping to Free. Null = the global default (14).
3245
+ * @description Days an overdue org keeps paid limits before dropping to Free. Null = the global default (14); 0 = no grace at all, so the drop is immediate.
3173
3246
  * The failed-card clock: it starts when Stripe cannot collect the plan fee, and a successful payment clears it. On expiry the whole plan drops to free-plan limits — a hard cap with overage off. Distinct from creditGraceDays, the empty-wallet clock, which only caps overage. The two are independent and can overlap.
3174
3247
  */
3175
3248
  graceDays?: number | null;
3176
3249
  /**
3177
- * @description Days an org keeps serving overage after its prepaid credit balance hits zero, before overage stops (the plan's included allowance keeps working). Null = the global default (10).
3178
- * The empty-wallet clock: it starts when credit runs out while the org is spending beyond its allowance, and any top-up clears it. On expiry only overage is refused (402); the plan itself is untouched. Distinct from graceDays, the failed-card clock, whose expiry drops the whole plan to free limits.
3250
+ * @description Days an org keeps serving overage after its prepaid credit balance hits zero, before overage stops (the plan's included allowance keeps working). Null = the global default (10); 0 = no grace at all, so overage stops as soon as the wallet is empty.
3251
+ * The empty-wallet clock: it starts on the first overage charged against an empty wallet — never when a plan is applied — and any top-up clears it. On expiry only overage is refused (402); the plan itself is untouched. Distinct from graceDays, the failed-card clock, whose expiry drops the whole plan to free limits.
3179
3252
  */
3180
3253
  creditGraceDays?: number | null;
3181
3254
  /** @description Contact-only lead tier — shown on the pricing page but not self-serve checkoutable; admins assign and bill it. Enterprise uses this. */
@@ -3187,9 +3260,9 @@ export interface components {
3187
3260
  orgId?: string;
3188
3261
  /** @description Highlights the card with the RECOMMENDED badge and accent border on the pricing page. */
3189
3262
  isRecommended?: boolean;
3190
- /** @description Pricing-page button text (e.g. "Start free →"). Falls back to a price-derived default when unset. */
3263
+ /** @description Pricing-page button text (for example, "Start free →"). Falls back to a price-derived default when unset. */
3191
3264
  ctaLabel?: string;
3192
- /** @description CTA text shown to a signed-in viewer (e.g. "Upgrade →"). Falls back to ctaLabel, then the default, when unset. */
3265
+ /** @description CTA text shown to a signed-in viewer (for example, "Upgrade →"). Falls back to ctaLabel, then the default, when unset. */
3193
3266
  ctaLabelAuthed?: string;
3194
3267
  /** @description Where the CTA links when it is not a self-serve checkout — a signed-out visitor or a contact-sales tier. http(s), mailto:, or a site-relative path. */
3195
3268
  ctaUrl?: string;
@@ -3207,9 +3280,9 @@ export interface components {
3207
3280
  pools?: components["schemas"]["PlanPoolInput"][];
3208
3281
  visibility?: components["schemas"]["EntityVisibility"];
3209
3282
  status?: components["schemas"]["EntityStatus"];
3210
- /** @description Days overdue orgs keep paid limits before dropping to Free. Omit for the global default (14). The failed-card clock — cleared by a successful payment; on expiry the whole plan drops to free limits. See creditGraceDays for the separate empty-wallet clock. */
3283
+ /** @description Days overdue orgs keep paid limits before dropping to Free. Omit for the global default (14), or send 0 for no grace at all. The failed-card clock — cleared by a successful payment; on expiry the whole plan drops to free limits. See creditGraceDays for the separate empty-wallet clock. */
3211
3284
  graceDays?: number | null;
3212
- /** @description Days an org keeps serving overage after its credits run out. Omit for the global default (10). The empty-wallet clock — cleared by any top-up; on expiry only overage stops, and the plan's included allowance keeps working. See graceDays for the separate failed-card clock. */
3285
+ /** @description Days an org keeps serving overage after its credits run out. Omit for the global default (10), or send 0 to stop overage as soon as the wallet is empty. The empty-wallet clock — cleared by any top-up; on expiry only overage stops, and the plan's included allowance keeps working. See graceDays for the separate failed-card clock. */
3213
3286
  creditGraceDays?: number | null;
3214
3287
  /** @description Contact-only lead tier — shown but not self-serve checkoutable. */
3215
3288
  contactOnly?: boolean;
@@ -3229,9 +3302,9 @@ export interface components {
3229
3302
  stripeProductId: string;
3230
3303
  pools: components["schemas"]["PlanPoolInput"][];
3231
3304
  visibility?: components["schemas"]["EntityVisibility"];
3232
- /** @description Failed-card grace: days an overdue org keeps paid limits before dropping to Free. Omit for the global default (14). */
3305
+ /** @description Failed-card grace: days an overdue org keeps paid limits before dropping to Free. Omit for the global default (14), or send 0 for no grace at all. */
3233
3306
  graceDays?: number | null;
3234
- /** @description Empty-wallet grace: days an org keeps serving overage after its credits run out, before overage stops (the plan's included allowance keeps working). Omit for the global default (10). A separate clock from graceDays. */
3307
+ /** @description Empty-wallet grace: days an org keeps serving overage after its credits run out, before overage stops (the plan's included allowance keeps working). Omit for the global default (10), or send 0 to stop overage as soon as the wallet is empty. A separate clock from graceDays. */
3235
3308
  creditGraceDays?: number | null;
3236
3309
  contactOnly?: boolean;
3237
3310
  /** Format: uuid */
@@ -3326,7 +3399,7 @@ export interface components {
3326
3399
  GrantOrgCreditRequest: {
3327
3400
  amount: number;
3328
3401
  /**
3329
- * @description PROMOTIONAL = goodwill, no payment. PURCHASE = paid out of band; raises a Stripe invoice marked paid out-of-band. ADJUSTMENT = a correction, e.g. writing off grace-window overage.
3402
+ * @description PROMOTIONAL = goodwill, no payment. PURCHASE = paid out of band; raises a Stripe invoice marked paid out-of-band. ADJUSTMENT = a correction, for example, writing off grace-window overage.
3330
3403
  * @enum {string}
3331
3404
  */
3332
3405
  kind: "PROMOTIONAL" | "PURCHASE" | "ADJUSTMENT";
@@ -3390,6 +3463,9 @@ export interface components {
3390
3463
  /** @default STRIPE */
3391
3464
  billingMode: components["schemas"]["BillingMode"];
3392
3465
  };
3466
+ AdminSetProviderFixWithAiRequest: {
3467
+ enabled: boolean;
3468
+ };
3393
3469
  /** @description Outcome of a plan change. */
3394
3470
  PlanChangeResult: {
3395
3471
  /**
@@ -3466,7 +3542,7 @@ export interface components {
3466
3542
  token: string;
3467
3543
  };
3468
3544
  CreateVerificationClientRequest: {
3469
- /** @description Lowercase handle (letters, digits, hyphens), e.g. `web-portal`. */
3545
+ /** @description Lowercase handle (letters, digits, hyphens), for example, `web-portal`. */
3470
3546
  name: string;
3471
3547
  /**
3472
3548
  * @description Which quota pool this client draws from — verifications and zkFetches are separate allowances on every plan.
@@ -3490,7 +3566,7 @@ export interface components {
3490
3566
  /** @description Uncompressed secp256k1 public key (65 bytes, hex). */
3491
3567
  publicKey?: string;
3492
3568
  publicKeyJwk?: components["schemas"]["JwkSecp256k1Public"];
3493
- /** @description A human note to tell keys apart (e.g. "prod-eu"). */
3569
+ /** @description A human note to tell keys apart (for example, "prod-eu"). */
3494
3570
  label?: string;
3495
3571
  };
3496
3572
  /** @description The email of an existing user to grant staff (any domain). */
@@ -3517,7 +3593,7 @@ export interface components {
3517
3593
  };
3518
3594
  /** @description Optional metadata for the token being issued. */
3519
3595
  IssueVerificationClientTokenRequest: {
3520
- /** @description A human note to tell tokens apart (e.g. "prod-eu"). */
3596
+ /** @description A human note to tell tokens apart (for example, "prod-eu"). */
3521
3597
  label?: string;
3522
3598
  };
3523
3599
  ProviderVersionRef: {
@@ -3531,6 +3607,9 @@ export interface components {
3531
3607
  *
3532
3608
  * - `draft`: a human is actively editing the version.
3533
3609
  *
3610
+ * - `fixed`: a proven AI repair. It remains pinned to its explicit
3611
+ * version and does not replace the live trunk version.
3612
+ *
3534
3613
  * - `in_review`: the author has submitted the version to be made
3535
3614
  * public and it is awaiting review. On approval the branch tag
3536
3615
  * is cleared (the version is promoted to the live channel and becomes
@@ -3541,7 +3620,7 @@ export interface components {
3541
3620
  * `in_review`.
3542
3621
  * @enum {string}
3543
3622
  */
3544
- branch?: "ai" | "draft" | "in_review" | "rejected";
3623
+ branch?: "ai" | "draft" | "fixed" | "in_review" | "rejected";
3545
3624
  /** @description Build number for the provider version */
3546
3625
  buildNumber?: number;
3547
3626
  };
@@ -3551,7 +3630,7 @@ export interface components {
3551
3630
  */
3552
3631
  WebCredentialsType: "omit" | "same-origin" | "include";
3553
3632
  /**
3554
- * @description Geographic location (e.g. ISO country code or {{DYNAMIC_GEO}} to use user's geo location) the verification should appear to originate from.
3633
+ * @description Geographic location the verification should appear to originate from: a 2-letter ISO country code, or a parameter the attestor resolves at proof time. `{{DYNAMIC_GEO}}` and `{{DYNAMIC_GEO_SECRET}}` are the Verification Client's standard names for the end-user's own country — the `_SECRET` one is delivered as a secret param, so the attestor never learns which country the proof egressed from.
3555
3634
  * @default {{DYNAMIC_GEO}}
3556
3635
  */
3557
3636
  Geolocation: string;
@@ -3657,11 +3736,11 @@ export interface components {
3657
3736
  /** @description The pattern or value to look for in the response. When `type` is 'contains', supports template variable declaration using `{{variable}}` syntax. When `type` is 'regex', can be used to extract variables using regex named groups. */
3658
3737
  value: string;
3659
3738
  };
3660
- /** @description Which portions to select from a response. These are selected in order, xpath => jsonPath => regex * These redactions are done client side and only the selected portions are sent to the attestor. The attestor will only be able to see the selected portions alongside the first line of the HTTP response (i.e. "HTTP/1.1 200 OK") */
3739
+ /** @description Which portions to select from a response. These are selected in order, xpath => jsonPath => regex * These redactions are done client side and only the selected portions are sent to the attestor. The attestor will only be able to see the selected portions alongside the first line of the HTTP response (that is, "HTTP/1.1 200 OK") */
3661
3740
  ResponseRedaction: {
3662
3741
  /** @description expect an HTML response, and to contain a certain xpath for eg. "/html/body/div.a1/div.a2/span.a5" */
3663
3742
  xPath?: string;
3664
- /** @description expect a JSON response, retrieve the item at this path using dot notation for e.g. 'email.addresses.0' */
3743
+ /** @description expect a JSON response, retrieve the item at this path using dot notation, for example 'email.addresses.0'. */
3665
3744
  jsonPath?: string;
3666
3745
  /** @description select a regex match from the response */
3667
3746
  regex?: string;
@@ -3684,9 +3763,14 @@ export interface components {
3684
3763
  orgId: components["schemas"]["OrgID"];
3685
3764
  /**
3686
3765
  * Format: hostname
3687
- * @description Canonical root domain of the provider (e.g. `google.com`) — no scheme, no port, no path. Clients may submit a `www.` prefix; the server normalizes it away before storage.
3766
+ * @description Canonical root domain of the provider (for example, `google.com`) — no scheme, no port, no path. Clients may submit a `www.` prefix; the server normalizes it away before storage.
3688
3767
  */
3689
3768
  domain: string;
3769
+ /**
3770
+ * @description Region this provider covers, for a site that serves a genuinely different product per country under a path prefix — `us` for `uber.com/us`, `en-gb` for `etihad.com/en-gb`. Null means the provider is not region-specific, which is right for most: a translation is not a region, so `binance.com/en` carries no region.
3771
+ * The server SUGGESTS a value from the live version's `initialUrl` when this is unset; the author confirms or overrides it here. Set it to null to clear a wrong suggestion and have the provider apply everywhere.
3772
+ */
3773
+ region?: string | null;
3690
3774
  /** @description URL-safe identifier for the provider. Lowercase letters, digits and hyphens only; globally unique across all providers. */
3691
3775
  slug: string;
3692
3776
  /** @description The title of the provider as displayed on the detail page. */
@@ -3749,7 +3833,8 @@ export interface components {
3749
3833
  *
3750
3834
  * Toggling `PUBLIC` → `PRIVATE` hides the provider from
3751
3835
  * the public listing immediately. Versions already on
3752
- * `draft` / `in_review` / `rejected` stay where they are —
3836
+ * `ai` / `draft` / `fixed` / `in_review` / `rejected` stay where
3837
+ * they are —
3753
3838
  * the provider's visibility at version-creation time
3754
3839
  * decides the review path, and a later toggle does not
3755
3840
  * retroactively un-gate non-live versions.
@@ -3788,7 +3873,7 @@ export interface components {
3788
3873
  orgId: components["schemas"]["OrgID"];
3789
3874
  /**
3790
3875
  * Format: hostname
3791
- * @description Canonical root domain of the provider (e.g. `google.com`).
3876
+ * @description Canonical root domain of the provider (for example, `google.com`).
3792
3877
  */
3793
3878
  domain: string;
3794
3879
  /** @description URL-safe identifier for the provider. */
@@ -3838,7 +3923,7 @@ export interface components {
3838
3923
  WebsiteSuggestion: {
3839
3924
  /**
3840
3925
  * Format: hostname
3841
- * @description Canonical root domain (e.g. `github.com`).
3926
+ * @description Canonical root domain (for example, `github.com`).
3842
3927
  */
3843
3928
  domain: string;
3844
3929
  /** @description Display name for the website (scraped site name or derived from the domain). */
@@ -3876,9 +3961,13 @@ export interface components {
3876
3961
  /** @description The edited extraction prompt for the AI provider. Gated by the prompt guard before it is stored (see docs/prompt-guard.md); the length here documents the same ceiling the guard enforces. */
3877
3962
  prompt?: string;
3878
3963
  };
3964
+ /** @description Selects one failed provider from the source session. The server treats this only as selection input and re-derives authorization, failure, version, organization, and prompt. */
3965
+ CreateFixWithAiSessionRequest: {
3966
+ providerId: components["schemas"]["ProviderID"];
3967
+ };
3879
3968
  /** @description A single data point selectable on the `/site/{domain}` page, with how many visible providers expose it, one example provider slug, and one `references` entry per provider describing how that provider proves it (what the site page's source picker offers as selectable options). */
3880
3969
  DataPointItem: {
3881
- /** @description Data-point name (e.g. `username`, `followers_count`). */
3970
+ /** @description Data-point name (for example, `username`, `followers_count`). */
3882
3971
  name: string;
3883
3972
  /** @description Human description of the data point, taken from the response match that declares it. Absent when no match supplies one. */
3884
3973
  description?: string;
@@ -3957,7 +4046,7 @@ export interface components {
3957
4046
  /** @description Settings used by the web-based verification client. */
3958
4047
  ProviderWebSettings: {
3959
4048
  /**
3960
- * @description Geographic location (e.g. ISO country code or {{DYNAMIC_GEO}} to use user's geo location) the verification should appear to originate from.
4049
+ * @description Geographic location (for example, ISO country code or {{DYNAMIC_GEO}} to use user's geo location) the verification should appear to originate from.
3961
4050
  * @default {{DYNAMIC_GEO}}
3962
4051
  */
3963
4052
  geoLocation: components["schemas"]["Geolocation"];
@@ -3990,10 +4079,10 @@ export interface components {
3990
4079
  ProviderSeo: {
3991
4080
  /**
3992
4081
  * Format: uri
3993
- * @description Canonical homepage of the brand (e.g. `https://google.com`). Used in brand-link cards and JSON-LD.
4082
+ * @description Canonical homepage of the brand (for example, `https://google.com`). Used in brand-link cards and JSON-LD.
3994
4083
  */
3995
4084
  brandUrl?: string;
3996
- /** @description Headline data point — the single most-important variable this provider can verify (e.g. `subscriber count`). Used in the provider's SEO title. */
4085
+ /** @description Headline data point — the single most-important variable this provider can verify (for example, `subscriber count`). Used in the provider's SEO title. */
3997
4086
  primaryDataPoint?: string;
3998
4087
  /** @description Full list of data points this provider can verify. */
3999
4088
  dataPoints?: string[];
@@ -4014,7 +4103,7 @@ export interface components {
4014
4103
  * - `title` ← the latest scraped `<title>` / `og:site_name`
4015
4104
  * from the provider's domain (or `initialUrl` of the live
4016
4105
  * version when present); otherwise the domain-derived brand
4017
- * name via `builder.derive_brand_name(domain)` — e.g.
4106
+ * name via `builder.derive_brand_name(domain)` — for example,
4018
4107
  * `github.com` → `"Github"`.
4019
4108
  *
4020
4109
  * - `iconUrl` ← the cached `/images/{uuid}` once the favicon
@@ -4154,11 +4243,11 @@ export interface components {
4154
4243
  * @description Normalized registered domain.
4155
4244
  */
4156
4245
  domain: string;
4157
- /** @description URL-safe slug suggestion derived from the domain (e.g. `news.ycombinator.com` → `news-ycombinator`). Callers should treat as a starting point and may edit before submit. */
4246
+ /** @description URL-safe slug suggestion derived from the domain (for example, `news.ycombinator.com` → `news-ycombinator`). Callers should treat as a starting point and may edit before submit. */
4158
4247
  slug: string;
4159
4248
  /** @description Site title pulled from `og:site_name` / `og:title` / `<title>`. Absent when the scrape failed or returned no usable text — callers can fall back to `brandName`. */
4160
4249
  title?: string;
4161
- /** @description Brand fallback derived from the domain when the scrape returned no title (e.g. `github.com` → `Github`). Always present. */
4250
+ /** @description Brand fallback derived from the domain when the scrape returned no title (for example, `github.com` → `Github`). Always present. */
4162
4251
  brandName: string;
4163
4252
  /** @description Optional description suggestion. Currently always blank; present so callers can pre-populate the field once a description heuristic lands. Reserved for future use. */
4164
4253
  description?: string;
@@ -4174,7 +4263,7 @@ export interface components {
4174
4263
  orgId: components["schemas"]["OrgID"];
4175
4264
  /**
4176
4265
  * Format: hostname
4177
- * @description Canonical root domain (e.g. `github.com`). No scheme, no port, no path.
4266
+ * @description Canonical root domain (for example, `github.com`). No scheme, no port, no path.
4178
4267
  */
4179
4268
  domain: string;
4180
4269
  /** @description URL-safe identifier. Globally unique — pick something domain-specific like `github-followers`. */
@@ -4201,6 +4290,8 @@ export interface components {
4201
4290
  UpdateProviderRequest: {
4202
4291
  /** Format: hostname */
4203
4292
  domain?: string;
4293
+ /** @description Confirm or override the provider's region. Send `null` to clear it so the provider applies to every region. See `Provider.region`. */
4294
+ region?: string | null;
4204
4295
  title?: string;
4205
4296
  description?: string;
4206
4297
  /**
@@ -4240,7 +4331,7 @@ export interface components {
4240
4331
  /** @description Free-form change note recorded on `createMetadata`. */
4241
4332
  notes?: string;
4242
4333
  };
4243
- /** @description Partial update of a provider version. Mutable only while the version is on the `draft` or `rejected` branch; versions on `in_review` or the live channel reject all writes here. The semver does not change on update — `build_number` increments instead, giving callers a monotonic revision counter without touching the (major, minor, patch) PK. `verificationType` and `prompt` may be updated; omit either to carry the prior build's value forward. */
4334
+ /** @description Partial update of a provider version. Mutable only while the version is on the `draft` or `rejected` branch; versions on `fixed`, `in_review`, or the live channel reject all writes here. The semver does not change on update — `build_number` increments instead, giving callers a monotonic revision counter without touching the (major, minor, patch) PK. `verificationType` and `prompt` may be updated; omit either to carry the prior build's value forward. */
4244
4335
  UpdateProviderVersionRequest: {
4245
4336
  /** Format: uri */
4246
4337
  initialUrl?: string;
@@ -4256,7 +4347,7 @@ export interface components {
4256
4347
  };
4257
4348
  /** @description Body for submitting a provider version for review. Transitions the version's branch from `draft` (or `rejected`) to `in_review`. */
4258
4349
  ProviderVersionReviewSubmission: {
4259
- /** @description Optional note from the author to reviewers (changelog, areas to focus on, etc.). */
4350
+ /** @description Optional note from the author to reviewers (changelog, areas to focus on, and so on). */
4260
4351
  notes?: string;
4261
4352
  };
4262
4353
  /** @description Body for recording a decision on a provider version in `in_review`. On `APPROVED` the branch tag is cleared and the version is promoted to the live channel (becomes public). On `REJECTED` the branch becomes `rejected`. */
@@ -4464,7 +4555,7 @@ export interface components {
4464
4555
  /** @description Body for `POST /verifications/sessions/{sessionId}/events`. Status ping only — never carries the proof (use the result endpoint for that). */
4465
4556
  ReportEventRequest: {
4466
4557
  event: components["schemas"]["VerificationEvent"];
4467
- /** @description Extra detail (e.g. `claimantClientId`, or `request_id` for request-level events). */
4558
+ /** @description Extra detail (for example, `claimantClientId`, or `request_id` for request-level events). */
4468
4559
  eventData?: {
4469
4560
  [key: string]: unknown;
4470
4561
  };
@@ -4647,7 +4738,7 @@ export interface components {
4647
4738
  };
4648
4739
  /**
4649
4740
  * @description 301 Moved Permanently. Returned to HTML callers that hit a
4650
- * non-canonical URL for a resource that has a slug — e.g.
4741
+ * non-canonical URL for a resource that has a slug — for example,
4651
4742
  * `/providers/{providerId}` with no slug, or
4652
4743
  * `/providers/{providerId}/{staleSlug}` after a rename. The
4653
4744
  * `Location` header points at the canonical URL with the
@@ -4664,7 +4755,7 @@ export interface components {
4664
4755
  };
4665
4756
  };
4666
4757
  parameters: {
4667
- /** @description Semver string of the provider version, e.g. `1.4.2`. */
4758
+ /** @description Exact canonical provider version, for example `1.4.2` or `1.4.3-fixed.1`. A prerelease build never falls back to another row. */
4668
4759
  ProviderVersionPath: string;
4669
4760
  /**
4670
4761
  * @description Opaque `ETag` from a prior GET on the same resource. When
@@ -4709,7 +4800,7 @@ export interface operations {
4709
4800
  Providers: {
4710
4801
  parameters: {
4711
4802
  query?: {
4712
- /** @description Free-text search across `title`, `description`, `domain`, `primaryDataPoint`, `dataPoints`, and the latest version's `initialUrl`. Matched case-insensitively; returns results ranked by relevance (e.g., data point matches rank higher than description matches). An empty value is treated as no query (the handler redirects to the bare catalog). */
4803
+ /** @description Free-text search across `title`, `description`, `domain`, `primaryDataPoint`, `dataPoints`, and the latest version's `initialUrl`. Matched case-insensitively; returns results ranked by relevance (for example, data point matches rank higher than description matches). An empty value is treated as no query (the handler redirects to the bare catalog). */
4713
4804
  q?: string;
4714
4805
  /** @description Filter by tag. Repeat the parameter to OR multiple tags (a provider matching any of them is returned). Combined with `q` via AND. */
4715
4806
  tag?: components["schemas"]["Tag"][];
@@ -4828,6 +4919,8 @@ export interface operations {
4828
4919
  query?: {
4829
4920
  /** @description Case-insensitive substring filter on data-point names. Empty = no filter, so clearing the box doesn't need a client workaround. */
4830
4921
  q?: string;
4922
+ /** @description Narrow the page to one region of a site that serves a different product per country (`us`, `en-gb`). Providers carrying no region are always included — they work wherever the visitor is. Omit for every region. See `GET /site/{domain}` region pills. */
4923
+ region?: string;
4831
4924
  /** @description Currently selected data-point names — from a deep-link (the provider page's "Use provider") or the form's own htmx round-trips. Repeat to pass several; renders the summary panel and pre-checks the boxes. */
4832
4925
  dataPoints?: string[];
4833
4926
  /** @description Resolution mode reflected in the Continue URL. Shares `ResolveMode` with `SiteBuild`: the site form's Advanced dropdown offers `ai`, so a narrower enum here 400s the panel on every change. */
@@ -4839,7 +4932,7 @@ export interface operations {
4839
4932
  };
4840
4933
  header?: never;
4841
4934
  path: {
4842
- /** @description Website domain (e.g. `github.com`). Normalized server-side (scheme / `www.` / port / path stripped). */
4935
+ /** @description Website domain (for example, `github.com`). Normalized server-side (scheme / `www.` / port / path stripped). */
4843
4936
  domain: string;
4844
4937
  };
4845
4938
  cookie?: never;
@@ -4853,6 +4946,14 @@ export interface operations {
4853
4946
  };
4854
4947
  content: {
4855
4948
  "application/json": {
4949
+ /** @description The region the response is narrowed to, when one was requested and the site is split by region. */
4950
+ region?: string;
4951
+ /** @description Every region this site is split into. Present only when there is more than one, since a single region is not a choice. */
4952
+ regions?: {
4953
+ key: string;
4954
+ label: string;
4955
+ providerCount: number;
4956
+ }[];
4856
4957
  /** Format: hostname */
4857
4958
  domain: string;
4858
4959
  brandName: string;
@@ -4870,6 +4971,8 @@ export interface operations {
4870
4971
  SitePanel: {
4871
4972
  parameters: {
4872
4973
  query?: {
4974
+ /** @description Narrow to one region of a site that serves a different product per country (`us`, `en-gb`). Providers carrying no region are always included. Omit for every region. */
4975
+ region?: string;
4873
4976
  /** @description Selected data-point names. Repeat to pass several. */
4874
4977
  dataPoints?: string[];
4875
4978
  /** @description Resolution mode reflected in the Continue URL. Shares `ResolveMode` with `SiteBuild`: the site form's Advanced dropdown offers `ai`, so a narrower enum here 400s the panel on every change. */
@@ -5380,6 +5483,7 @@ export interface operations {
5380
5483
  visibility?: components["schemas"]["EntityVisibility"];
5381
5484
  status?: components["schemas"]["EntityStatus"];
5382
5485
  tags?: string[];
5486
+ fixWithAiEnabled?: boolean;
5383
5487
  /** Format: date-time */
5384
5488
  updatedAt?: string;
5385
5489
  }[];
@@ -5389,6 +5493,34 @@ export interface operations {
5389
5493
  default: components["responses"]["ProblemResponse"];
5390
5494
  };
5391
5495
  };
5496
+ AdminSetProviderFixWithAi: {
5497
+ parameters: {
5498
+ query?: never;
5499
+ header?: never;
5500
+ path: {
5501
+ providerId: components["schemas"]["ProviderID"];
5502
+ };
5503
+ cookie?: never;
5504
+ };
5505
+ requestBody: {
5506
+ content: {
5507
+ "application/json": components["schemas"]["AdminSetProviderFixWithAiRequest"];
5508
+ "application/x-www-form-urlencoded": components["schemas"]["AdminSetProviderFixWithAiRequest"];
5509
+ };
5510
+ };
5511
+ responses: {
5512
+ /** @description AI repair eligibility updated. */
5513
+ 204: {
5514
+ headers: {
5515
+ [name: string]: unknown;
5516
+ };
5517
+ content?: never;
5518
+ };
5519
+ 403: components["responses"]["ForbiddenResponse"];
5520
+ 404: components["responses"]["ProblemResponse"];
5521
+ default: components["responses"]["ProblemResponse"];
5522
+ };
5523
+ };
5392
5524
  AdminOrgs: {
5393
5525
  parameters: {
5394
5526
  query?: {
@@ -6407,6 +6539,80 @@ export interface operations {
6407
6539
  default: components["responses"]["ProblemResponse"];
6408
6540
  };
6409
6541
  };
6542
+ FixWithAiRecovery: {
6543
+ parameters: {
6544
+ query?: never;
6545
+ header?: never;
6546
+ path: {
6547
+ sessionId: components["schemas"]["SessionID"];
6548
+ };
6549
+ cookie?: never;
6550
+ };
6551
+ requestBody?: never;
6552
+ responses: {
6553
+ 200: components["responses"]["HTMLResponse"];
6554
+ default: components["responses"]["ProblemResponse"];
6555
+ };
6556
+ };
6557
+ CreateFixWithAiSession: {
6558
+ parameters: {
6559
+ query?: never;
6560
+ header?: never;
6561
+ path: {
6562
+ sessionId: components["schemas"]["SessionID"];
6563
+ };
6564
+ cookie?: never;
6565
+ };
6566
+ requestBody: {
6567
+ content: {
6568
+ "application/x-www-form-urlencoded": components["schemas"]["CreateFixWithAiSessionRequest"];
6569
+ "application/json": components["schemas"]["CreateFixWithAiSessionRequest"];
6570
+ };
6571
+ };
6572
+ responses: {
6573
+ /** @description HTMX verification result fragment. */
6574
+ 200: {
6575
+ headers: {
6576
+ [name: string]: unknown;
6577
+ };
6578
+ content: {
6579
+ "text/html": components["schemas"]["HtmlContent"];
6580
+ };
6581
+ };
6582
+ /** @description The new or existing repair session. */
6583
+ 201: {
6584
+ headers: {
6585
+ [name: string]: unknown;
6586
+ };
6587
+ content: {
6588
+ "application/json": components["schemas"]["VerificationSession"];
6589
+ };
6590
+ };
6591
+ default: components["responses"]["ProblemResponse"];
6592
+ };
6593
+ };
6594
+ ActivateFixWithAiRepair: {
6595
+ parameters: {
6596
+ query?: never;
6597
+ header?: never;
6598
+ path: {
6599
+ sessionId: components["schemas"]["SessionID"];
6600
+ };
6601
+ cookie?: never;
6602
+ };
6603
+ requestBody?: never;
6604
+ responses: {
6605
+ /** @description The repair was queued or was already active. */
6606
+ 204: {
6607
+ headers: {
6608
+ [name: string]: unknown;
6609
+ };
6610
+ content?: never;
6611
+ };
6612
+ 409: components["responses"]["ProblemResponse"];
6613
+ default: components["responses"]["ProblemResponse"];
6614
+ };
6615
+ };
6410
6616
  JwksJson: {
6411
6617
  parameters: {
6412
6618
  query?: never;
@@ -6754,7 +6960,11 @@ export interface operations {
6754
6960
  };
6755
6961
  cookie?: never;
6756
6962
  };
6757
- requestBody?: never;
6963
+ requestBody?: {
6964
+ content: {
6965
+ "application/json": components["schemas"]["CreateAgentBrowserSessionRequest"];
6966
+ };
6967
+ };
6758
6968
  responses: {
6759
6969
  /** @description Remote authoring browser created. */
6760
6970
  201: {
@@ -7956,7 +8166,7 @@ export interface operations {
7956
8166
  header?: never;
7957
8167
  path: {
7958
8168
  providerId: components["schemas"]["ProviderID"];
7959
- /** @description Semver string of the provider version, e.g. `1.4.2`. */
8169
+ /** @description Exact canonical provider version, for example `1.4.2` or `1.4.3-fixed.1`. A prerelease build never falls back to another row. */
7960
8170
  version: components["parameters"]["ProviderVersionPath"];
7961
8171
  };
7962
8172
  cookie?: never;
@@ -7991,7 +8201,7 @@ export interface operations {
7991
8201
  };
7992
8202
  path: {
7993
8203
  providerId: components["schemas"]["ProviderID"];
7994
- /** @description Semver string of the provider version, e.g. `1.4.2`. */
8204
+ /** @description Exact canonical provider version, for example `1.4.2` or `1.4.3-fixed.1`. A prerelease build never falls back to another row. */
7995
8205
  version: components["parameters"]["ProviderVersionPath"];
7996
8206
  };
7997
8207
  cookie?: never;
@@ -8029,7 +8239,7 @@ export interface operations {
8029
8239
  };
8030
8240
  path: {
8031
8241
  providerId: components["schemas"]["ProviderID"];
8032
- /** @description Semver string of the provider version, e.g. `1.4.2`. */
8242
+ /** @description Exact canonical provider version, for example `1.4.2` or `1.4.3-fixed.1`. A prerelease build never falls back to another row. */
8033
8243
  version: components["parameters"]["ProviderVersionPath"];
8034
8244
  };
8035
8245
  cookie?: never;
@@ -8068,7 +8278,7 @@ export interface operations {
8068
8278
  header?: never;
8069
8279
  path: {
8070
8280
  providerId: components["schemas"]["ProviderID"];
8071
- /** @description Semver string of the provider version, e.g. `1.4.2`. */
8281
+ /** @description Exact canonical provider version, for example `1.4.2` or `1.4.3-fixed.1`. A prerelease build never falls back to another row. */
8072
8282
  version: components["parameters"]["ProviderVersionPath"];
8073
8283
  };
8074
8284
  cookie?: never;
@@ -8098,7 +8308,7 @@ export interface operations {
8098
8308
  header?: never;
8099
8309
  path: {
8100
8310
  providerId: components["schemas"]["ProviderID"];
8101
- /** @description Semver string of the provider version, e.g. `1.4.2`. */
8311
+ /** @description Exact canonical provider version, for example `1.4.2` or `1.4.3-fixed.1`. A prerelease build never falls back to another row. */
8102
8312
  version: components["parameters"]["ProviderVersionPath"];
8103
8313
  };
8104
8314
  cookie?: never;
@@ -8128,7 +8338,7 @@ export interface operations {
8128
8338
  header?: never;
8129
8339
  path: {
8130
8340
  providerId: components["schemas"]["ProviderID"];
8131
- /** @description Semver string of the provider version, e.g. `1.4.2`. */
8341
+ /** @description Exact canonical provider version, for example `1.4.2` or `1.4.3-fixed.1`. A prerelease build never falls back to another row. */
8132
8342
  version: components["parameters"]["ProviderVersionPath"];
8133
8343
  };
8134
8344
  cookie?: never;
@@ -8232,7 +8442,7 @@ export interface operations {
8232
8442
  header?: never;
8233
8443
  path: {
8234
8444
  providerId: components["schemas"]["ProviderID"];
8235
- /** @description Semver string of the provider version, e.g. `1.4.2`. */
8445
+ /** @description Exact canonical provider version, for example `1.4.2` or `1.4.3-fixed.1`. A prerelease build never falls back to another row. */
8236
8446
  version: components["parameters"]["ProviderVersionPath"];
8237
8447
  };
8238
8448
  cookie?: never;
@@ -8499,7 +8709,7 @@ export interface operations {
8499
8709
  "application/json": components["schemas"]["VerificationSession"];
8500
8710
  };
8501
8711
  };
8502
- /** @description Invalid request — e.g. `context` failed a provider's `requiredContext`, or `verificationClientUrl` is not the base URL of a registered verification client. */
8712
+ /** @description Invalid request — for example, `context` failed a provider's `requiredContext`, or `verificationClientUrl` is not the base URL of a registered verification client. */
8503
8713
  400: {
8504
8714
  headers: {
8505
8715
  [name: string]: unknown;
@@ -8587,7 +8797,7 @@ export interface operations {
8587
8797
  initialUrl: string;
8588
8798
  /** @description Effective LLM/AI-agent preference for THIS provider: the session's `preferAiAgent` when set at creation, else whether the provider version's `verificationType` is `llm`. A preference — a client without agent support runs the structured recipe regardless. */
8589
8799
  preferAiAgent: boolean;
8590
- /** @description The version's webSettings geoLocation template (`{{DYNAMIC_GEO}}` / '' / ISO code), applied to this provider's requests. */
8800
+ /** @description The version's webSettings geoLocation template (`{{DYNAMIC_GEO}}` / `{{DYNAMIC_GEO_SECRET}}` / '' / ISO code), applied to this provider's requests. */
8591
8801
  geoLocation?: string;
8592
8802
  /** @description The version's webSettings.jsUserScripts — page JavaScript the Verification Client installs to run before every page load (before navigating to initialUrl), to drive login/navigation so the target requests fire. */
8593
8803
  jsUserScripts?: string;
@@ -8705,7 +8915,7 @@ export interface operations {
8705
8915
  };
8706
8916
  };
8707
8917
  404: components["responses"]["ProblemResponse"];
8708
- /** @description No subscription on the session's organization matches the terminal event — the result would be encrypted for zero keys and therefore undeliverable (e.g. the org deleted its last matching subscription mid-verification). Re-register a subscription and retry. */
8918
+ /** @description No subscription on the session's organization matches the terminal event — the result would be encrypted for zero keys and therefore undeliverable (for example, the org deleted its last matching subscription mid-verification). Re-register a subscription and retry. */
8709
8919
  409: {
8710
8920
  headers: {
8711
8921
  [name: string]: unknown;