@deepraxis/sdk 0.1.1-dev.b176367 → 0.1.1-dev.bdcd5e6

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.
@@ -4215,7 +4215,7 @@ export type AgentManaged57 = {
4215
4215
  type: 'custom';
4216
4216
  };
4217
4217
  /**
4218
- * Session spending limit, {type: "limit", max_list_cost: {amount, currency}}; null when unlimited. Creation defaults to a limit of 2000 US cents (USD 20.00) when omitted. amount is a positive integer string of US cents; removing the limit with null prevents setting it again for that session.
4218
+ * Session spending limit, {type: "limit", max_list_cost: {amount, currency}}; null when unlimited. amount is in US dollars: send an integer or up to 2 decimals ("0.50"), and responses carry exactly 2 decimals ("20.00"). Creation defaults to USD 20.00 when omitted. More decimals, zero or a number return 400. Removing the limit with null prevents setting it again for that session.
4219
4219
  */
4220
4220
  export type AgentManaged76 = {
4221
4221
  /**
@@ -4408,6 +4408,19 @@ export type AgentManaged179 = {
4408
4408
  * Cumulative count of server-executed tool invocations, broken down by tool.
4409
4409
  */
4410
4410
  server_tool_use?: null | AgentManaged181;
4411
+ /**
4412
+ * Praxis extension: priced runtime of this session (the time it was running), billed separately from list_cost and not counted against the budget. amount is in US dollars as a decimal string with exactly 6 decimals, e.g. "0.000280". Each thread's runtime is reported on that thread. /agent/v1 only.
4413
+ */
4414
+ runtime_cost?: {
4415
+ /**
4416
+ * Runtime cost in US dollars, decimal string with exactly 6 decimals.
4417
+ */
4418
+ amount: string;
4419
+ /**
4420
+ * Always USD.
4421
+ */
4422
+ currency: 'USD';
4423
+ };
4411
4424
  };
4412
4425
  export type AgentManaged183 = {
4413
4426
  [key: string]: null | string;
@@ -18102,11 +18115,11 @@ export type AgentManaged33 = {
18102
18115
  [key: string]: unknown;
18103
18116
  };
18104
18117
  /**
18105
- * Largest list-price cost the session may reach, as {amount, currency}. amount is a string of US cents, not dollars.
18118
+ * Largest list-price cost the session may reach, as {amount, currency}. amount is in US dollars with at most 2 decimals, not cents.
18106
18119
  */
18107
18120
  export type AgentManaged77 = {
18108
18121
  /**
18109
- * Cost ceiling in US cents, as a positive integer string with no leading zeros: "2000" is USD 20.00 and "50" is fifty cents. Decimals and JSON numbers return 400.
18122
+ * Amount in US dollars as a decimal string. Costs (usage.list_cost) carry exactly 6 decimals, e.g. "0.000345"; budgets (budget.max_list_cost) carry exactly 2 decimals, e.g. "20.00", and accept an integer or up to 2 decimals on input.
18110
18123
  */
18111
18124
  amount: string;
18112
18125
  /**
@@ -28037,7 +28050,7 @@ export type ApplyAgentVersionResponses = {
28037
28050
  */
28038
28051
  note: string | null;
28039
28052
  /**
28040
- * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings.
28053
+ * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings. Saving checks added or changed database, vector_store, media_library and file bindings in the organization: unknown or deleted ids return 400. If an owner is unavailable or takes more than 3 seconds, saving succeeds with verified=false for the affected bindings. Unchanged bindings keep their previous verification result and are not rechecked. workflow and script ids are not verified at save time.
28041
28054
  */
28042
28055
  bindings: Array<{
28043
28056
  /**
@@ -28056,6 +28069,10 @@ export type ApplyAgentVersionResponses = {
28056
28069
  * Optional guidance for using this resource, up to 4096 characters; does not expand access.
28057
28070
  */
28058
28071
  instructions?: string;
28072
+ /**
28073
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
28074
+ */
28075
+ readonly verified?: boolean;
28059
28076
  /**
28060
28077
  * Whether this binding grants access. Defaults to true; false immediately disables it for running sessions.
28061
28078
  */
@@ -28065,6 +28082,10 @@ export type ApplyAgentVersionResponses = {
28065
28082
  * Service type. Opens the whole service to codemode; there is no per-resource id.
28066
28083
  */
28067
28084
  type: 'search' | 'browser';
28085
+ /**
28086
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
28087
+ */
28088
+ readonly verified?: boolean;
28068
28089
  /**
28069
28090
  * Whether the service is open. Defaults to true; false immediately closes it for running sessions.
28070
28091
  */
@@ -28082,6 +28103,10 @@ export type ApplyAgentVersionResponses = {
28082
28103
  * Praxis extension: default subagent model ID, pinned in the agent revision. Call model overrides this; otherwise it overrides the roster member model or the parent model for built-ins. Null clears the default. /agent/v1 only.
28083
28104
  */
28084
28105
  subagent_model?: string | null;
28106
+ /**
28107
+ * Model used by the imagine image tool; defaults to gpt-image-2 when unset. Only models that can generate images are accepted. Omit to preserve; null clears the configured model. /agent/v1 only.
28108
+ */
28109
+ image_model?: string | null;
28085
28110
  /**
28086
28111
  * Praxis extension: inline subagent definitions stored in the configuration revision, separately from the multiagent roster. Omit to preserve; null clears. Names must be unique. Configuration storage only; runtime activation is not implemented. /agent/v1 only.
28087
28112
  */
@@ -29210,7 +29235,7 @@ export type UnarchiveAgentResponses = {
29210
29235
  */
29211
29236
  note: string | null;
29212
29237
  /**
29213
- * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings.
29238
+ * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings. Saving checks added or changed database, vector_store, media_library and file bindings in the organization: unknown or deleted ids return 400. If an owner is unavailable or takes more than 3 seconds, saving succeeds with verified=false for the affected bindings. Unchanged bindings keep their previous verification result and are not rechecked. workflow and script ids are not verified at save time.
29214
29239
  */
29215
29240
  bindings: Array<{
29216
29241
  /**
@@ -29229,6 +29254,10 @@ export type UnarchiveAgentResponses = {
29229
29254
  * Optional guidance for using this resource, up to 4096 characters; does not expand access.
29230
29255
  */
29231
29256
  instructions?: string;
29257
+ /**
29258
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
29259
+ */
29260
+ readonly verified?: boolean;
29232
29261
  /**
29233
29262
  * Whether this binding grants access. Defaults to true; false immediately disables it for running sessions.
29234
29263
  */
@@ -29238,6 +29267,10 @@ export type UnarchiveAgentResponses = {
29238
29267
  * Service type. Opens the whole service to codemode; there is no per-resource id.
29239
29268
  */
29240
29269
  type: 'search' | 'browser';
29270
+ /**
29271
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
29272
+ */
29273
+ readonly verified?: boolean;
29241
29274
  /**
29242
29275
  * Whether the service is open. Defaults to true; false immediately closes it for running sessions.
29243
29276
  */
@@ -29255,6 +29288,10 @@ export type UnarchiveAgentResponses = {
29255
29288
  * Praxis extension: default subagent model ID, pinned in the agent revision. Call model overrides this; otherwise it overrides the roster member model or the parent model for built-ins. Null clears the default. /agent/v1 only.
29256
29289
  */
29257
29290
  subagent_model?: string | null;
29291
+ /**
29292
+ * Model used by the imagine image tool; defaults to gpt-image-2 when unset. Only models that can generate images are accepted. Omit to preserve; null clears the configured model. /agent/v1 only.
29293
+ */
29294
+ image_model?: string | null;
29258
29295
  /**
29259
29296
  * Praxis extension: inline subagent definitions stored in the configuration revision, separately from the multiagent roster. Omit to preserve; null clears. Names must be unique. Configuration storage only; runtime activation is not implemented. /agent/v1 only.
29260
29297
  */
@@ -29750,37 +29787,45 @@ export type SetRunFeedbackResponses = {
29750
29787
  };
29751
29788
  };
29752
29789
  export type SetRunFeedbackResponse = SetRunFeedbackResponses[keyof SetRunFeedbackResponses];
29753
- export type ListEndUsersData = {
29790
+ export type ListCustomersData = {
29754
29791
  body?: never;
29755
29792
  path: {
29756
29793
  /**
29757
- * Active service agent identifier from agent creation or listing.
29794
+ * Active service agent id from agent creation or listing.
29758
29795
  */
29759
29796
  agent_id: string;
29760
29797
  };
29761
29798
  query?: {
29762
29799
  /**
29763
- * Maximum users per page; defaults to 20.
29800
+ * Maximum customers per page, 1 to 100; defaults to 20.
29764
29801
  */
29765
29802
  limit?: number;
29766
29803
  /**
29767
- * next_page from the previous response with the same agent, q and limit.
29804
+ * next_page from the previous response with the same q, type, blocked and limit.
29768
29805
  */
29769
29806
  page?: string;
29770
29807
  /**
29771
- * Case-sensitive literal prefix of external_user_id; omit or use an empty string for all users.
29808
+ * Case-sensitive literal prefix of the customer id; omit for all customers.
29772
29809
  */
29773
29810
  q?: string;
29811
+ /**
29812
+ * Only identified or only anonymous customers; omit for both.
29813
+ */
29814
+ type?: 'identified' | 'anonymous';
29815
+ /**
29816
+ * true for blocked customers only, false for customers who are not blocked; omit for both.
29817
+ */
29818
+ blocked?: boolean;
29774
29819
  };
29775
- url: '/agent/v1/agents/{agent_id}/end_users';
29820
+ url: '/agent/v1/agents/{agent_id}/customers';
29776
29821
  };
29777
- export type ListEndUsersErrors = {
29822
+ export type ListCustomersErrors = {
29778
29823
  /**
29779
- * Invalid identifier, prefix, limit, cursor or blocklist size; correct the reported input.
29824
+ * INVALID_PARAMS: limit outside 1 to 100, type other than identified or anonymous, blocked other than true or false, or an unknown query parameter. INVALID_PAGE_TOKEN: next_page from another query; restart without page.
29780
29825
  */
29781
29826
  400: unknown;
29782
29827
  /**
29783
- * Authenticate with a host credential.
29828
+ * Authenticate with your API key or a console session.
29784
29829
  */
29785
29830
  401: unknown;
29786
29831
  /**
@@ -29788,14 +29833,14 @@ export type ListEndUsersErrors = {
29788
29833
  */
29789
29834
  403: AgentError;
29790
29835
  /**
29791
- * Agent or requested user is unavailable to this caller, or the caller is an end user.
29836
+ * The agent is not an active service agent of your organization, or the caller is a customer access token.
29792
29837
  */
29793
29838
  404: unknown;
29794
29839
  };
29795
- export type ListEndUsersError = ListEndUsersErrors[keyof ListEndUsersErrors];
29796
- export type ListEndUsersResponses = {
29840
+ export type ListCustomersError = ListCustomersErrors[keyof ListCustomersErrors];
29841
+ export type ListCustomersResponses = {
29797
29842
  /**
29798
- * Matching users and next page cursor.
29843
+ * Matching customers and the next page cursor.
29799
29844
  */
29800
29845
  200: {
29801
29846
  /**
@@ -29803,64 +29848,81 @@ export type ListEndUsersResponses = {
29803
29848
  */
29804
29849
  data: Array<{
29805
29850
  /**
29806
- * Host application's user identifier, scoped to this organization and agent.
29851
+ * The customer id: your customer_id for an identified customer, or anon_ followed by 16 characters for an anonymous one.
29807
29852
  */
29808
- external_user_id: string;
29853
+ id: string;
29809
29854
  /**
29810
- * Earliest session creation or token issuance time; null for a preemptively blocked user with no history.
29855
+ * identified: signed in through a grant code from your backend, or seen under your own id before customer sign-in existed. anonymous: a visitor admitted with the publishable key.
29811
29856
  */
29812
- first_seen_at: string | null;
29857
+ type: 'identified' | 'anonymous';
29813
29858
  /**
29814
- * Latest session update or token issuance time; null when there is no history.
29859
+ * For an anonymous customer who later signed in, the identified customer it joined; their conversations count toward that customer. null otherwise.
29815
29860
  */
29816
- last_active_at: string | null;
29861
+ merged_into: string | null;
29817
29862
  /**
29818
- * Total sessions for this end user on this agent.
29863
+ * Whether the customer is blocked: no grant code, sign-in, renewal or new session is accepted for this id until it is unblocked.
29819
29864
  */
29820
- session_count: number;
29865
+ blocked: boolean;
29821
29866
  /**
29822
- * Accumulated recorded session cost in millionths of a US dollar; zero when no cost has been recorded.
29867
+ * Earliest sign-in, session or token issuance for this customer, in RFC 3339; null when nothing is recorded.
29823
29868
  */
29824
- cost_micro_usd: number;
29869
+ first_seen_at: string | null;
29825
29870
  /**
29826
- * Whether the embed policy currently prevents this user from receiving tokens and creating sessions.
29871
+ * Latest sign-in, token renewal, session update or token issuance, in RFC 3339; the list is ordered by it, newest first.
29827
29872
  */
29828
- blocked: boolean;
29873
+ last_seen_at: string | null;
29874
+ /**
29875
+ * Sessions of this customer on this agent, including those of anonymous customers merged into it.
29876
+ */
29877
+ session_count: number;
29878
+ /**
29879
+ * Recorded cost of those sessions: model usage (threads included) plus session runtime; "0.000000" when nothing has been recorded.
29880
+ */
29881
+ cost: {
29882
+ /**
29883
+ * Amount in US dollars, as a decimal string with exactly 6 decimals and no exponent, e.g. "0.000345" or "12.500000".
29884
+ */
29885
+ amount: string;
29886
+ /**
29887
+ * Always USD.
29888
+ */
29889
+ currency: 'USD';
29890
+ };
29829
29891
  }>;
29830
29892
  /**
29831
- * Cursor for the same agent, q and limit; null when exhausted.
29893
+ * Cursor for the next page with the same agent, q, type, blocked and limit; null when exhausted.
29832
29894
  */
29833
29895
  next_page: string | null;
29834
29896
  };
29835
29897
  };
29836
- export type ListEndUsersResponse = ListEndUsersResponses[keyof ListEndUsersResponses];
29837
- export type DeleteEndUserData = {
29898
+ export type ListCustomersResponse = ListCustomersResponses[keyof ListCustomersResponses];
29899
+ export type DeleteCustomerData = {
29838
29900
  body?: never;
29839
29901
  path: {
29840
29902
  /**
29841
- * Active service agent identifier from agent creation or listing.
29903
+ * Active service agent id from agent creation or listing.
29842
29904
  */
29843
29905
  agent_id: string;
29844
29906
  /**
29845
- * Host user identifier supplied at issuance or from end-user listing.
29907
+ * Customer id from customer listing, or your own customer_id.
29846
29908
  */
29847
- external_user_id: string;
29909
+ customer_id: string;
29848
29910
  };
29849
29911
  query: {
29850
29912
  /**
29851
- * Must exactly equal the external_user_id path parameter to confirm destructive deletion.
29913
+ * Must equal the customer_id path parameter exactly, confirming the destructive deletion.
29852
29914
  */
29853
29915
  confirm: string;
29854
29916
  };
29855
- url: '/agent/v1/agents/{agent_id}/end_users/{external_user_id}';
29917
+ url: '/agent/v1/agents/{agent_id}/customers/{customer_id}';
29856
29918
  };
29857
- export type DeleteEndUserErrors = {
29919
+ export type DeleteCustomerErrors = {
29858
29920
  /**
29859
- * Invalid identifier, prefix, limit, cursor or blocklist size; correct the reported input.
29921
+ * INVALID_PARAMS: confirm is missing or differs from customer_id; send ?confirm=<customer_id>.
29860
29922
  */
29861
29923
  400: unknown;
29862
29924
  /**
29863
- * Authenticate with a host credential.
29925
+ * Authenticate with your API key or a console session.
29864
29926
  */
29865
29927
  401: unknown;
29866
29928
  /**
@@ -29868,12 +29930,12 @@ export type DeleteEndUserErrors = {
29868
29930
  */
29869
29931
  403: AgentError;
29870
29932
  /**
29871
- * Agent or requested user is unavailable to this caller, or the caller is an end user.
29933
+ * CUSTOMER_NOT_FOUND: the customer is unknown on this agent, or the caller is a customer access token.
29872
29934
  */
29873
29935
  404: unknown;
29874
29936
  };
29875
- export type DeleteEndUserError = DeleteEndUserErrors[keyof DeleteEndUserErrors];
29876
- export type DeleteEndUserResponses = {
29937
+ export type DeleteCustomerError = DeleteCustomerErrors[keyof DeleteCustomerErrors];
29938
+ export type DeleteCustomerResponses = {
29877
29939
  /**
29878
29940
  * Deletion accepted; poll the deletion endpoint until done or failed.
29879
29941
  */
@@ -29888,29 +29950,25 @@ export type DeleteEndUserResponses = {
29888
29950
  status: 'pending';
29889
29951
  };
29890
29952
  };
29891
- export type DeleteEndUserResponse = DeleteEndUserResponses[keyof DeleteEndUserResponses];
29892
- export type GetEndUserData = {
29953
+ export type DeleteCustomerResponse = DeleteCustomerResponses[keyof DeleteCustomerResponses];
29954
+ export type GetCustomerData = {
29893
29955
  body?: never;
29894
29956
  path: {
29895
29957
  /**
29896
- * Active service agent identifier from agent creation or listing.
29958
+ * Active service agent id from agent creation or listing.
29897
29959
  */
29898
29960
  agent_id: string;
29899
29961
  /**
29900
- * Host user identifier supplied at issuance or from end-user listing.
29962
+ * Customer id from customer listing, or your own customer_id.
29901
29963
  */
29902
- external_user_id: string;
29964
+ customer_id: string;
29903
29965
  };
29904
29966
  query?: never;
29905
- url: '/agent/v1/agents/{agent_id}/end_users/{external_user_id}';
29967
+ url: '/agent/v1/agents/{agent_id}/customers/{customer_id}';
29906
29968
  };
29907
- export type GetEndUserErrors = {
29969
+ export type GetCustomerErrors = {
29908
29970
  /**
29909
- * Invalid identifier, prefix, limit, cursor or blocklist size; correct the reported input.
29910
- */
29911
- 400: unknown;
29912
- /**
29913
- * Authenticate with a host credential.
29971
+ * Authenticate with your API key or a console session.
29914
29972
  */
29915
29973
  401: unknown;
29916
29974
  /**
@@ -29918,42 +29976,59 @@ export type GetEndUserErrors = {
29918
29976
  */
29919
29977
  403: AgentError;
29920
29978
  /**
29921
- * Agent or requested user is unavailable to this caller, or the caller is an end user.
29979
+ * CUSTOMER_NOT_FOUND: the customer is unknown on this agent, or the caller is a customer access token.
29922
29980
  */
29923
29981
  404: unknown;
29924
29982
  };
29925
- export type GetEndUserError = GetEndUserErrors[keyof GetEndUserErrors];
29926
- export type GetEndUserResponses = {
29983
+ export type GetCustomerError = GetCustomerErrors[keyof GetCustomerErrors];
29984
+ export type GetCustomerResponses = {
29927
29985
  /**
29928
- * Current end-user view.
29986
+ * The customer with its recent sessions.
29929
29987
  */
29930
29988
  200: {
29931
29989
  /**
29932
- * Host application's user identifier, scoped to this organization and agent.
29990
+ * The customer id: your customer_id for an identified customer, or anon_ followed by 16 characters for an anonymous one.
29933
29991
  */
29934
- external_user_id: string;
29992
+ id: string;
29935
29993
  /**
29936
- * Earliest session creation or token issuance time; null for a preemptively blocked user with no history.
29994
+ * identified: signed in through a grant code from your backend, or seen under your own id before customer sign-in existed. anonymous: a visitor admitted with the publishable key.
29937
29995
  */
29938
- first_seen_at: string | null;
29996
+ type: 'identified' | 'anonymous';
29939
29997
  /**
29940
- * Latest session update or token issuance time; null when there is no history.
29998
+ * For an anonymous customer who later signed in, the identified customer it joined; their conversations count toward that customer. null otherwise.
29941
29999
  */
29942
- last_active_at: string | null;
30000
+ merged_into: string | null;
29943
30001
  /**
29944
- * Total sessions for this end user on this agent.
30002
+ * Whether the customer is blocked: no grant code, sign-in, renewal or new session is accepted for this id until it is unblocked.
29945
30003
  */
29946
- session_count: number;
30004
+ blocked: boolean;
29947
30005
  /**
29948
- * Accumulated recorded session cost in millionths of a US dollar; zero when no cost has been recorded.
30006
+ * Earliest sign-in, session or token issuance for this customer, in RFC 3339; null when nothing is recorded.
29949
30007
  */
29950
- cost_micro_usd: number;
30008
+ first_seen_at: string | null;
29951
30009
  /**
29952
- * Whether the embed policy currently prevents this user from receiving tokens and creating sessions.
30010
+ * Latest sign-in, token renewal, session update or token issuance, in RFC 3339; the list is ordered by it, newest first.
29953
30011
  */
29954
- blocked: boolean;
30012
+ last_seen_at: string | null;
30013
+ /**
30014
+ * Sessions of this customer on this agent, including those of anonymous customers merged into it.
30015
+ */
30016
+ session_count: number;
29955
30017
  /**
29956
- * Up to twenty sessions, ordered by most recent update first.
30018
+ * Recorded cost of those sessions: model usage (threads included) plus session runtime; "0.000000" when nothing has been recorded.
30019
+ */
30020
+ cost: {
30021
+ /**
30022
+ * Amount in US dollars, as a decimal string with exactly 6 decimals and no exponent, e.g. "0.000345" or "12.500000".
30023
+ */
30024
+ amount: string;
30025
+ /**
30026
+ * Always USD.
30027
+ */
30028
+ currency: 'USD';
30029
+ };
30030
+ /**
30031
+ * Up to twenty sessions of the customer, and of anonymous customers merged into it, most recently updated first.
29957
30032
  */
29958
30033
  recent_sessions: Array<{
29959
30034
  /**
@@ -29979,29 +30054,25 @@ export type GetEndUserResponses = {
29979
30054
  }>;
29980
30055
  };
29981
30056
  };
29982
- export type GetEndUserResponse = GetEndUserResponses[keyof GetEndUserResponses];
29983
- export type GetEndUserDeletionData = {
30057
+ export type GetCustomerResponse = GetCustomerResponses[keyof GetCustomerResponses];
30058
+ export type GetCustomerDeletionData = {
29984
30059
  body?: never;
29985
30060
  path: {
29986
30061
  /**
29987
- * Active service agent identifier from agent creation or listing.
30062
+ * Active service agent id from agent creation or listing.
29988
30063
  */
29989
30064
  agent_id: string;
29990
30065
  /**
29991
- * Host user identifier supplied at issuance or from end-user listing.
30066
+ * Customer id from customer listing, or your own customer_id.
29992
30067
  */
29993
- external_user_id: string;
30068
+ customer_id: string;
29994
30069
  };
29995
30070
  query?: never;
29996
- url: '/agent/v1/agents/{agent_id}/end_users/{external_user_id}/deletion';
30071
+ url: '/agent/v1/agents/{agent_id}/customers/{customer_id}/deletion';
29997
30072
  };
29998
- export type GetEndUserDeletionErrors = {
29999
- /**
30000
- * Invalid identifier, prefix, limit, cursor or blocklist size; correct the reported input.
30001
- */
30002
- 400: unknown;
30073
+ export type GetCustomerDeletionErrors = {
30003
30074
  /**
30004
- * Authenticate with a host credential.
30075
+ * Authenticate with your API key or a console session.
30005
30076
  */
30006
30077
  401: unknown;
30007
30078
  /**
@@ -30009,14 +30080,14 @@ export type GetEndUserDeletionErrors = {
30009
30080
  */
30010
30081
  403: AgentError;
30011
30082
  /**
30012
- * Agent or requested user is unavailable to this caller, or the caller is an end user.
30083
+ * CUSTOMER_NOT_FOUND or no deletion task: the customer or task is unknown, or the caller is a customer access token.
30013
30084
  */
30014
30085
  404: unknown;
30015
30086
  };
30016
- export type GetEndUserDeletionError = GetEndUserDeletionErrors[keyof GetEndUserDeletionErrors];
30017
- export type GetEndUserDeletionResponses = {
30087
+ export type GetCustomerDeletionError = GetCustomerDeletionErrors[keyof GetCustomerDeletionErrors];
30088
+ export type GetCustomerDeletionResponses = {
30018
30089
  /**
30019
- * Latest deletion task and snapshot counts.
30090
+ * The latest deletion task and its snapshot counts.
30020
30091
  */
30021
30092
  200: {
30022
30093
  /**
@@ -30070,29 +30141,25 @@ export type GetEndUserDeletionResponses = {
30070
30141
  updated_at: string;
30071
30142
  };
30072
30143
  };
30073
- export type GetEndUserDeletionResponse = GetEndUserDeletionResponses[keyof GetEndUserDeletionResponses];
30074
- export type RevokeEndUserTokensData = {
30144
+ export type GetCustomerDeletionResponse = GetCustomerDeletionResponses[keyof GetCustomerDeletionResponses];
30145
+ export type BlockCustomerData = {
30075
30146
  body?: never;
30076
30147
  path: {
30077
30148
  /**
30078
- * Active service agent identifier from agent creation or listing.
30149
+ * Active service agent id from agent creation or listing.
30079
30150
  */
30080
30151
  agent_id: string;
30081
30152
  /**
30082
- * Host user identifier supplied at issuance or from end-user listing.
30153
+ * Customer id from customer listing, or your own customer_id.
30083
30154
  */
30084
- external_user_id: string;
30155
+ customer_id: string;
30085
30156
  };
30086
30157
  query?: never;
30087
- url: '/agent/v1/agents/{agent_id}/end_users/{external_user_id}/revoke_tokens';
30158
+ url: '/agent/v1/agents/{agent_id}/customers/{customer_id}/block';
30088
30159
  };
30089
- export type RevokeEndUserTokensErrors = {
30090
- /**
30091
- * Invalid identifier, prefix, limit, cursor or blocklist size; correct the reported input.
30092
- */
30093
- 400: unknown;
30160
+ export type BlockCustomerErrors = {
30094
30161
  /**
30095
- * Authenticate with a host credential.
30162
+ * Authenticate with your API key or a console session.
30096
30163
  */
30097
30164
  401: unknown;
30098
30165
  /**
@@ -30100,49 +30167,82 @@ export type RevokeEndUserTokensErrors = {
30100
30167
  */
30101
30168
  403: AgentError;
30102
30169
  /**
30103
- * Agent or requested user is unavailable to this caller, or the caller is an end user.
30170
+ * CUSTOMER_NOT_FOUND: the customer is unknown on this agent, or the caller is a customer access token.
30104
30171
  */
30105
30172
  404: unknown;
30106
30173
  /**
30107
- * Credential revocation failed; grant timestamps remain unchanged. A requested block remains in effect; retry to finish revocation.
30174
+ * Credential revocation failed; the customer stays blocked if you asked to block it. Retry to finish revoking.
30108
30175
  */
30109
30176
  502: unknown;
30110
30177
  };
30111
- export type RevokeEndUserTokensError = RevokeEndUserTokensErrors[keyof RevokeEndUserTokensErrors];
30112
- export type RevokeEndUserTokensResponses = {
30178
+ export type BlockCustomerError = BlockCustomerErrors[keyof BlockCustomerErrors];
30179
+ export type BlockCustomerResponses = {
30113
30180
  /**
30114
- * Number of newly revoked grants.
30181
+ * The customer after the change.
30115
30182
  */
30116
30183
  200: {
30117
30184
  /**
30118
- * Number of previously unrevoked grants marked revoked by this request.
30185
+ * The customer id: your customer_id for an identified customer, or anon_ followed by 16 characters for an anonymous one.
30119
30186
  */
30120
- revoked: number;
30187
+ id: string;
30188
+ /**
30189
+ * identified: signed in through a grant code from your backend, or seen under your own id before customer sign-in existed. anonymous: a visitor admitted with the publishable key.
30190
+ */
30191
+ type: 'identified' | 'anonymous';
30192
+ /**
30193
+ * For an anonymous customer who later signed in, the identified customer it joined; their conversations count toward that customer. null otherwise.
30194
+ */
30195
+ merged_into: string | null;
30196
+ /**
30197
+ * Whether the customer is blocked: no grant code, sign-in, renewal or new session is accepted for this id until it is unblocked.
30198
+ */
30199
+ blocked: boolean;
30200
+ /**
30201
+ * Earliest sign-in, session or token issuance for this customer, in RFC 3339; null when nothing is recorded.
30202
+ */
30203
+ first_seen_at: string | null;
30204
+ /**
30205
+ * Latest sign-in, token renewal, session update or token issuance, in RFC 3339; the list is ordered by it, newest first.
30206
+ */
30207
+ last_seen_at: string | null;
30208
+ /**
30209
+ * Sessions of this customer on this agent, including those of anonymous customers merged into it.
30210
+ */
30211
+ session_count: number;
30212
+ /**
30213
+ * Recorded cost of those sessions: model usage (threads included) plus session runtime; "0.000000" when nothing has been recorded.
30214
+ */
30215
+ cost: {
30216
+ /**
30217
+ * Amount in US dollars, as a decimal string with exactly 6 decimals and no exponent, e.g. "0.000345" or "12.500000".
30218
+ */
30219
+ amount: string;
30220
+ /**
30221
+ * Always USD.
30222
+ */
30223
+ currency: 'USD';
30224
+ };
30121
30225
  };
30122
30226
  };
30123
- export type RevokeEndUserTokensResponse = RevokeEndUserTokensResponses[keyof RevokeEndUserTokensResponses];
30124
- export type BlockEndUserData = {
30227
+ export type BlockCustomerResponse = BlockCustomerResponses[keyof BlockCustomerResponses];
30228
+ export type UnblockCustomerData = {
30125
30229
  body?: never;
30126
30230
  path: {
30127
30231
  /**
30128
- * Active service agent identifier from agent creation or listing.
30232
+ * Active service agent id from agent creation or listing.
30129
30233
  */
30130
30234
  agent_id: string;
30131
30235
  /**
30132
- * Host user identifier supplied at issuance or from end-user listing.
30236
+ * Customer id from customer listing, or your own customer_id.
30133
30237
  */
30134
- external_user_id: string;
30238
+ customer_id: string;
30135
30239
  };
30136
30240
  query?: never;
30137
- url: '/agent/v1/agents/{agent_id}/end_users/{external_user_id}/block';
30241
+ url: '/agent/v1/agents/{agent_id}/customers/{customer_id}/unblock';
30138
30242
  };
30139
- export type BlockEndUserErrors = {
30140
- /**
30141
- * Invalid identifier, prefix, limit, cursor or blocklist size; correct the reported input.
30142
- */
30143
- 400: unknown;
30243
+ export type UnblockCustomerErrors = {
30144
30244
  /**
30145
- * Authenticate with a host credential.
30245
+ * Authenticate with your API key or a console session.
30146
30246
  */
30147
30247
  401: unknown;
30148
30248
  /**
@@ -30150,73 +30250,120 @@ export type BlockEndUserErrors = {
30150
30250
  */
30151
30251
  403: AgentError;
30152
30252
  /**
30153
- * Agent or requested user is unavailable to this caller, or the caller is an end user.
30253
+ * CUSTOMER_NOT_FOUND: the customer is unknown on this agent, or the caller is a customer access token.
30154
30254
  */
30155
30255
  404: unknown;
30156
- /**
30157
- * Configure an embed policy before blocking or unblocking; retry if a concurrent policy update caused the conflict.
30158
- */
30159
- 409: unknown;
30160
- /**
30161
- * Credential revocation failed; grant timestamps remain unchanged. A requested block remains in effect; retry to finish revocation.
30162
- */
30163
- 502: unknown;
30164
30256
  };
30165
- export type BlockEndUserError = BlockEndUserErrors[keyof BlockEndUserErrors];
30166
- export type BlockEndUserResponses = {
30257
+ export type UnblockCustomerError = UnblockCustomerErrors[keyof UnblockCustomerErrors];
30258
+ export type UnblockCustomerResponses = {
30167
30259
  /**
30168
- * Current end-user view.
30260
+ * The customer after the change.
30169
30261
  */
30170
30262
  200: {
30171
30263
  /**
30172
- * Host application's user identifier, scoped to this organization and agent.
30264
+ * The customer id: your customer_id for an identified customer, or anon_ followed by 16 characters for an anonymous one.
30173
30265
  */
30174
- external_user_id: string;
30266
+ id: string;
30175
30267
  /**
30176
- * Earliest session creation or token issuance time; null for a preemptively blocked user with no history.
30268
+ * identified: signed in through a grant code from your backend, or seen under your own id before customer sign-in existed. anonymous: a visitor admitted with the publishable key.
30177
30269
  */
30178
- first_seen_at: string | null;
30270
+ type: 'identified' | 'anonymous';
30179
30271
  /**
30180
- * Latest session update or token issuance time; null when there is no history.
30272
+ * For an anonymous customer who later signed in, the identified customer it joined; their conversations count toward that customer. null otherwise.
30181
30273
  */
30182
- last_active_at: string | null;
30274
+ merged_into: string | null;
30183
30275
  /**
30184
- * Total sessions for this end user on this agent.
30276
+ * Whether the customer is blocked: no grant code, sign-in, renewal or new session is accepted for this id until it is unblocked.
30185
30277
  */
30186
- session_count: number;
30278
+ blocked: boolean;
30279
+ /**
30280
+ * Earliest sign-in, session or token issuance for this customer, in RFC 3339; null when nothing is recorded.
30281
+ */
30282
+ first_seen_at: string | null;
30187
30283
  /**
30188
- * Accumulated recorded session cost in millionths of a US dollar; zero when no cost has been recorded.
30284
+ * Latest sign-in, token renewal, session update or token issuance, in RFC 3339; the list is ordered by it, newest first.
30189
30285
  */
30190
- cost_micro_usd: number;
30286
+ last_seen_at: string | null;
30191
30287
  /**
30192
- * Whether the embed policy currently prevents this user from receiving tokens and creating sessions.
30288
+ * Sessions of this customer on this agent, including those of anonymous customers merged into it.
30193
30289
  */
30194
- blocked: boolean;
30290
+ session_count: number;
30291
+ /**
30292
+ * Recorded cost of those sessions: model usage (threads included) plus session runtime; "0.000000" when nothing has been recorded.
30293
+ */
30294
+ cost: {
30295
+ /**
30296
+ * Amount in US dollars, as a decimal string with exactly 6 decimals and no exponent, e.g. "0.000345" or "12.500000".
30297
+ */
30298
+ amount: string;
30299
+ /**
30300
+ * Always USD.
30301
+ */
30302
+ currency: 'USD';
30303
+ };
30195
30304
  };
30196
30305
  };
30197
- export type BlockEndUserResponse = BlockEndUserResponses[keyof BlockEndUserResponses];
30198
- export type UnblockEndUserData = {
30306
+ export type UnblockCustomerResponse = UnblockCustomerResponses[keyof UnblockCustomerResponses];
30307
+ export type RevokeCustomerTokensData = {
30199
30308
  body?: never;
30200
30309
  path: {
30201
30310
  /**
30202
- * Active service agent identifier from agent creation or listing.
30311
+ * Active service agent id from agent creation or listing.
30203
30312
  */
30204
30313
  agent_id: string;
30205
30314
  /**
30206
- * Host user identifier supplied at issuance or from end-user listing.
30315
+ * Customer id from customer listing, or your own customer_id.
30207
30316
  */
30208
- external_user_id: string;
30317
+ customer_id: string;
30209
30318
  };
30210
30319
  query?: never;
30211
- url: '/agent/v1/agents/{agent_id}/end_users/{external_user_id}/unblock';
30320
+ url: '/agent/v1/agents/{agent_id}/customers/{customer_id}/revoke_tokens';
30212
30321
  };
30213
- export type UnblockEndUserErrors = {
30322
+ export type RevokeCustomerTokensErrors = {
30214
30323
  /**
30215
- * Invalid identifier, prefix, limit, cursor or blocklist size; correct the reported input.
30324
+ * Authenticate with your API key or a console session.
30216
30325
  */
30217
- 400: unknown;
30326
+ 401: unknown;
30327
+ /**
30328
+ * permission_error: the credential's role or bound resources do not allow this operation. Use a key with access to the agent domain and its resources.
30329
+ */
30330
+ 403: AgentError;
30331
+ /**
30332
+ * CUSTOMER_NOT_FOUND: the customer is unknown on this agent, or the caller is a customer access token.
30333
+ */
30334
+ 404: unknown;
30335
+ /**
30336
+ * Credential revocation failed; the customer stays blocked if you asked to block it. Retry to finish revoking.
30337
+ */
30338
+ 502: unknown;
30339
+ };
30340
+ export type RevokeCustomerTokensError = RevokeCustomerTokensErrors[keyof RevokeCustomerTokensErrors];
30341
+ export type RevokeCustomerTokensResponses = {
30342
+ /**
30343
+ * How many access tokens this request revoked.
30344
+ */
30345
+ 200: {
30346
+ /**
30347
+ * Number of access tokens this request revoked; 0 when none was live.
30348
+ */
30349
+ revoked: number;
30350
+ };
30351
+ };
30352
+ export type RevokeCustomerTokensResponse = RevokeCustomerTokensResponses[keyof RevokeCustomerTokensResponses];
30353
+ export type GetAgentAppearanceData = {
30354
+ body?: never;
30355
+ path: {
30356
+ /**
30357
+ * Service agent id from agent creation or listing; with a customer access token, the agent the token was issued for.
30358
+ */
30359
+ agent_id: string;
30360
+ };
30361
+ query?: never;
30362
+ url: '/agent/v1/agents/{agent_id}/appearance';
30363
+ };
30364
+ export type GetAgentAppearanceErrors = {
30218
30365
  /**
30219
- * Authenticate with a host credential.
30366
+ * Authenticate with a customer access token of this agent, your API key or a console session.
30220
30367
  */
30221
30368
  401: unknown;
30222
30369
  /**
@@ -30224,47 +30371,217 @@ export type UnblockEndUserErrors = {
30224
30371
  */
30225
30372
  403: AgentError;
30226
30373
  /**
30227
- * Agent or requested user is unavailable to this caller, or the caller is an end user.
30374
+ * AGENT_NOT_FOUND: the agent is absent, archived or not a service agent, or the customer access token belongs to another agent.
30228
30375
  */
30229
30376
  404: unknown;
30230
30377
  /**
30231
- * Configure an embed policy before blocking or unblocking; retry if a concurrent policy update caused the conflict.
30378
+ * Appearance is temporarily unavailable; use the default appearance and continue the conversation.
30232
30379
  */
30233
- 409: unknown;
30380
+ 503: unknown;
30234
30381
  };
30235
- export type UnblockEndUserError = UnblockEndUserErrors[keyof UnblockEndUserErrors];
30236
- export type UnblockEndUserResponses = {
30382
+ export type GetAgentAppearanceError = GetAgentAppearanceErrors[keyof GetAgentAppearanceErrors];
30383
+ export type GetAgentAppearanceResponses = {
30237
30384
  /**
30238
- * Current end-user view.
30385
+ * Saved Kit options, at most 8192 UTF-8 JSON bytes. Omitted groups use Kit defaults; an unconfigured agent returns an empty object.
30239
30386
  */
30240
30387
  200: {
30241
30388
  /**
30242
- * Host application's user identifier, scoped to this organization and agent.
30389
+ * Public identity displayed on the chat page, independent of the internal agent name.
30390
+ */
30391
+ agent?: {
30392
+ /**
30393
+ * Display name; omission keeps the neutral browser-language default.
30394
+ */
30395
+ name?: string;
30396
+ /**
30397
+ * Optional HTTPS avatar image URL; non-HTTPS images are rejected.
30398
+ */
30399
+ avatar?: string;
30400
+ };
30401
+ /**
30402
+ * Loader default: inline stays in the page, sidebar attaches to the edge, popup floats above its launcher, modal centers an overlay. A script data-layout overrides it; Hosted always uses inline.
30243
30403
  */
30244
- external_user_id: string;
30404
+ layout?: 'inline' | 'sidebar' | 'popup' | 'modal';
30245
30405
  /**
30246
- * Earliest session creation or token issuance time; null for a preemptively blocked user with no history.
30406
+ * Default entry button for the loader; an explicit script data-launcher takes precedence.
30247
30407
  */
30248
- first_seen_at: string | null;
30408
+ launcher?: {
30409
+ /**
30410
+ * Entry control: none hides the launcher, bubble shows a button, mascot shows a character that reacts while the visitor types and the agent thinks and answers. A mascot needs pack.
30411
+ */
30412
+ type: 'none' | 'bubble' | 'mascot';
30413
+ /**
30414
+ * Mascot images: exactly one of preset or images. Send pack, not image.
30415
+ */
30416
+ pack?: {
30417
+ /**
30418
+ * Built-in character: mint (mint support girl), cat (cat-eared girl) or bot (small robot).
30419
+ */
30420
+ preset?: 'mint' | 'cat' | 'bot';
30421
+ /**
30422
+ * One HTTPS image per slot; only idle is required and a missing slot shows idle. Use 2:3 canvases with the feet bottom-centered on a transparent background; PNG or WebP stay still, GIF, WebP and APNG play as they are.
30423
+ */
30424
+ images?: {
30425
+ /**
30426
+ * Resting state.
30427
+ */
30428
+ idle: string;
30429
+ /**
30430
+ * Page open and while the greeting bubble shows.
30431
+ */
30432
+ greet?: string;
30433
+ /**
30434
+ * The visitor is typing in the composer.
30435
+ */
30436
+ listening?: string;
30437
+ /**
30438
+ * After the visitor sends, before the first reply text.
30439
+ */
30440
+ thinking?: string;
30441
+ /**
30442
+ * While the reply streams; alternates with talking-2 every 220 ms.
30443
+ */
30444
+ talking?: string;
30445
+ /**
30446
+ * Second mouth frame of talking, mouth closed; without it talking alternates with idle.
30447
+ */
30448
+ 'talking-2'?: string;
30449
+ /**
30450
+ * The last turn failed or was refused.
30451
+ */
30452
+ sorry?: string;
30453
+ /**
30454
+ * No interaction for 60 seconds; hover or click wakes the mascot.
30455
+ */
30456
+ sleep?: string;
30457
+ };
30458
+ };
30459
+ /**
30460
+ * Legacy single mascot image, read as pack.images.idle. When pack is present, pack wins.
30461
+ */
30462
+ image?: string;
30463
+ /**
30464
+ * float (default) gently floats the mascot, bounces on hover and waves with the greeting; none keeps it still. Reduced-motion settings always win.
30465
+ */
30466
+ motion?: 'float' | 'none';
30467
+ /**
30468
+ * Launcher corner: bottom-right is the default; bottom-left uses the opposite corner.
30469
+ */
30470
+ position?: 'bottom-right' | 'bottom-left';
30471
+ /**
30472
+ * Accessible entry button label and bubble text; omission uses the default chat label.
30473
+ */
30474
+ label?: string;
30475
+ };
30249
30476
  /**
30250
- * Latest session update or token issuance time; null when there is no history.
30477
+ * Visible chat heading; omitted title uses the public agent name.
30251
30478
  */
30252
- last_active_at: string | null;
30479
+ header?: {
30480
+ /**
30481
+ * Optional heading text shown instead of the public agent name.
30482
+ */
30483
+ title?: string;
30484
+ /**
30485
+ * Optional secondary line beneath the heading.
30486
+ */
30487
+ subtitle?: string;
30488
+ /**
30489
+ * Optional HTTPS image shown in the heading avatar position.
30490
+ */
30491
+ icon?: string;
30492
+ };
30253
30493
  /**
30254
- * Total sessions for this end user on this agent.
30494
+ * Visual tokens applied to the conversation and header; omitted fields use Kit defaults.
30255
30495
  */
30256
- session_count: number;
30496
+ theme?: {
30497
+ /**
30498
+ * light or dark selects a fixed scheme; system follows the device preference.
30499
+ */
30500
+ colorScheme?: 'light' | 'dark' | 'system';
30501
+ /**
30502
+ * Explicit opaque CSS accent color, for example #167A43.
30503
+ */
30504
+ accent?: string;
30505
+ /**
30506
+ * Explicit opaque CSS background color, for example #ffffff.
30507
+ */
30508
+ surface?: string;
30509
+ /**
30510
+ * neutral uses grayscale surfaces, warm uses warm tones, cool uses cool tones.
30511
+ */
30512
+ grayscale?: 'neutral' | 'warm' | 'cool';
30513
+ /**
30514
+ * Corner rounding: none is square, sm is small, md is medium, lg is large, full is fully rounded.
30515
+ */
30516
+ radius?: 'none' | 'sm' | 'md' | 'lg' | 'full';
30517
+ /**
30518
+ * Spacing: compact reduces gaps, normal uses defaults, spacious increases gaps.
30519
+ */
30520
+ density?: 'compact' | 'normal' | 'spacious';
30521
+ /**
30522
+ * CSS font family list using fonts available on the device; external font loading is not configured here.
30523
+ */
30524
+ fontFamily?: string;
30525
+ /**
30526
+ * Positive base font size in CSS pixels; omission preserves Kit sizing.
30527
+ */
30528
+ fontSize?: number;
30529
+ };
30257
30530
  /**
30258
- * Accumulated recorded session cost in millionths of a US dollar; zero when no cost has been recorded.
30531
+ * Reserved Kit locale preference: zh for Chinese, en for English. Kit currently passes this option through without translating all controls.
30259
30532
  */
30260
- cost_micro_usd: number;
30533
+ locale?: 'zh' | 'en';
30261
30534
  /**
30262
- * Whether the embed policy currently prevents this user from receiving tokens and creating sessions.
30535
+ * Content displayed before the first message in a conversation.
30263
30536
  */
30264
- blocked: boolean;
30537
+ startScreen?: {
30538
+ /**
30539
+ * Optional welcome text on the empty conversation.
30540
+ */
30541
+ greeting?: string;
30542
+ /**
30543
+ * Up to four suggested questions; clicking a label sends its prompt text.
30544
+ */
30545
+ prompts?: Array<{
30546
+ /**
30547
+ * Visible suggested-question button text.
30548
+ */
30549
+ label: string;
30550
+ /**
30551
+ * User message sent when this suggestion is selected.
30552
+ */
30553
+ prompt: string;
30554
+ }>;
30555
+ };
30556
+ /**
30557
+ * Message input appearance; transport and attachment settings are excluded.
30558
+ */
30559
+ composer?: {
30560
+ /**
30561
+ * Hint shown when the message input is empty.
30562
+ */
30563
+ placeholder?: string;
30564
+ };
30565
+ /**
30566
+ * Optional notice displayed beside the conversation composer.
30567
+ */
30568
+ disclaimer?: string;
30569
+ /**
30570
+ * Optional text below the conversation.
30571
+ */
30572
+ footer?: string;
30573
+ /**
30574
+ * Availability of the conversation history control.
30575
+ */
30576
+ history?: {
30577
+ /**
30578
+ * False hides history; omission uses the default enabled state.
30579
+ */
30580
+ enabled?: boolean;
30581
+ };
30265
30582
  };
30266
30583
  };
30267
- export type UnblockEndUserResponse = UnblockEndUserResponses[keyof UnblockEndUserResponses];
30584
+ export type GetAgentAppearanceResponse = GetAgentAppearanceResponses[keyof GetAgentAppearanceResponses];
30268
30585
  export type CreateCustomerGrantCodeData = {
30269
30586
  body: {
30270
30587
  /**
@@ -30276,9 +30593,27 @@ export type CreateCustomerGrantCodeData = {
30276
30593
  */
30277
30594
  version?: number;
30278
30595
  /**
30279
- * Budget in cents for each session the customer starts. Defaults to the embed policy session budget and cannot exceed its maximum.
30596
+ * Budget for each session the customer starts, in the same shape as a session budget. Defaults to the embed policy session budget and cannot exceed its maximum.
30280
30597
  */
30281
- budget_cents?: number;
30598
+ budget?: {
30599
+ /**
30600
+ * Budget kind; always limit.
30601
+ */
30602
+ type: 'limit';
30603
+ /**
30604
+ * Spending limit of each session the customer starts.
30605
+ */
30606
+ max_list_cost: {
30607
+ /**
30608
+ * Largest list cost of each session, in US dollars, as a decimal string with at most 2 fraction digits, e.g. "0.50". "0" lets the customer sign in without spending.
30609
+ */
30610
+ amount: string;
30611
+ /**
30612
+ * Always USD.
30613
+ */
30614
+ currency: 'USD';
30615
+ };
30616
+ };
30282
30617
  /**
30283
30618
  * Optional context the agent receives at the start of each session, as text blocks, limited to 8192 UTF-8 bytes in total.
30284
30619
  */
@@ -30570,439 +30905,6 @@ export type DeleteCurrentCustomerAccessTokenResponses = {
30570
30905
  204: void;
30571
30906
  };
30572
30907
  export type DeleteCurrentCustomerAccessTokenResponse = DeleteCurrentCustomerAccessTokenResponses[keyof DeleteCurrentCustomerAccessTokenResponses];
30573
- export type ExchangeEmbedCodeData = {
30574
- body: {
30575
- /**
30576
- * Single-use credential from the c fragment parameter of hosted_url returned by embed token creation. Valid for 60 seconds.
30577
- */
30578
- code: string;
30579
- };
30580
- path?: never;
30581
- query?: never;
30582
- url: '/agent/v1/embed/exchange';
30583
- };
30584
- export type ExchangeEmbedCodeErrors = {
30585
- /**
30586
- * Expected a JSON object containing only code. Correct the request body.
30587
- */
30588
- 400: unknown;
30589
- /**
30590
- * UNAUTHENTICATED (or INVALID_API_KEY, API_KEY_DISABLED, API_KEY_EXPIRED, INVALID_API_TOKEN, API_TOKEN_EXPIRED, API_TOKEN_REVOKED): the API key is missing, invalid or revoked. Send a valid key as X-API-Key or as a Bearer token.
30591
- */
30592
- 401: AgentError;
30593
- /**
30594
- * permission_error: the credential's role or bound resources do not allow this operation. Use a key with access to the agent domain and its resources.
30595
- */
30596
- 403: AgentError;
30597
- /**
30598
- * The code is expired, already used or unknown. Return to the host website for a new link; all three cases have the same response body.
30599
- */
30600
- 404: unknown;
30601
- /**
30602
- * The IP minute limit is reached. Wait for Retry-After before trying a fresh link.
30603
- */
30604
- 429: unknown;
30605
- /**
30606
- * Exchange or rate limiting is unavailable. Return to the host website for a new link later.
30607
- */
30608
- 503: unknown;
30609
- };
30610
- export type ExchangeEmbedCodeError = ExchangeEmbedCodeErrors[keyof ExchangeEmbedCodeErrors];
30611
- export type ExchangeEmbedCodeResponses = {
30612
- /**
30613
- * The end-user token and its expiration; the code has been consumed.
30614
- */
30615
- 200: {
30616
- /**
30617
- * End-user credential for the hosted conversation. Keep it in memory; it cannot be refreshed here.
30618
- */
30619
- token: string;
30620
- /**
30621
- * Token expiration as an ISO 8601 UTC timestamp. Return to the host website after expiration.
30622
- */
30623
- expires_at: string;
30624
- };
30625
- };
30626
- export type ExchangeEmbedCodeResponse = ExchangeEmbedCodeResponses[keyof ExchangeEmbedCodeResponses];
30627
- export type CreateAnonymousEmbedTokenData = {
30628
- body: {
30629
- /**
30630
- * Public key created by the service agent owner; safe to include in browser code.
30631
- */
30632
- publishable_key: string;
30633
- /**
30634
- * Secret returned by a previous anonymous issuance for this key. Omit for a new visitor; an unknown secret creates a new visitor.
30635
- */
30636
- visitor_secret?: string;
30637
- };
30638
- headers: {
30639
- /**
30640
- * Browser page origin from the agent policy allowlist.
30641
- */
30642
- Origin: string;
30643
- };
30644
- path?: never;
30645
- query?: never;
30646
- url: '/agent/v1/embed_tokens/anonymous';
30647
- };
30648
- export type CreateAnonymousEmbedTokenErrors = {
30649
- /**
30650
- * Unknown or invalid request fields, or key budget exceeds policy. Correct the request or ask the owner to update the key.
30651
- */
30652
- 400: unknown;
30653
- /**
30654
- * Unknown or disabled publishable key. Ask the agent owner for an active key.
30655
- */
30656
- 401: unknown;
30657
- /**
30658
- * EMBED_BUDGET_EXHAUSTED. The daily spending cap is reached; wait for the UTC reset or ask the owner to raise it.
30659
- */
30660
- 402: unknown;
30661
- /**
30662
- * EMBED_ORIGIN_NOT_ALLOWED or EMBED_USER_BLOCKED. Use an allowed page origin or contact the owner.
30663
- */
30664
- 403: unknown;
30665
- /**
30666
- * EMBED_RATE_LIMITED. Wait for the IP minute window or UTC daily session cap reset.
30667
- */
30668
- 429: unknown;
30669
- /**
30670
- * Anonymous issuance or rate limiting is unavailable; retry later.
30671
- */
30672
- 503: unknown;
30673
- };
30674
- export type CreateAnonymousEmbedTokenResponses = {
30675
- /**
30676
- * End-user token and expiration, with a visitor secret only for a new visitor.
30677
- */
30678
- 200: {
30679
- /**
30680
- * Short-lived end-user bearer credential for this agent's embedded sessions.
30681
- */
30682
- token: string;
30683
- /**
30684
- * RFC 3339 expiration; refresh before this time using the same visitor_secret.
30685
- */
30686
- expires_at: string;
30687
- /**
30688
- * Newly generated visitor secret; save it locally and include it on later requests. Absent when the supplied secret was recognized.
30689
- */
30690
- visitor_secret?: string;
30691
- };
30692
- };
30693
- export type CreateAnonymousEmbedTokenResponse = CreateAnonymousEmbedTokenResponses[keyof CreateAnonymousEmbedTokenResponses];
30694
- export type ListEmbedTokensData = {
30695
- body?: never;
30696
- path?: never;
30697
- query?: {
30698
- /**
30699
- * Filter by service agent identifier (agent_ or agt_ prefix).
30700
- */
30701
- agent_id?: string;
30702
- /**
30703
- * Exact host user identifier supplied at issuance.
30704
- */
30705
- external_user_id?: string;
30706
- /**
30707
- * Maximum records per page; defaults to 20.
30708
- */
30709
- limit?: number;
30710
- /**
30711
- * next_page from a previous response with the same filters.
30712
- */
30713
- page?: string;
30714
- };
30715
- url: '/agent/v1/embed_tokens';
30716
- };
30717
- export type ListEmbedTokensErrors = {
30718
- /**
30719
- * Invalid filter, limit or cursor; reuse the cursor with its original filters.
30720
- */
30721
- 400: unknown;
30722
- /**
30723
- * Authenticate with a host credential.
30724
- */
30725
- 401: unknown;
30726
- /**
30727
- * permission_error: the credential's role or bound resources do not allow this operation. Use a key with access to the agent domain and its resources.
30728
- */
30729
- 403: AgentError;
30730
- /**
30731
- * The grant is missing or belongs to another organization, or the caller is an end user.
30732
- */
30733
- 404: unknown;
30734
- /**
30735
- * Upstream revocation failed; the record remains unrevoked and the request may be retried.
30736
- */
30737
- 502: unknown;
30738
- };
30739
- export type ListEmbedTokensError = ListEmbedTokensErrors[keyof ListEmbedTokensErrors];
30740
- export type ListEmbedTokensResponses = {
30741
- /**
30742
- * Issuance records and next page cursor.
30743
- */
30744
- 200: {
30745
- /**
30746
- * Items of this page, in the order requested by the call.
30747
- */
30748
- data: Array<{
30749
- /**
30750
- * Grant identifier returned by embed token creation.
30751
- */
30752
- id: string;
30753
- /**
30754
- * Toolset type id as used in an agent's tools entry, for example agent_toolset_20260401.
30755
- */
30756
- type: 'embed_token';
30757
- /**
30758
- * Service agent identifier.
30759
- */
30760
- agent_id: string;
30761
- /**
30762
- * Pinned agent version.
30763
- */
30764
- agent_version: number;
30765
- /**
30766
- * Exact host user identifier supplied at issuance.
30767
- */
30768
- external_user_id: string;
30769
- /**
30770
- * Issuance time in RFC 3339 format.
30771
- */
30772
- created_at: string;
30773
- /**
30774
- * Expiration time in RFC 3339 format.
30775
- */
30776
- expires_at: string;
30777
- /**
30778
- * Revocation time in RFC 3339 format, or null while not revoked.
30779
- */
30780
- revoked_at: string | null;
30781
- /**
30782
- * Host origin recorded at issuance, or null when absent.
30783
- */
30784
- host_origin: string | null;
30785
- /**
30786
- * User or API key that issued the token.
30787
- */
30788
- issued_by: {
30789
- /**
30790
- * user identifies a signed-in organization member; api_key identifies the issuing API key.
30791
- */
30792
- type: 'user' | 'api_key';
30793
- /**
30794
- * Identifier of the object, as returned by the API; pass it in the path of follow-up calls on the same resource.
30795
- */
30796
- id: string;
30797
- };
30798
- }>;
30799
- /**
30800
- * Cursor for the next page using the same filters, or null when exhausted.
30801
- */
30802
- next_page: string | null;
30803
- };
30804
- };
30805
- export type ListEmbedTokensResponse = ListEmbedTokensResponses[keyof ListEmbedTokensResponses];
30806
- export type CreateEmbedTokenData = {
30807
- body: {
30808
- /**
30809
- * Set true to also return a hosted chat URL with a single-use credential valid for 60 seconds. Defaults to false; the agent must have an identity_number.
30810
- */
30811
- hosted?: boolean;
30812
- /**
30813
- * Service agent ID or identity_number from agent retrieval; it must belong to your organization and be active.
30814
- */
30815
- agent: string;
30816
- /**
30817
- * Existing agent version to pin. Omit to pin the latest version at issuance.
30818
- */
30819
- version?: number;
30820
- /**
30821
- * Your application's stable end-user identifier, scoped to this organization and agent.
30822
- */
30823
- external_user_id: string;
30824
- /**
30825
- * Token lifetime in seconds. Defaults to the embed policy TTL and cannot exceed its maximum or 3600 seconds.
30826
- */
30827
- ttl_seconds?: number;
30828
- /**
30829
- * Session budget in cents. Defaults to the embed policy session budget and cannot exceed its maximum.
30830
- */
30831
- budget_cents?: number;
30832
- /**
30833
- * Optional host context as text blocks, limited to 8192 UTF-8 bytes in total.
30834
- */
30835
- system_message?: Array<{
30836
- /**
30837
- * The text block kind; text is the only supported kind.
30838
- */
30839
- type: 'text';
30840
- /**
30841
- * Host context text. All blocks together must fit within 8192 UTF-8 bytes.
30842
- */
30843
- text: string;
30844
- }>;
30845
- /**
30846
- * Optional system prompt override, accepted only when the embed policy allows agent overrides.
30847
- */
30848
- agent_override?: {
30849
- /**
30850
- * Replacement system prompt, or null to clear it for this grant.
30851
- */
30852
- system: string | null;
30853
- };
30854
- /**
30855
- * Optional subset of the policy origin entries, compared exactly. Omit to snapshot every policy origin.
30856
- */
30857
- allowed_origins?: Array<string>;
30858
- /**
30859
- * Host metadata preserved verbatim; at most 16 keys of 1–64 characters and string values of at most 512 characters. Defaults to an empty object.
30860
- */
30861
- metadata?: {
30862
- [key: string]: string;
30863
- };
30864
- };
30865
- path?: never;
30866
- query?: never;
30867
- url: '/agent/v1/embed_tokens';
30868
- };
30869
- export type CreateEmbedTokenErrors = {
30870
- /**
30871
- * Request fields exceed policy limits, the policy or its environment is unavailable, or a hosted agent has no identity_number. Configure the policy or correct the reported field.
30872
- */
30873
- 400: unknown;
30874
- /**
30875
- * A valid host credential is required; authenticate with your backend API key.
30876
- */
30877
- 401: unknown;
30878
- /**
30879
- * The end user is blocked by the embed policy; contact the agent owner.
30880
- */
30881
- 403: unknown;
30882
- /**
30883
- * The service agent or requested version is unavailable to this caller; check the agent identifier and version.
30884
- */
30885
- 404: unknown;
30886
- /**
30887
- * Token issuance is unavailable; no usable credential was returned.
30888
- */
30889
- 502: unknown;
30890
- };
30891
- export type CreateEmbedTokenResponses = {
30892
- /**
30893
- * Issued end-user token and its grant identifier and expiration.
30894
- */
30895
- 201: {
30896
- /**
30897
- * Hosted chat link, returned only when hosted is true. Redirect the user here within 60 seconds; its fragment credential can be exchanged only once.
30898
- */
30899
- hosted_url?: string;
30900
- /**
30901
- * Grant identifier with the emb_ prefix, identifying this issuance.
30902
- */
30903
- id: string;
30904
- /**
30905
- * Short-lived end-user credential to pass to your frontend; keep the host API key on your backend.
30906
- */
30907
- token: string;
30908
- /**
30909
- * Token expiration as an ISO 8601 UTC timestamp, as issued by identity.
30910
- */
30911
- expires_at: string;
30912
- };
30913
- };
30914
- export type CreateEmbedTokenResponse = CreateEmbedTokenResponses[keyof CreateEmbedTokenResponses];
30915
- export type RevokeEmbedTokenData = {
30916
- body?: never;
30917
- path: {
30918
- /**
30919
- * Grant id returned by issuance or listing.
30920
- */
30921
- id: string;
30922
- };
30923
- query?: never;
30924
- url: '/agent/v1/embed_tokens/{id}/revoke';
30925
- };
30926
- export type RevokeEmbedTokenErrors = {
30927
- /**
30928
- * Invalid filter, limit or cursor; reuse the cursor with its original filters.
30929
- */
30930
- 400: unknown;
30931
- /**
30932
- * Authenticate with a host credential.
30933
- */
30934
- 401: unknown;
30935
- /**
30936
- * permission_error: the credential's role or bound resources do not allow this operation. Use a key with access to the agent domain and its resources.
30937
- */
30938
- 403: AgentError;
30939
- /**
30940
- * The grant is missing or belongs to another organization, or the caller is an end user.
30941
- */
30942
- 404: unknown;
30943
- /**
30944
- * Upstream revocation failed; the record remains unrevoked and the request may be retried.
30945
- */
30946
- 502: unknown;
30947
- };
30948
- export type RevokeEmbedTokenError = RevokeEmbedTokenErrors[keyof RevokeEmbedTokenErrors];
30949
- export type RevokeEmbedTokenResponses = {
30950
- /**
30951
- * Revoked issuance record, including its original revocation time on repeated calls.
30952
- */
30953
- 200: {
30954
- /**
30955
- * Grant identifier returned by embed token creation.
30956
- */
30957
- id: string;
30958
- /**
30959
- * Type tag of the object.
30960
- */
30961
- type: 'embed_token';
30962
- /**
30963
- * Service agent identifier.
30964
- */
30965
- agent_id: string;
30966
- /**
30967
- * Pinned agent version.
30968
- */
30969
- agent_version: number;
30970
- /**
30971
- * Exact host user identifier supplied at issuance.
30972
- */
30973
- external_user_id: string;
30974
- /**
30975
- * Issuance time in RFC 3339 format.
30976
- */
30977
- created_at: string;
30978
- /**
30979
- * Expiration time in RFC 3339 format.
30980
- */
30981
- expires_at: string;
30982
- /**
30983
- * Revocation time in RFC 3339 format, or null while not revoked.
30984
- */
30985
- revoked_at: string | null;
30986
- /**
30987
- * Host origin recorded at issuance, or null when absent.
30988
- */
30989
- host_origin: string | null;
30990
- /**
30991
- * User or API key that issued the token.
30992
- */
30993
- issued_by: {
30994
- /**
30995
- * user identifies a signed-in organization member; api_key identifies the issuing API key.
30996
- */
30997
- type: 'user' | 'api_key';
30998
- /**
30999
- * Identifier of the object, as returned by the API; pass it in the path of follow-up calls on the same resource.
31000
- */
31001
- id: string;
31002
- };
31003
- };
31004
- };
31005
- export type RevokeEmbedTokenResponse = RevokeEmbedTokenResponses[keyof RevokeEmbedTokenResponses];
31006
30908
  export type ComputersListData = {
31007
30909
  body?: never;
31008
30910
  path?: never;
@@ -36159,6 +36061,19 @@ export type ForkSessionResponses = {
36159
36061
  */
36160
36062
  web_search_requests?: number;
36161
36063
  };
36064
+ /**
36065
+ * Praxis extension: priced runtime of this session (the time it was running), billed separately from list_cost and not counted against the budget. amount is in US dollars as a decimal string with exactly 6 decimals, e.g. "0.000280". Each thread's runtime is reported on that thread. /agent/v1 only.
36066
+ */
36067
+ runtime_cost?: {
36068
+ /**
36069
+ * Runtime cost in US dollars, decimal string with exactly 6 decimals.
36070
+ */
36071
+ amount: string;
36072
+ /**
36073
+ * Always USD.
36074
+ */
36075
+ currency: 'USD';
36076
+ };
36162
36077
  };
36163
36078
  /**
36164
36079
  * Vault IDs attached to the session at creation. Empty when no vaults were
@@ -36748,243 +36663,6 @@ export type ListSessionCompactionsResponses = {
36748
36663
  };
36749
36664
  };
36750
36665
  export type ListSessionCompactionsResponse = ListSessionCompactionsResponses[keyof ListSessionCompactionsResponses];
36751
- export type GetEmbedAppearanceData = {
36752
- body?: never;
36753
- headers?: {
36754
- /**
36755
- * Active public key from the agent's console embed settings; alternative to an end-user Bearer token.
36756
- */
36757
- 'Praxis-Publishable-Key'?: string;
36758
- };
36759
- path?: never;
36760
- query?: never;
36761
- url: '/agent/v1/embed/appearance';
36762
- };
36763
- export type GetEmbedAppearanceErrors = {
36764
- /**
36765
- * Addressing parameters are not accepted; remove identity_number, agent_id and other query parameters.
36766
- */
36767
- 400: unknown;
36768
- /**
36769
- * Supply a valid embed token or an active publishable key; organization member credentials cannot read this surface.
36770
- */
36771
- 401: unknown;
36772
- /**
36773
- * permission_error: the credential's role or bound resources do not allow this operation. Use a key with access to the agent domain and its resources.
36774
- */
36775
- 403: AgentError;
36776
- /**
36777
- * The credential's service agent is absent or archived; obtain credentials for an active service agent.
36778
- */
36779
- 404: unknown;
36780
- /**
36781
- * Appearance is temporarily unavailable; use default appearance and continue the conversation.
36782
- */
36783
- 503: unknown;
36784
- };
36785
- export type GetEmbedAppearanceError = GetEmbedAppearanceErrors[keyof GetEmbedAppearanceErrors];
36786
- export type GetEmbedAppearanceResponses = {
36787
- /**
36788
- * Saved Kit options, at most 8192 UTF-8 JSON bytes. Omitted groups use Kit defaults; an unconfigured agent returns an empty object.
36789
- */
36790
- 200: {
36791
- /**
36792
- * Public identity displayed on the chat page, independent of the internal agent name.
36793
- */
36794
- agent?: {
36795
- /**
36796
- * Display name; omission keeps the neutral browser-language default.
36797
- */
36798
- name?: string;
36799
- /**
36800
- * Optional HTTPS avatar image URL; non-HTTPS images are rejected.
36801
- */
36802
- avatar?: string;
36803
- };
36804
- /**
36805
- * Loader default: inline stays in the page, sidebar attaches to the edge, popup floats above its launcher, modal centers an overlay. A script data-layout overrides it; Hosted always uses inline.
36806
- */
36807
- layout?: 'inline' | 'sidebar' | 'popup' | 'modal';
36808
- /**
36809
- * Default entry button for the loader; an explicit script data-launcher takes precedence.
36810
- */
36811
- launcher?: {
36812
- /**
36813
- * Entry control: none hides the launcher, bubble shows a button, mascot shows a character that reacts while the visitor types and the agent thinks and answers. A mascot needs pack.
36814
- */
36815
- type: 'none' | 'bubble' | 'mascot';
36816
- /**
36817
- * Mascot images: exactly one of preset or images. Send pack, not image.
36818
- */
36819
- pack?: {
36820
- /**
36821
- * Built-in character: mint (mint support girl), cat (cat-eared girl) or bot (small robot).
36822
- */
36823
- preset?: 'mint' | 'cat' | 'bot';
36824
- /**
36825
- * One HTTPS image per slot; only idle is required and a missing slot shows idle. Use 2:3 canvases with the feet bottom-centered on a transparent background; PNG or WebP stay still, GIF, WebP and APNG play as they are.
36826
- */
36827
- images?: {
36828
- /**
36829
- * Resting state.
36830
- */
36831
- idle: string;
36832
- /**
36833
- * Page open and while the greeting bubble shows.
36834
- */
36835
- greet?: string;
36836
- /**
36837
- * The visitor is typing in the composer.
36838
- */
36839
- listening?: string;
36840
- /**
36841
- * After the visitor sends, before the first reply text.
36842
- */
36843
- thinking?: string;
36844
- /**
36845
- * While the reply streams; alternates with talking-2 every 220 ms.
36846
- */
36847
- talking?: string;
36848
- /**
36849
- * Second mouth frame of talking, mouth closed; without it talking alternates with idle.
36850
- */
36851
- 'talking-2'?: string;
36852
- /**
36853
- * The last turn failed or was refused.
36854
- */
36855
- sorry?: string;
36856
- /**
36857
- * No interaction for 60 seconds; hover or click wakes the mascot.
36858
- */
36859
- sleep?: string;
36860
- };
36861
- };
36862
- /**
36863
- * Legacy single mascot image, read as pack.images.idle. When pack is present, pack wins.
36864
- */
36865
- image?: string;
36866
- /**
36867
- * float (default) gently floats the mascot, bounces on hover and waves with the greeting; none keeps it still. Reduced-motion settings always win.
36868
- */
36869
- motion?: 'float' | 'none';
36870
- /**
36871
- * Launcher corner: bottom-right is the default; bottom-left uses the opposite corner.
36872
- */
36873
- position?: 'bottom-right' | 'bottom-left';
36874
- /**
36875
- * Accessible entry button label and bubble text; omission uses the default chat label.
36876
- */
36877
- label?: string;
36878
- };
36879
- /**
36880
- * Visible chat heading; omitted title uses the public agent name.
36881
- */
36882
- header?: {
36883
- /**
36884
- * Optional heading text shown instead of the public agent name.
36885
- */
36886
- title?: string;
36887
- /**
36888
- * Optional secondary line beneath the heading.
36889
- */
36890
- subtitle?: string;
36891
- /**
36892
- * Optional HTTPS image shown in the heading avatar position.
36893
- */
36894
- icon?: string;
36895
- };
36896
- /**
36897
- * Visual tokens applied to the conversation and header; omitted fields use Kit defaults.
36898
- */
36899
- theme?: {
36900
- /**
36901
- * light or dark selects a fixed scheme; system follows the device preference.
36902
- */
36903
- colorScheme?: 'light' | 'dark' | 'system';
36904
- /**
36905
- * Explicit opaque CSS accent color, for example #167A43.
36906
- */
36907
- accent?: string;
36908
- /**
36909
- * Explicit opaque CSS background color, for example #ffffff.
36910
- */
36911
- surface?: string;
36912
- /**
36913
- * neutral uses grayscale surfaces, warm uses warm tones, cool uses cool tones.
36914
- */
36915
- grayscale?: 'neutral' | 'warm' | 'cool';
36916
- /**
36917
- * Corner rounding: none is square, sm is small, md is medium, lg is large, full is fully rounded.
36918
- */
36919
- radius?: 'none' | 'sm' | 'md' | 'lg' | 'full';
36920
- /**
36921
- * Spacing: compact reduces gaps, normal uses defaults, spacious increases gaps.
36922
- */
36923
- density?: 'compact' | 'normal' | 'spacious';
36924
- /**
36925
- * CSS font family list using fonts available on the device; external font loading is not configured here.
36926
- */
36927
- fontFamily?: string;
36928
- /**
36929
- * Positive base font size in CSS pixels; omission preserves Kit sizing.
36930
- */
36931
- fontSize?: number;
36932
- };
36933
- /**
36934
- * Reserved Kit locale preference: zh for Chinese, en for English. Kit currently passes this option through without translating all controls.
36935
- */
36936
- locale?: 'zh' | 'en';
36937
- /**
36938
- * Content displayed before the first message in a conversation.
36939
- */
36940
- startScreen?: {
36941
- /**
36942
- * Optional welcome text on the empty conversation.
36943
- */
36944
- greeting?: string;
36945
- /**
36946
- * Up to four suggested questions; clicking a label sends its prompt text.
36947
- */
36948
- prompts?: Array<{
36949
- /**
36950
- * Visible suggested-question button text.
36951
- */
36952
- label: string;
36953
- /**
36954
- * User message sent when this suggestion is selected.
36955
- */
36956
- prompt: string;
36957
- }>;
36958
- };
36959
- /**
36960
- * Message input appearance; transport and attachment settings are excluded.
36961
- */
36962
- composer?: {
36963
- /**
36964
- * Hint shown when the message input is empty.
36965
- */
36966
- placeholder?: string;
36967
- };
36968
- /**
36969
- * Optional notice displayed beside the conversation composer.
36970
- */
36971
- disclaimer?: string;
36972
- /**
36973
- * Optional text below the conversation.
36974
- */
36975
- footer?: string;
36976
- /**
36977
- * Availability of the conversation history control.
36978
- */
36979
- history?: {
36980
- /**
36981
- * False hides history; omission uses the default enabled state.
36982
- */
36983
- enabled?: boolean;
36984
- };
36985
- };
36986
- };
36987
- export type GetEmbedAppearanceResponse = GetEmbedAppearanceResponses[keyof GetEmbedAppearanceResponses];
36988
36666
  export type CreateAudioSpeechData = {
36989
36667
  body: unknown & {
36990
36668
  /**
@@ -43313,7 +42991,7 @@ export type ListOrganizationCostsResponses = {
43313
42991
  */
43314
42992
  ResourceName?: string;
43315
42993
  /**
43316
- * Decimal string in BillingCurrency.
42994
+ * Amount in BillingCurrency: US dollars for USD, decimal string, 6 decimals.
43317
42995
  */
43318
42996
  BilledCost: string;
43319
42997
  /**
@@ -43531,7 +43209,7 @@ export type ListOrganizationEventsResponses = {
43531
43209
  */
43532
43210
  ResourceName: string;
43533
43211
  /**
43534
- * Amount billed in USD as an exact decimal string; unsettled usage counts as 0 until it settles.
43212
+ * Amount billed: US dollars for USD (otherwise BillingCurrency), decimal string, 6 decimals (for example `0.001700`); unsettled usage counts as `0.000000` until it settles.
43535
43213
  */
43536
43214
  BilledCost: string;
43537
43215
  /**
@@ -43555,7 +43233,7 @@ export type ListOrganizationEventsResponses = {
43555
43233
  */
43556
43234
  status: 'settled' | 'no_charge' | 'rejected';
43557
43235
  /**
43558
- * USD amount that could not be charged, as a decimal string, when status is settled_with_shortfall; null otherwise.
43236
+ * Amount that could not be charged: US dollars, decimal string, 6 decimals, when status is settled_with_shortfall; null otherwise.
43559
43237
  */
43560
43238
  shortfall: string | null;
43561
43239
  /**
@@ -43652,7 +43330,7 @@ export type GetOrganizationEventResponses = {
43652
43330
  */
43653
43331
  ResourceName: string;
43654
43332
  /**
43655
- * Amount billed in USD as an exact decimal string; unsettled usage counts as 0 until it settles.
43333
+ * Amount billed: US dollars for USD (otherwise BillingCurrency), decimal string, 6 decimals (for example `0.001700`); unsettled usage counts as `0.000000` until it settles.
43656
43334
  */
43657
43335
  BilledCost: string;
43658
43336
  /**
@@ -43676,7 +43354,7 @@ export type GetOrganizationEventResponses = {
43676
43354
  */
43677
43355
  status: 'settled' | 'no_charge' | 'rejected';
43678
43356
  /**
43679
- * USD amount that could not be charged, as a decimal string, when status is settled_with_shortfall; null otherwise.
43357
+ * Amount that could not be charged: US dollars, decimal string, 6 decimals, when status is settled_with_shortfall; null otherwise.
43680
43358
  */
43681
43359
  shortfall: string | null;
43682
43360
  /**
@@ -43713,7 +43391,7 @@ export type GetOrganizationEventResponses = {
43713
43391
  */
43714
43392
  PricingUnit: string | null;
43715
43393
  /**
43716
- * Amount billed for this line in USD as a decimal string.
43394
+ * Amount billed for this line: US dollars for USD (otherwise BillingCurrency), decimal string, 6 decimals (for example `0.001700`).
43717
43395
  */
43718
43396
  BilledCost: string;
43719
43397
  }>;
@@ -43726,7 +43404,7 @@ export type GetOrganizationEventResponses = {
43726
43404
  */
43727
43405
  transaction_id: string;
43728
43406
  /**
43729
- * Amount billed in USD as an exact decimal string; unsettled usage counts as 0 until it settles.
43407
+ * Amount billed: US dollars for USD (otherwise BillingCurrency), decimal string, 6 decimals (for example `0.001700`); unsettled usage counts as `0.000000` until it settles.
43730
43408
  */
43731
43409
  BilledCost: string;
43732
43410
  /**
@@ -43780,7 +43458,7 @@ export type ExportOrganizationChargesResponses = {
43780
43458
  */
43781
43459
  ChargePeriodEnd: string;
43782
43460
  /**
43783
- * Amount billed in USD as an exact decimal string; unsettled usage counts as 0 until it settles.
43461
+ * Amount billed: US dollars for USD (otherwise BillingCurrency), decimal string, 6 decimals (for example `0.001700`); unsettled usage counts as `0.000000` until it settles.
43784
43462
  */
43785
43463
  BilledCost: string;
43786
43464
  /**
@@ -45315,7 +44993,7 @@ export type AgentsListResponses = {
45315
44993
  */
45316
44994
  note: string | null;
45317
44995
  /**
45318
- * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings.
44996
+ * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings. Saving checks added or changed database, vector_store, media_library and file bindings in the organization: unknown or deleted ids return 400. If an owner is unavailable or takes more than 3 seconds, saving succeeds with verified=false for the affected bindings. Unchanged bindings keep their previous verification result and are not rechecked. workflow and script ids are not verified at save time.
45319
44997
  */
45320
44998
  bindings: Array<{
45321
44999
  /**
@@ -45334,6 +45012,10 @@ export type AgentsListResponses = {
45334
45012
  * Optional guidance for using this resource, up to 4096 characters; does not expand access.
45335
45013
  */
45336
45014
  instructions?: string;
45015
+ /**
45016
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
45017
+ */
45018
+ readonly verified?: boolean;
45337
45019
  /**
45338
45020
  * Whether this binding grants access. Defaults to true; false immediately disables it for running sessions.
45339
45021
  */
@@ -45343,6 +45025,10 @@ export type AgentsListResponses = {
45343
45025
  * Service type. Opens the whole service to codemode; there is no per-resource id.
45344
45026
  */
45345
45027
  type: 'search' | 'browser';
45028
+ /**
45029
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
45030
+ */
45031
+ readonly verified?: boolean;
45346
45032
  /**
45347
45033
  * Whether the service is open. Defaults to true; false immediately closes it for running sessions.
45348
45034
  */
@@ -45360,6 +45046,10 @@ export type AgentsListResponses = {
45360
45046
  * Praxis extension: default subagent model ID, pinned in the agent revision. Call model overrides this; otherwise it overrides the roster member model or the parent model for built-ins. Null clears the default. /agent/v1 only.
45361
45047
  */
45362
45048
  subagent_model?: string | null;
45049
+ /**
45050
+ * Model used by the imagine image tool; defaults to gpt-image-2 when unset. Only models that can generate images are accepted. Omit to preserve; null clears the configured model. /agent/v1 only.
45051
+ */
45052
+ image_model?: string | null;
45363
45053
  /**
45364
45054
  * Praxis extension: inline subagent definitions stored in the configuration revision, separately from the multiagent roster. Omit to preserve; null clears. Names must be unique. Configuration storage only; runtime activation is not implemented. /agent/v1 only.
45365
45055
  */
@@ -45815,7 +45505,7 @@ export type AgentsCreateData = {
45815
45505
  */
45816
45506
  tools?: Array<AgentManaged15 | AgentManaged29 | AgentManaged32>;
45817
45507
  /**
45818
- * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings.
45508
+ * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings. Saving checks added or changed database, vector_store, media_library and file bindings in the organization: unknown or deleted ids return 400. If an owner is unavailable or takes more than 3 seconds, saving succeeds with verified=false for the affected bindings. Unchanged bindings keep their previous verification result and are not rechecked. workflow and script ids are not verified at save time.
45819
45509
  */
45820
45510
  bindings?: Array<{
45821
45511
  /**
@@ -45834,6 +45524,10 @@ export type AgentsCreateData = {
45834
45524
  * Optional guidance for using this resource, up to 4096 characters; does not expand access.
45835
45525
  */
45836
45526
  instructions?: string;
45527
+ /**
45528
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
45529
+ */
45530
+ readonly verified?: boolean;
45837
45531
  /**
45838
45532
  * Whether this binding grants access. Defaults to true; false immediately disables it for running sessions.
45839
45533
  */
@@ -45843,6 +45537,10 @@ export type AgentsCreateData = {
45843
45537
  * Service type. Opens the whole service to codemode; there is no per-resource id.
45844
45538
  */
45845
45539
  type: 'search' | 'browser';
45540
+ /**
45541
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
45542
+ */
45543
+ readonly verified?: boolean;
45846
45544
  /**
45847
45545
  * Whether the service is open. Defaults to true; false immediately closes it for running sessions.
45848
45546
  */
@@ -45860,6 +45558,10 @@ export type AgentsCreateData = {
45860
45558
  * Praxis extension: default subagent model ID, pinned in the agent revision. Call model overrides this; otherwise it overrides the roster member model or the parent model for built-ins. Null clears the default. /agent/v1 only.
45861
45559
  */
45862
45560
  subagent_model?: string | null;
45561
+ /**
45562
+ * Model used by the imagine image tool; defaults to gpt-image-2 when unset. Only models that can generate images are accepted. Omit to preserve; null clears the configured model. /agent/v1 only.
45563
+ */
45564
+ image_model?: string | null;
45863
45565
  /**
45864
45566
  * Praxis extension: inline subagent definitions stored in the configuration revision, separately from the multiagent roster. Omit to preserve; null clears. Names must be unique. Configuration storage only; runtime activation is not implemented. /agent/v1 only.
45865
45567
  */
@@ -46376,7 +46078,7 @@ export type AgentsCreateResponses = {
46376
46078
  */
46377
46079
  note: string | null;
46378
46080
  /**
46379
- * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings.
46081
+ * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings. Saving checks added or changed database, vector_store, media_library and file bindings in the organization: unknown or deleted ids return 400. If an owner is unavailable or takes more than 3 seconds, saving succeeds with verified=false for the affected bindings. Unchanged bindings keep their previous verification result and are not rechecked. workflow and script ids are not verified at save time.
46380
46082
  */
46381
46083
  bindings: Array<{
46382
46084
  /**
@@ -46395,6 +46097,10 @@ export type AgentsCreateResponses = {
46395
46097
  * Optional guidance for using this resource, up to 4096 characters; does not expand access.
46396
46098
  */
46397
46099
  instructions?: string;
46100
+ /**
46101
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
46102
+ */
46103
+ readonly verified?: boolean;
46398
46104
  /**
46399
46105
  * Whether this binding grants access. Defaults to true; false immediately disables it for running sessions.
46400
46106
  */
@@ -46404,6 +46110,10 @@ export type AgentsCreateResponses = {
46404
46110
  * Service type. Opens the whole service to codemode; there is no per-resource id.
46405
46111
  */
46406
46112
  type: 'search' | 'browser';
46113
+ /**
46114
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
46115
+ */
46116
+ readonly verified?: boolean;
46407
46117
  /**
46408
46118
  * Whether the service is open. Defaults to true; false immediately closes it for running sessions.
46409
46119
  */
@@ -46421,6 +46131,10 @@ export type AgentsCreateResponses = {
46421
46131
  * Praxis extension: default subagent model ID, pinned in the agent revision. Call model overrides this; otherwise it overrides the roster member model or the parent model for built-ins. Null clears the default. /agent/v1 only.
46422
46132
  */
46423
46133
  subagent_model?: string | null;
46134
+ /**
46135
+ * Model used by the imagine image tool; defaults to gpt-image-2 when unset. Only models that can generate images are accepted. Omit to preserve; null clears the configured model. /agent/v1 only.
46136
+ */
46137
+ image_model?: string | null;
46424
46138
  /**
46425
46139
  * Praxis extension: inline subagent definitions stored in the configuration revision, separately from the multiagent roster. Omit to preserve; null clears. Names must be unique. Configuration storage only; runtime activation is not implemented. /agent/v1 only.
46426
46140
  */
@@ -46960,7 +46674,7 @@ export type AgentsRetrieveResponses = {
46960
46674
  */
46961
46675
  note: string | null;
46962
46676
  /**
46963
- * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings.
46677
+ * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings. Saving checks added or changed database, vector_store, media_library and file bindings in the organization: unknown or deleted ids return 400. If an owner is unavailable or takes more than 3 seconds, saving succeeds with verified=false for the affected bindings. Unchanged bindings keep their previous verification result and are not rechecked. workflow and script ids are not verified at save time.
46964
46678
  */
46965
46679
  bindings: Array<{
46966
46680
  /**
@@ -46979,6 +46693,10 @@ export type AgentsRetrieveResponses = {
46979
46693
  * Optional guidance for using this resource, up to 4096 characters; does not expand access.
46980
46694
  */
46981
46695
  instructions?: string;
46696
+ /**
46697
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
46698
+ */
46699
+ readonly verified?: boolean;
46982
46700
  /**
46983
46701
  * Whether this binding grants access. Defaults to true; false immediately disables it for running sessions.
46984
46702
  */
@@ -46988,6 +46706,10 @@ export type AgentsRetrieveResponses = {
46988
46706
  * Service type. Opens the whole service to codemode; there is no per-resource id.
46989
46707
  */
46990
46708
  type: 'search' | 'browser';
46709
+ /**
46710
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
46711
+ */
46712
+ readonly verified?: boolean;
46991
46713
  /**
46992
46714
  * Whether the service is open. Defaults to true; false immediately closes it for running sessions.
46993
46715
  */
@@ -47005,6 +46727,10 @@ export type AgentsRetrieveResponses = {
47005
46727
  * Praxis extension: default subagent model ID, pinned in the agent revision. Call model overrides this; otherwise it overrides the roster member model or the parent model for built-ins. Null clears the default. /agent/v1 only.
47006
46728
  */
47007
46729
  subagent_model?: string | null;
46730
+ /**
46731
+ * Model used by the imagine image tool; defaults to gpt-image-2 when unset. Only models that can generate images are accepted. Omit to preserve; null clears the configured model. /agent/v1 only.
46732
+ */
46733
+ image_model?: string | null;
47008
46734
  /**
47009
46735
  * Praxis extension: inline subagent definitions stored in the configuration revision, separately from the multiagent roster. Omit to preserve; null clears. Names must be unique. Configuration storage only; runtime activation is not implemented. /agent/v1 only.
47010
46736
  */
@@ -47491,6 +47217,10 @@ export type AgentsUpdateData = {
47491
47217
  * Optional guidance for using this resource, up to 4096 characters; does not expand access.
47492
47218
  */
47493
47219
  instructions?: string;
47220
+ /**
47221
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
47222
+ */
47223
+ readonly verified?: boolean;
47494
47224
  /**
47495
47225
  * Whether this binding grants access. Defaults to true; false immediately disables it for running sessions.
47496
47226
  */
@@ -47500,6 +47230,10 @@ export type AgentsUpdateData = {
47500
47230
  * Service type. Opens the whole service to codemode; there is no per-resource id.
47501
47231
  */
47502
47232
  type: 'search' | 'browser';
47233
+ /**
47234
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
47235
+ */
47236
+ readonly verified?: boolean;
47503
47237
  /**
47504
47238
  * Whether the service is open. Defaults to true; false immediately closes it for running sessions.
47505
47239
  */
@@ -47517,6 +47251,10 @@ export type AgentsUpdateData = {
47517
47251
  * Praxis extension: default subagent model ID, pinned in the agent revision. Call model overrides this; otherwise it overrides the roster member model or the parent model for built-ins. Null clears the default. /agent/v1 only.
47518
47252
  */
47519
47253
  subagent_model?: string | null;
47254
+ /**
47255
+ * Model used by the imagine image tool; defaults to gpt-image-2 when unset. Only models that can generate images are accepted. Omit to preserve; null clears the configured model. /agent/v1 only.
47256
+ */
47257
+ image_model?: string | null;
47520
47258
  /**
47521
47259
  * Praxis extension: inline subagent definitions stored in the configuration revision, separately from the multiagent roster. Omit to preserve; null clears. Names must be unique. Configuration storage only; runtime activation is not implemented. /agent/v1 only.
47522
47260
  */
@@ -48042,7 +47780,7 @@ export type AgentsUpdateResponses = {
48042
47780
  */
48043
47781
  note: string | null;
48044
47782
  /**
48045
- * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings.
47783
+ * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings. Saving checks added or changed database, vector_store, media_library and file bindings in the organization: unknown or deleted ids return 400. If an owner is unavailable or takes more than 3 seconds, saving succeeds with verified=false for the affected bindings. Unchanged bindings keep their previous verification result and are not rechecked. workflow and script ids are not verified at save time.
48046
47784
  */
48047
47785
  bindings: Array<{
48048
47786
  /**
@@ -48061,6 +47799,10 @@ export type AgentsUpdateResponses = {
48061
47799
  * Optional guidance for using this resource, up to 4096 characters; does not expand access.
48062
47800
  */
48063
47801
  instructions?: string;
47802
+ /**
47803
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
47804
+ */
47805
+ readonly verified?: boolean;
48064
47806
  /**
48065
47807
  * Whether this binding grants access. Defaults to true; false immediately disables it for running sessions.
48066
47808
  */
@@ -48070,6 +47812,10 @@ export type AgentsUpdateResponses = {
48070
47812
  * Service type. Opens the whole service to codemode; there is no per-resource id.
48071
47813
  */
48072
47814
  type: 'search' | 'browser';
47815
+ /**
47816
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
47817
+ */
47818
+ readonly verified?: boolean;
48073
47819
  /**
48074
47820
  * Whether the service is open. Defaults to true; false immediately closes it for running sessions.
48075
47821
  */
@@ -48087,6 +47833,10 @@ export type AgentsUpdateResponses = {
48087
47833
  * Praxis extension: default subagent model ID, pinned in the agent revision. Call model overrides this; otherwise it overrides the roster member model or the parent model for built-ins. Null clears the default. /agent/v1 only.
48088
47834
  */
48089
47835
  subagent_model?: string | null;
47836
+ /**
47837
+ * Model used by the imagine image tool; defaults to gpt-image-2 when unset. Only models that can generate images are accepted. Omit to preserve; null clears the configured model. /agent/v1 only.
47838
+ */
47839
+ image_model?: string | null;
48090
47840
  /**
48091
47841
  * Praxis extension: inline subagent definitions stored in the configuration revision, separately from the multiagent roster. Omit to preserve; null clears. Names must be unique. Configuration storage only; runtime activation is not implemented. /agent/v1 only.
48092
47842
  */
@@ -48616,7 +48366,7 @@ export type AgentsArchiveResponses = {
48616
48366
  */
48617
48367
  note: string | null;
48618
48368
  /**
48619
- * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings.
48369
+ * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings. Saving checks added or changed database, vector_store, media_library and file bindings in the organization: unknown or deleted ids return 400. If an owner is unavailable or takes more than 3 seconds, saving succeeds with verified=false for the affected bindings. Unchanged bindings keep their previous verification result and are not rechecked. workflow and script ids are not verified at save time.
48620
48370
  */
48621
48371
  bindings: Array<{
48622
48372
  /**
@@ -48635,6 +48385,10 @@ export type AgentsArchiveResponses = {
48635
48385
  * Optional guidance for using this resource, up to 4096 characters; does not expand access.
48636
48386
  */
48637
48387
  instructions?: string;
48388
+ /**
48389
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
48390
+ */
48391
+ readonly verified?: boolean;
48638
48392
  /**
48639
48393
  * Whether this binding grants access. Defaults to true; false immediately disables it for running sessions.
48640
48394
  */
@@ -48644,6 +48398,10 @@ export type AgentsArchiveResponses = {
48644
48398
  * Service type. Opens the whole service to codemode; there is no per-resource id.
48645
48399
  */
48646
48400
  type: 'search' | 'browser';
48401
+ /**
48402
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
48403
+ */
48404
+ readonly verified?: boolean;
48647
48405
  /**
48648
48406
  * Whether the service is open. Defaults to true; false immediately closes it for running sessions.
48649
48407
  */
@@ -48661,6 +48419,10 @@ export type AgentsArchiveResponses = {
48661
48419
  * Praxis extension: default subagent model ID, pinned in the agent revision. Call model overrides this; otherwise it overrides the roster member model or the parent model for built-ins. Null clears the default. /agent/v1 only.
48662
48420
  */
48663
48421
  subagent_model?: string | null;
48422
+ /**
48423
+ * Model used by the imagine image tool; defaults to gpt-image-2 when unset. Only models that can generate images are accepted. Omit to preserve; null clears the configured model. /agent/v1 only.
48424
+ */
48425
+ image_model?: string | null;
48664
48426
  /**
48665
48427
  * Praxis extension: inline subagent definitions stored in the configuration revision, separately from the multiagent roster. Omit to preserve; null clears. Names must be unique. Configuration storage only; runtime activation is not implemented. /agent/v1 only.
48666
48428
  */
@@ -49208,7 +48970,7 @@ export type AgentsVersionsListResponses = {
49208
48970
  */
49209
48971
  note: string | null;
49210
48972
  /**
49211
- * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings.
48973
+ * Platform resources and services this service agent's codemode may reach, as one list of typed bindings. Only kind=service accepts a nonempty list; personal agents return 400. There are two kinds. A resource binding names one resource with id and access: database (id db_..., read_only or read_write), vector_store (id vs_..., read_only or read_write), file (id file- plus 24 letters or digits, as the File API returns it; read_only), media_library (any id without ':' or whitespace, read_only or read_write), model (a model catalog id, invoke), workflow and script (id <namespace>/<name>, invoke). A service binding opens a whole service and carries only enabled: search or browser. At most 20 bindings per type, no repeated type and id, and each service type at most once. A session is authorized by the agent version it runs: newly added bindings apply only to new sessions, and a version saved with apply=false changes no access until it is applied. Applying a version that disables, removes or downgrades a binding revokes it immediately in running sessions on older versions. A resource that is not bound returns 404, a service that is not opened returns 403, and a write to a resource bound read_only returns 403 BINDING_READ_ONLY. Unknown types, fields on the wrong kind (id, access or instructions on a service binding), wrong access and malformed ids return 400. The former databases, vector_stores and files fields are removed and return 400. Omit on create for no bindings. Saving checks added or changed database, vector_store, media_library and file bindings in the organization: unknown or deleted ids return 400. If an owner is unavailable or takes more than 3 seconds, saving succeeds with verified=false for the affected bindings. Unchanged bindings keep their previous verification result and are not rechecked. workflow and script ids are not verified at save time.
49212
48974
  */
49213
48975
  bindings: Array<{
49214
48976
  /**
@@ -49227,6 +48989,10 @@ export type AgentsVersionsListResponses = {
49227
48989
  * Optional guidance for using this resource, up to 4096 characters; does not expand access.
49228
48990
  */
49229
48991
  instructions?: string;
48992
+ /**
48993
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
48994
+ */
48995
+ readonly verified?: boolean;
49230
48996
  /**
49231
48997
  * Whether this binding grants access. Defaults to true; false immediately disables it for running sessions.
49232
48998
  */
@@ -49236,6 +49002,10 @@ export type AgentsVersionsListResponses = {
49236
49002
  * Service type. Opens the whole service to codemode; there is no per-resource id.
49237
49003
  */
49238
49004
  type: 'search' | 'browser';
49005
+ /**
49006
+ * Save-time verification result. false means the resource owner was unavailable; saving still succeeded. Unchanged bindings retain their previous result. true is returned for other bindings, including workflow and script ids which are not verified at save time. Client values are ignored.
49007
+ */
49008
+ readonly verified?: boolean;
49239
49009
  /**
49240
49010
  * Whether the service is open. Defaults to true; false immediately closes it for running sessions.
49241
49011
  */
@@ -49253,6 +49023,10 @@ export type AgentsVersionsListResponses = {
49253
49023
  * Praxis extension: default subagent model ID, pinned in the agent revision. Call model overrides this; otherwise it overrides the roster member model or the parent model for built-ins. Null clears the default. /agent/v1 only.
49254
49024
  */
49255
49025
  subagent_model?: string | null;
49026
+ /**
49027
+ * Model used by the imagine image tool; defaults to gpt-image-2 when unset. Only models that can generate images are accepted. Omit to preserve; null clears the configured model. /agent/v1 only.
49028
+ */
49029
+ image_model?: string | null;
49256
49030
  /**
49257
49031
  * Praxis extension: inline subagent definitions stored in the configuration revision, separately from the multiagent roster. Omit to preserve; null clears. Names must be unique. Configuration storage only; runtime activation is not implemented. /agent/v1 only.
49258
49032
  */