@atlasauth/backend 0.25.0 → 0.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. package/CHANGELOG.md +42 -1
  2. package/dist/client/abac.d.ts +454 -0
  3. package/dist/client/abac.js +123 -0
  4. package/dist/client/abac.js.map +1 -1
  5. package/dist/client/access-policies.d.ts +84 -2
  6. package/dist/client/access-policies.js +8 -0
  7. package/dist/client/access-policies.js.map +1 -1
  8. package/dist/client/actions.d.ts +1 -1
  9. package/dist/client/actions.js.map +1 -1
  10. package/dist/client/agent-platform.d.ts +294 -0
  11. package/dist/client/agent-platform.js +132 -0
  12. package/dist/client/agent-platform.js.map +1 -0
  13. package/dist/client/analytics-reports.d.ts +1 -1
  14. package/dist/client/app-catalog.d.ts +60 -1
  15. package/dist/client/app-catalog.js +32 -2
  16. package/dist/client/app-catalog.js.map +1 -1
  17. package/dist/client/authz-decisions.d.ts +154 -0
  18. package/dist/client/authz-decisions.js +53 -0
  19. package/dist/client/authz-decisions.js.map +1 -0
  20. package/dist/client/connections.d.ts +519 -0
  21. package/dist/client/connections.js +171 -0
  22. package/dist/client/connections.js.map +1 -0
  23. package/dist/client/custom-oauth-providers.d.ts +15 -0
  24. package/dist/client/custom-oauth-providers.js.map +1 -1
  25. package/dist/client/desktop-mfa.d.ts +141 -0
  26. package/dist/client/desktop-mfa.js +58 -0
  27. package/dist/client/desktop-mfa.js.map +1 -0
  28. package/dist/client/devices.d.ts +130 -0
  29. package/dist/client/devices.js +54 -0
  30. package/dist/client/devices.js.map +1 -1
  31. package/dist/client/email-templates.d.ts +1 -1
  32. package/dist/client/email-templates.js.map +1 -1
  33. package/dist/client/fga.d.ts +301 -5
  34. package/dist/client/fga.js +81 -1
  35. package/dist/client/fga.js.map +1 -1
  36. package/dist/client/iga.d.ts +436 -0
  37. package/dist/client/iga.js +82 -0
  38. package/dist/client/iga.js.map +1 -0
  39. package/dist/client/index.d.ts +3767 -2443
  40. package/dist/client/index.js +51 -0
  41. package/dist/client/index.js.map +1 -1
  42. package/dist/client/least-privilege.d.ts +95 -0
  43. package/dist/client/least-privilege.js +28 -0
  44. package/dist/client/least-privilege.js.map +1 -0
  45. package/dist/client/log-streams.d.ts +1 -1
  46. package/dist/client/managed-grants.d.ts +52 -0
  47. package/dist/client/managed-grants.js +28 -0
  48. package/dist/client/managed-grants.js.map +1 -0
  49. package/dist/client/mcp-gateways.d.ts +220 -2
  50. package/dist/client/mcp-gateways.js +74 -0
  51. package/dist/client/mcp-gateways.js.map +1 -1
  52. package/dist/client/messaging.d.ts +11 -2
  53. package/dist/client/messaging.js.map +1 -1
  54. package/dist/client/oauth-clients.d.ts +4 -0
  55. package/dist/client/oauth-clients.js.map +1 -1
  56. package/dist/client/oauth-protocols.d.ts +116 -0
  57. package/dist/client/oauth-protocols.js +54 -0
  58. package/dist/client/oauth-protocols.js.map +1 -0
  59. package/dist/client/oauth-providers.d.ts +4 -4
  60. package/dist/client/openfga.d.ts +90 -3
  61. package/dist/client/openfga.js +27 -1
  62. package/dist/client/openfga.js.map +1 -1
  63. package/dist/client/org-ldap-connections.d.ts +3 -0
  64. package/dist/client/org-ldap-connections.js.map +1 -1
  65. package/dist/client/organizations.d.ts +14 -0
  66. package/dist/client/organizations.js.map +1 -1
  67. package/dist/client/policy-bundles.d.ts +105 -0
  68. package/dist/client/policy-bundles.js +38 -0
  69. package/dist/client/policy-bundles.js.map +1 -0
  70. package/dist/client/resources.d.ts +1 -0
  71. package/dist/client/resources.js.map +1 -1
  72. package/dist/client/risk-containment.d.ts +244 -0
  73. package/dist/client/risk-containment.js +120 -0
  74. package/dist/client/risk-containment.js.map +1 -0
  75. package/dist/client/saml-idp.d.ts +183 -0
  76. package/dist/client/saml-idp.js +71 -0
  77. package/dist/client/saml-idp.js.map +1 -0
  78. package/dist/client/scim-provisioning.d.ts +100 -4
  79. package/dist/client/scim-provisioning.js +30 -0
  80. package/dist/client/scim-provisioning.js.map +1 -1
  81. package/dist/client/scim-tokens.d.ts +34 -0
  82. package/dist/client/scim-tokens.js +17 -0
  83. package/dist/client/scim-tokens.js.map +1 -1
  84. package/dist/client/service-connectors.d.ts +1 -1
  85. package/dist/client/ssf.d.ts +31 -1
  86. package/dist/client/ssf.js +17 -0
  87. package/dist/client/ssf.js.map +1 -1
  88. package/dist/client/users.d.ts +9 -0
  89. package/dist/client/users.js +9 -0
  90. package/dist/client/users.js.map +1 -1
  91. package/dist/client/vault.d.ts +54 -0
  92. package/dist/client/vault.js +30 -0
  93. package/dist/client/vault.js.map +1 -1
  94. package/dist/client/vc.d.ts +62 -2
  95. package/dist/client/vc.js +15 -0
  96. package/dist/client/vc.js.map +1 -1
  97. package/dist/client/workflows.d.ts +182 -3
  98. package/dist/client/workflows.js +34 -0
  99. package/dist/client/workflows.js.map +1 -1
  100. package/dist/index.d.ts +5 -2
  101. package/dist/index.js +6 -1
  102. package/dist/index.js.map +1 -1
  103. package/dist/oauth-resource.d.ts +30 -3
  104. package/dist/oauth-resource.js +43 -2
  105. package/dist/oauth-resource.js.map +1 -1
  106. package/dist/policy-bundle.d.ts +110 -0
  107. package/dist/policy-bundle.js +289 -0
  108. package/dist/policy-bundle.js.map +1 -0
  109. package/dist/txn-token.d.ts +36 -0
  110. package/dist/txn-token.js +30 -0
  111. package/dist/txn-token.js.map +1 -0
  112. package/dist/uma.d.ts +77 -0
  113. package/dist/uma.js +95 -0
  114. package/dist/uma.js.map +1 -0
  115. package/package.json +2 -2
@@ -22,24 +22,179 @@ export interface McpGateway {
22
22
  object: 'mcp_gateway';
23
23
  id: string;
24
24
  name: string;
25
- upstream_url: string;
25
+ /** Null for a gateway made only of upstreams. */
26
+ upstream_url: string | null;
26
27
  /** The upstream Authorization header is write-only. */
27
28
  has_upstream_authorization: boolean;
28
29
  default_policy: 'allow' | 'deny';
29
30
  tools: Record<string, McpToolPolicy>;
30
31
  enabled: boolean;
32
+ /** Authorize every tool call through the ABAC policy engine too. */
33
+ abac: McpGatewayAbac;
34
+ /** A caller sees only the tools of packs assigned to them. */
35
+ packs_enforced: boolean;
36
+ /** Upstreams must be approved in the registry. */
37
+ registry_only: boolean;
38
+ guard: McpGatewayGuard;
39
+ user_auth: McpGatewayUserAuth;
40
+ /** The URL (and RFC 8707 resource) MCP clients connect to. */
41
+ resource: string;
42
+ resource_metadata_url: string;
31
43
  url: string;
32
44
  created_at: number;
33
45
  }
46
+ /** Response and argument guardrails of a gateway. */
47
+ export interface McpGatewayGuard {
48
+ /** Block tool results shaped like prompt injection. */
49
+ injection: boolean;
50
+ /** Redacted in results, refused in arguments: email, card, ssn, phone. */
51
+ pii: Array<'email' | 'card' | 'ssn' | 'phone'>;
52
+ block_patterns: string[];
53
+ /** Pin each tool's description and schema; block a tool whose definition changed. */
54
+ pin_tools: boolean;
55
+ max_result_chars: number;
56
+ }
57
+ /** End-user OAuth: MCP clients sign people in with Atlas and call with their token. */
58
+ export interface McpGatewayUserAuth {
59
+ enabled: boolean;
60
+ allow_agents: boolean;
61
+ /** Group name (`*` = everyone) to the tool names (a trailing `*` is a prefix) that group may use. */
62
+ groups: Record<string, string[]>;
63
+ required_scopes: string[];
64
+ }
65
+ /**
66
+ * Each call is checked as: principal = the agent (type `Agent`: name, tier, owner_user_id,
67
+ * organization_id, scopes, data), action = the tool name, resource = the tool (type `McpTool`:
68
+ * gateway_id, gateway_name, tool, args). With `enabled` and no permitting policy, every call is denied.
69
+ */
70
+ export interface McpGatewayAbac {
71
+ enabled: boolean;
72
+ /** The policies consulted; empty means every enabled policy. */
73
+ policy_ids: string[];
74
+ }
75
+ /** A ceiling across calls: calls, cost units, or calls per window, per agent or per session. */
76
+ export interface McpBudget {
77
+ object: 'mcp_budget';
78
+ id: string;
79
+ gateway_id: string;
80
+ name: string;
81
+ /** `agent`: each agent counts apart. `session`: each session (the Mcp-Session-Id an initialize returns). */
82
+ scope: 'agent' | 'session';
83
+ agent_id: string | null;
84
+ tool: string | null;
85
+ metric: 'calls' | 'cost' | 'rate';
86
+ limit: number;
87
+ /** Fixed windows; null never resets. */
88
+ window_seconds: number | null;
89
+ cost_per_call: number;
90
+ /** A dot path to a number in the call arguments that is the cost of the call. */
91
+ cost_arg: string | null;
92
+ enabled: boolean;
93
+ created_at: number;
94
+ }
95
+ export interface CreateMcpBudgetBody {
96
+ name: string;
97
+ metric: 'calls' | 'cost' | 'rate';
98
+ limit: number;
99
+ scope?: 'agent' | 'session';
100
+ /** Required for `rate`. */
101
+ window_seconds?: number | null;
102
+ agent_id?: string | null;
103
+ tool?: string | null;
104
+ cost_per_call?: number;
105
+ cost_arg?: string | null;
106
+ enabled?: boolean;
107
+ }
108
+ export interface McpBudgetUsage {
109
+ object: 'mcp_budget_usage';
110
+ budget_id: string;
111
+ agent_id: string;
112
+ used: number;
113
+ limit: number;
114
+ remaining: number;
115
+ resets_at: number | null;
116
+ }
34
117
  export interface CreateMcpGatewayBody {
35
118
  name: string;
36
- upstream_url: string;
119
+ /** Omit for a gateway made only of upstreams. */
120
+ upstream_url?: string | null;
37
121
  upstream_authorization?: string;
38
122
  default_policy?: 'allow' | 'deny';
39
123
  tools?: Record<string, McpToolPolicy>;
40
124
  enabled?: boolean;
125
+ abac?: Partial<McpGatewayAbac>;
126
+ packs_enforced?: boolean;
127
+ registry_only?: boolean;
128
+ guard?: Partial<Omit<McpGatewayGuard, 'block_patterns'>> & {
129
+ block_patterns?: string[];
130
+ };
131
+ user_auth?: Partial<McpGatewayUserAuth>;
41
132
  }
42
133
  export type UpdateMcpGatewayBody = Partial<CreateMcpGatewayBody>;
134
+ /** One upstream of a gateway: an MCP server, an OpenAPI-described API, or a connection's managed actions. */
135
+ export interface McpGatewayUpstream {
136
+ object: 'mcp_gateway_upstream';
137
+ id: string;
138
+ gateway_id: string;
139
+ namespace: string;
140
+ kind: 'mcp' | 'openapi' | 'actions';
141
+ url: string | null;
142
+ auth_kind: 'none' | 'static' | 'connection';
143
+ has_authorization: boolean;
144
+ connection_id: string | null;
145
+ connection_owner: 'org' | 'agent_owner';
146
+ connect_redirect_url: string | null;
147
+ action_names: string[];
148
+ tool_count: number | null;
149
+ stream: boolean;
150
+ enabled: boolean;
151
+ created_at: number;
152
+ }
153
+ export interface McpGatewayUpstreamBody {
154
+ namespace?: string;
155
+ kind?: 'mcp' | 'openapi' | 'actions';
156
+ url?: string;
157
+ /** openapi: an OpenAPI 3.x document. */
158
+ openapi?: Record<string, unknown>;
159
+ auth_kind?: 'none' | 'static' | 'connection';
160
+ /** Write-only. */
161
+ authorization?: string;
162
+ connection_id?: string;
163
+ connection_owner?: 'org' | 'agent_owner';
164
+ connect_redirect_url?: string | null;
165
+ action_names?: string[];
166
+ stream?: boolean;
167
+ enabled?: boolean;
168
+ }
169
+ export interface McpToolPack {
170
+ object: 'mcp_tool_pack';
171
+ id: string;
172
+ gateway_id: string;
173
+ name: string;
174
+ description: string | null;
175
+ tools: string[];
176
+ agent_ids: string[];
177
+ org_ids: string[];
178
+ groups: string[];
179
+ created_at: number;
180
+ }
181
+ export interface McpToolPackBody {
182
+ name?: string;
183
+ description?: string | null;
184
+ tools?: string[];
185
+ agent_ids?: string[];
186
+ org_ids?: string[];
187
+ groups?: string[];
188
+ }
189
+ export interface McpToolPin {
190
+ object: 'mcp_tool_pin';
191
+ gateway_id: string;
192
+ tool: string;
193
+ status: 'approved' | 'changed';
194
+ approved_by: string | null;
195
+ approved_at: number;
196
+ changed_at: number | null;
197
+ }
43
198
  export declare function mcpGatewaysResource(request: RequestFn): {
44
199
  list(): Promise<ListPage<McpGateway>>;
45
200
  create(body: CreateMcpGatewayBody, idempotencyKey?: string): Promise<McpGateway>;
@@ -51,4 +206,67 @@ export declare function mcpGatewaysResource(request: RequestFn): {
51
206
  id: string;
52
207
  deleted: true;
53
208
  }>;
209
+ /** Cross-call budgets of one gateway. */
210
+ budgets: {
211
+ list(gatewayId: string): Promise<ListPage<McpBudget>>;
212
+ create(gatewayId: string, body: CreateMcpBudgetBody): Promise<McpBudget>;
213
+ get(gatewayId: string, budgetId: string): Promise<McpBudget>;
214
+ update(gatewayId: string, budgetId: string, body: Partial<CreateMcpBudgetBody>): Promise<McpBudget>;
215
+ delete(gatewayId: string, budgetId: string): Promise<{
216
+ object: "mcp_budget";
217
+ id: string;
218
+ deleted: true;
219
+ }>;
220
+ /** What an agent (and, for a per-session budget, one session) has used of the budget now. */
221
+ usage(gatewayId: string, budgetId: string, query?: {
222
+ agent_id?: string;
223
+ session_id?: string;
224
+ }): Promise<McpBudgetUsage>;
225
+ };
226
+ /** MCP servers and APIs behind one gateway, each under a namespace (`<namespace>__<tool>`). */
227
+ upstreams: {
228
+ list(gatewayId: string): Promise<ListPage<McpGatewayUpstream>>;
229
+ create(gatewayId: string, body: McpGatewayUpstreamBody): Promise<McpGatewayUpstream>;
230
+ get(gatewayId: string, upstreamId: string): Promise<McpGatewayUpstream>;
231
+ update(gatewayId: string, upstreamId: string, body: McpGatewayUpstreamBody): Promise<McpGatewayUpstream>;
232
+ delete(gatewayId: string, upstreamId: string): Promise<{
233
+ object: "mcp_gateway_upstream";
234
+ id: string;
235
+ deleted: true;
236
+ }>;
237
+ /** Reach the upstream and list the tools it would add. */
238
+ test(gatewayId: string, upstreamId: string): Promise<{
239
+ object: "mcp_upstream_test";
240
+ ok: boolean;
241
+ tools: string[];
242
+ error: string | null;
243
+ }>;
244
+ };
245
+ /** Named tool sets assigned to agents, organizations or groups. */
246
+ packs: {
247
+ list(gatewayId: string): Promise<ListPage<McpToolPack>>;
248
+ create(gatewayId: string, body: McpToolPackBody & {
249
+ name: string;
250
+ }): Promise<McpToolPack>;
251
+ get(gatewayId: string, packId: string): Promise<McpToolPack>;
252
+ update(gatewayId: string, packId: string, body: McpToolPackBody): Promise<McpToolPack>;
253
+ delete(gatewayId: string, packId: string): Promise<{
254
+ object: "mcp_tool_pack";
255
+ id: string;
256
+ deleted: true;
257
+ }>;
258
+ };
259
+ /** Pinned tool definitions (`guard.pin_tools`): review what changed, approve it. */
260
+ pins: {
261
+ list(gatewayId: string, query?: {
262
+ status?: "approved" | "changed";
263
+ }): Promise<ListPage<McpToolPin>>;
264
+ approve(gatewayId: string, tool: string): Promise<McpToolPin>;
265
+ delete(gatewayId: string, tool: string): Promise<{
266
+ object: "mcp_tool_pin";
267
+ gateway_id: string;
268
+ tool: string;
269
+ deleted: true;
270
+ }>;
271
+ };
54
272
  };
@@ -20,6 +20,80 @@ function mcpGatewaysResource(request) {
20
20
  delete(id) {
21
21
  return request({ method: 'DELETE', path: `/v1/mcp_gateways/${(0, request_1.enc)(id)}` });
22
22
  },
23
+ /** Cross-call budgets of one gateway. */
24
+ budgets: {
25
+ list(gatewayId) {
26
+ return request({ method: 'GET', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/budgets` });
27
+ },
28
+ create(gatewayId, body) {
29
+ return request({ method: 'POST', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/budgets`, body });
30
+ },
31
+ get(gatewayId, budgetId) {
32
+ return request({ method: 'GET', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/budgets/${(0, request_1.enc)(budgetId)}` });
33
+ },
34
+ update(gatewayId, budgetId, body) {
35
+ return request({ method: 'PATCH', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/budgets/${(0, request_1.enc)(budgetId)}`, body });
36
+ },
37
+ delete(gatewayId, budgetId) {
38
+ return request({ method: 'DELETE', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/budgets/${(0, request_1.enc)(budgetId)}` });
39
+ },
40
+ /** What an agent (and, for a per-session budget, one session) has used of the budget now. */
41
+ usage(gatewayId, budgetId, query = {}) {
42
+ return request({ method: 'GET', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/budgets/${(0, request_1.enc)(budgetId)}/usage`, query: { ...query } });
43
+ },
44
+ },
45
+ /** MCP servers and APIs behind one gateway, each under a namespace (`<namespace>__<tool>`). */
46
+ upstreams: {
47
+ list(gatewayId) {
48
+ return request({ method: 'GET', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/upstreams` });
49
+ },
50
+ create(gatewayId, body) {
51
+ return request({ method: 'POST', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/upstreams`, body });
52
+ },
53
+ get(gatewayId, upstreamId) {
54
+ return request({ method: 'GET', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/upstreams/${(0, request_1.enc)(upstreamId)}` });
55
+ },
56
+ update(gatewayId, upstreamId, body) {
57
+ return request({ method: 'PATCH', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/upstreams/${(0, request_1.enc)(upstreamId)}`, body });
58
+ },
59
+ delete(gatewayId, upstreamId) {
60
+ return request({ method: 'DELETE', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/upstreams/${(0, request_1.enc)(upstreamId)}` });
61
+ },
62
+ /** Reach the upstream and list the tools it would add. */
63
+ test(gatewayId, upstreamId) {
64
+ return request({ method: 'POST', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/upstreams/${(0, request_1.enc)(upstreamId)}/test` });
65
+ },
66
+ },
67
+ /** Named tool sets assigned to agents, organizations or groups. */
68
+ packs: {
69
+ list(gatewayId) {
70
+ return request({ method: 'GET', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/packs` });
71
+ },
72
+ create(gatewayId, body) {
73
+ return request({ method: 'POST', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/packs`, body });
74
+ },
75
+ get(gatewayId, packId) {
76
+ return request({ method: 'GET', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/packs/${(0, request_1.enc)(packId)}` });
77
+ },
78
+ update(gatewayId, packId, body) {
79
+ return request({ method: 'PATCH', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/packs/${(0, request_1.enc)(packId)}`, body });
80
+ },
81
+ delete(gatewayId, packId) {
82
+ return request({ method: 'DELETE', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/packs/${(0, request_1.enc)(packId)}` });
83
+ },
84
+ },
85
+ /** Pinned tool definitions (`guard.pin_tools`): review what changed, approve it. */
86
+ pins: {
87
+ list(gatewayId, query = {}) {
88
+ return request({ method: 'GET', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/pins`, query: { ...query } });
89
+ },
90
+ approve(gatewayId, tool) {
91
+ return request({ method: 'POST', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/pins/${(0, request_1.enc)(tool)}/approve` });
92
+ },
93
+ delete(gatewayId, tool) {
94
+ return request({ method: 'DELETE', path: `/v1/mcp_gateways/${(0, request_1.enc)(gatewayId)}/pins/${(0, request_1.enc)(tool)}` });
95
+ },
96
+ },
23
97
  };
24
98
  }
25
99
  //# sourceMappingURL=mcp-gateways.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-gateways.js","sourceRoot":"","sources":["../../src/client/mcp-gateways.ts"],"names":[],"mappings":";;AAwCA,kDAmBC;AA3DD,uCAAgD;AAwChD,SAAgB,mBAAmB,CAAC,OAAkB;IACpD,OAAO;QACL,IAAI;YACF,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,MAAM,CAAC,IAA0B,EAAE,cAAuB;YACxD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QACrF,CAAC;QACD,GAAG,CAAC,EAAU;YACZ,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,oBAAoB,IAAA,aAAG,EAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,sCAAsC;QACtC,MAAM,CAAC,EAAU,EAAE,IAA0B;YAC3C,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,oBAAoB,IAAA,aAAG,EAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACjF,CAAC;QACD,MAAM,CAAC,EAAU;YACf,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,oBAAoB,IAAA,aAAG,EAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5E,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"mcp-gateways.js","sourceRoot":"","sources":["../../src/client/mcp-gateways.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,7 @@ import { type RequestFn } from './request';
18
18
  * stored secret) stays. So a from-address change need not re-enter the API key.
19
19
  */
20
20
  /** Email transports accepted by `PUT /v1/messaging_providers/email`. */
21
- export type EmailTransport = 'resend' | 'ses' | 'smtp' | 'brevo' | 'mailgun' | 'webhook';
21
+ export type EmailTransport = 'resend' | 'ses' | 'smtp' | 'brevo' | 'mailgun' | 'smtp2go' | 'webhook';
22
22
  /** SMS transports accepted by `PUT /v1/messaging_providers/sms`. */
23
23
  export type SmsTransport = 'twilio' | 'vonage' | 'messagebird' | 'plivo' | 'telnyx' | 'sinch' | 'infobip' | 'clicksend' | 'bandwidth' | 'aws_sns' | 'webhook';
24
24
  export type MessagingTransport = EmailTransport | SmsTransport;
@@ -46,6 +46,13 @@ export interface MailgunConfig {
46
46
  /** Mailgun region. Default `us`. */
47
47
  region?: 'us' | 'eu';
48
48
  }
49
+ /** SMTP2GO. */
50
+ export interface Smtp2goConfig {
51
+ /** SMTP2GO API key (`api-…`) with permission to send email. Required on first setup. Write-only: never returned. */
52
+ api_key: string;
53
+ /** The data region your account uses. Omit for the regionless host. */
54
+ region?: 'us' | 'eu' | 'au';
55
+ }
49
56
  /** Amazon SES. */
50
57
  export interface SesConfig {
51
58
  /** AWS region, e.g. `us-east-1`. Required on first setup. */
@@ -166,6 +173,7 @@ export interface MessagingTransportConfigs {
166
173
  smtp: SmtpConfig;
167
174
  brevo: BrevoConfig;
168
175
  mailgun: MailgunConfig;
176
+ smtp2go: Smtp2goConfig;
169
177
  twilio: TwilioConfig;
170
178
  vonage: VonageConfig;
171
179
  messagebird: MessagebirdConfig;
@@ -185,6 +193,7 @@ export interface MessagingSecretKeys {
185
193
  smtp: 'password';
186
194
  brevo: 'api_key';
187
195
  mailgun: 'api_key';
196
+ smtp2go: 'api_key';
188
197
  twilio: 'auth_token';
189
198
  vonage: 'api_secret';
190
199
  messagebird: 'access_key';
@@ -424,7 +433,7 @@ export type EnableDevelopmentEmailBody = {
424
433
  provider_id: string;
425
434
  from_address?: string;
426
435
  } | {
427
- transport: 'resend' | 'ses' | 'smtp' | 'brevo' | 'mailgun' | 'webhook';
436
+ transport: 'resend' | 'ses' | 'smtp' | 'brevo' | 'mailgun' | 'smtp2go' | 'webhook';
428
437
  config?: Record<string, string>;
429
438
  from_address?: string;
430
439
  };
@@ -1 +1 @@
1
- {"version":3,"file":"messaging.js","sourceRoot":"","sources":["../../src/client/messaging.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"messaging.js","sourceRoot":"","sources":["../../src/client/messaging.ts"],"names":[],"mappings":"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"}
@@ -61,6 +61,8 @@ export interface OAuthClient extends ProvisioningFields {
61
61
  first_party: boolean;
62
62
  /** Where the client may send users after an RP-initiated logout. */
63
63
  post_logout_redirect_uris: string[];
64
+ /** UMA 2.0 claims-gathering redirect allowlist (exact match). */
65
+ claims_redirect_uris: string[];
64
66
  /** Back-channel logout endpoint Atlas POSTs a `logout_token` to, or null. */
65
67
  backchannel_logout_uri: string | null;
66
68
  /** Whether the back-channel `logout_token` must carry `sid`. */
@@ -149,6 +151,8 @@ export interface CreateInitialAccessTokenBody {
149
151
  */
150
152
  export interface OAuthClientLogoutFields {
151
153
  post_logout_redirect_uris?: string[];
154
+ /** UMA 2.0 claims-gathering redirect allowlist (exact match). */
155
+ claims_redirect_uris?: string[];
152
156
  backchannel_logout_uri?: string | null;
153
157
  backchannel_logout_session_required?: boolean;
154
158
  frontchannel_logout_uri?: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-clients.js","sourceRoot":"","sources":["../../src/client/oauth-clients.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth-clients.js","sourceRoot":"","sources":["../../src/client/oauth-clients.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,116 @@
1
+ import { type RequestFn } from './request';
2
+ import type { ListPage } from './types';
3
+ export interface RefreshToken {
4
+ object: 'refresh_token';
5
+ id: string;
6
+ client_id: string;
7
+ user_id: string;
8
+ organization_id: string | null;
9
+ status: 'active' | 'revoked' | 'expired' | 'replaced';
10
+ scope: string;
11
+ audience: string | null;
12
+ sender_constrained: boolean;
13
+ created_at: number;
14
+ expires_at: number;
15
+ idle_expires_at: number;
16
+ }
17
+ export interface OpKey {
18
+ object: 'op_key';
19
+ kid: string;
20
+ alg: 'PS256' | 'ES384' | 'EdDSA' | 'RSA-OAEP-256' | 'ECDH-ES';
21
+ use: 'sig' | 'enc';
22
+ status: 'current' | 'previous';
23
+ retires_at: number | null;
24
+ created_at: number;
25
+ }
26
+ export interface TokenExchangeProfile {
27
+ object: 'oauth_token_exchange_profile';
28
+ id: string;
29
+ client_id: string;
30
+ name: string;
31
+ subject_token_type: string;
32
+ enabled: boolean;
33
+ created_at: number;
34
+ updated_at: number;
35
+ }
36
+ export interface Federation {
37
+ object: 'federation';
38
+ enabled: boolean;
39
+ entity_id: string;
40
+ entity_configuration_url: string;
41
+ federation_fetch_endpoint: string | null;
42
+ federation_list_endpoint: string | null;
43
+ federation_resolve_endpoint: string;
44
+ federation_registration_endpoint: string | null;
45
+ authority_hints: string[];
46
+ trust_anchors: string[];
47
+ subordinates: string[];
48
+ automatic_registration: boolean;
49
+ explicit_registration: boolean;
50
+ }
51
+ export type FederationResolution = {
52
+ object: 'federation_resolution';
53
+ entity_id: string;
54
+ valid: true;
55
+ trust_anchor: string;
56
+ entities: string[];
57
+ expires_at: number;
58
+ metadata: Record<string, unknown>;
59
+ } | {
60
+ object: 'federation_resolution';
61
+ entity_id: string;
62
+ valid: false;
63
+ error: string;
64
+ error_description: string;
65
+ };
66
+ /** Refresh-token search and bulk revoke; the OpenID provider's extra keys; custom token-exchange subject types. */
67
+ export declare function oauthProtocolsResource(request: RequestFn): {
68
+ refreshTokens: {
69
+ /** Search the refresh grants OAuth apps hold. Tokens and hashes are never returned. */
70
+ list(query?: {
71
+ user_id?: string;
72
+ client_id?: string;
73
+ status?: RefreshToken["status"];
74
+ limit?: number;
75
+ }): Promise<ListPage<RefreshToken>>;
76
+ /** Revoke by ids, or every active grant of a user and / or app. A request with no filter is refused. */
77
+ revoke(body: {
78
+ ids?: string[];
79
+ user_id?: string;
80
+ client_id?: string;
81
+ }): Promise<{
82
+ object: "refresh_token_revocation";
83
+ revoked: number;
84
+ }>;
85
+ };
86
+ federation: {
87
+ /** This instance's OpenID Federation entity identifier, endpoints and configured anchors. */
88
+ get(): Promise<Federation>;
89
+ /** Dry-run: resolve an entity's trust chain against the configured anchors. Registers nothing. */
90
+ resolve(body: {
91
+ entity_id: string;
92
+ trust_anchor?: string;
93
+ }): Promise<FederationResolution>;
94
+ };
95
+ opKeys: {
96
+ list(): Promise<ListPage<OpKey>>;
97
+ /** Rotate one algorithm's key; the previous public key stays published for the grace window. */
98
+ rotate(body: {
99
+ alg: OpKey["alg"];
100
+ grace_period_seconds?: number;
101
+ }): Promise<OpKey>;
102
+ };
103
+ tokenExchangeProfiles: {
104
+ list(clientId: string): Promise<ListPage<TokenExchangeProfile>>;
105
+ create(clientId: string, body: {
106
+ name: string;
107
+ subject_token_type: string;
108
+ enabled?: boolean;
109
+ }): Promise<TokenExchangeProfile>;
110
+ update(clientId: string, profileId: string, body: {
111
+ name?: string;
112
+ enabled?: boolean;
113
+ }): Promise<TokenExchangeProfile>;
114
+ delete(clientId: string, profileId: string): Promise<void>;
115
+ };
116
+ };
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.oauthProtocolsResource = oauthProtocolsResource;
4
+ const request_1 = require("./request");
5
+ /** Refresh-token search and bulk revoke; the OpenID provider's extra keys; custom token-exchange subject types. */
6
+ function oauthProtocolsResource(request) {
7
+ const profiles = (clientId) => `/v1/oauth_clients/${(0, request_1.enc)(clientId)}/token_exchange_profiles`;
8
+ return {
9
+ refreshTokens: {
10
+ /** Search the refresh grants OAuth apps hold. Tokens and hashes are never returned. */
11
+ list(query = {}) {
12
+ return request({ method: 'GET', path: '/v1/refresh_tokens', query });
13
+ },
14
+ /** Revoke by ids, or every active grant of a user and / or app. A request with no filter is refused. */
15
+ revoke(body) {
16
+ return request({ method: 'POST', path: '/v1/refresh_tokens/revoke', body });
17
+ },
18
+ },
19
+ federation: {
20
+ /** This instance's OpenID Federation entity identifier, endpoints and configured anchors. */
21
+ get() {
22
+ return request({ method: 'GET', path: '/v1/federation' });
23
+ },
24
+ /** Dry-run: resolve an entity's trust chain against the configured anchors. Registers nothing. */
25
+ resolve(body) {
26
+ return request({ method: 'POST', path: '/v1/federation/resolve', body });
27
+ },
28
+ },
29
+ opKeys: {
30
+ list() {
31
+ return request({ method: 'GET', path: '/v1/instance/op_keys' });
32
+ },
33
+ /** Rotate one algorithm's key; the previous public key stays published for the grace window. */
34
+ rotate(body) {
35
+ return request({ method: 'POST', path: '/v1/instance/op_keys/rotate', body });
36
+ },
37
+ },
38
+ tokenExchangeProfiles: {
39
+ list(clientId) {
40
+ return request({ method: 'GET', path: profiles(clientId) });
41
+ },
42
+ create(clientId, body) {
43
+ return request({ method: 'POST', path: profiles(clientId), body });
44
+ },
45
+ update(clientId, profileId, body) {
46
+ return request({ method: 'PATCH', path: `${profiles(clientId)}/${(0, request_1.enc)(profileId)}`, body });
47
+ },
48
+ delete(clientId, profileId) {
49
+ return request({ method: 'DELETE', path: `${profiles(clientId)}/${(0, request_1.enc)(profileId)}` });
50
+ },
51
+ },
52
+ };
53
+ }
54
+ //# sourceMappingURL=oauth-protocols.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-protocols.js","sourceRoot":"","sources":["../../src/client/oauth-protocols.ts"],"names":[],"mappings":";;AA4DA,wDA+CC;AA3GD,uCAAgD;AA2DhD,mHAAmH;AACnH,SAAgB,sBAAsB,CAAC,OAAkB;IACvD,MAAM,QAAQ,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,qBAAqB,IAAA,aAAG,EAAC,QAAQ,CAAC,0BAA0B,CAAC;IACpG,OAAO;QACL,aAAa,EAAE;YACb,uFAAuF;YACvF,IAAI,CAAC,QAAmG,EAAE;gBACxG,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,CAAC;YACvE,CAAC;YACD,wGAAwG;YACxG,MAAM,CAAC,IAA8D;gBACnE,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9E,CAAC;SACF;QACD,UAAU,EAAE;YACV,6FAA6F;YAC7F,GAAG;gBACD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;YAC5D,CAAC;YACD,kGAAkG;YAClG,OAAO,CAAC,IAAkD;gBACxD,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3E,CAAC;SACF;QACD,MAAM,EAAE;YACN,IAAI;gBACF,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC,CAAC;YAClE,CAAC;YACD,gGAAgG;YAChG,MAAM,CAAC,IAA0D;gBAC/D,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,6BAA6B,EAAE,IAAI,EAAE,CAAC,CAAC;YAChF,CAAC;SACF;QACD,qBAAqB,EAAE;YACrB,IAAI,CAAC,QAAgB;gBACnB,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC9D,CAAC;YACD,MAAM,CAAC,QAAgB,EAAE,IAAqE;gBAC5F,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,CAAC,QAAgB,EAAE,SAAiB,EAAE,IAA0C;gBACpF,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAA,aAAG,EAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7F,CAAC;YACD,MAAM,CAAC,QAAgB,EAAE,SAAiB;gBACxC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAA,aAAG,EAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;YACxF,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -57,7 +57,7 @@ export interface OAuthProvider {
57
57
  custom_redirect_uri?: string | null;
58
58
  /** The instance's icon override for this provider's button, or null. */
59
59
  icon_url?: string | null;
60
- /** Wallet providers only (siwe, siws, siwf): the stored verifier settings. */
60
+ /** Wallet providers only (siwe, siws, siwb, siwf): the stored verifier settings. */
61
61
  setting_values?: Record<string, string>;
62
62
  }
63
63
  export type OAuthProviderMode = 'native' | 'redirect';
@@ -73,14 +73,14 @@ export interface ListOAuthProvidersParams {
73
73
  * clears one; an unknown key is refused.
74
74
  */
75
75
  export interface OAuthWalletSettings {
76
- /** siwe / siws / siwf: the expected domain (`hostname[:port]`). */
76
+ /** siwe / siws / siwb / siwf: the expected domain (`hostname[:port]`). */
77
77
  domain?: string | null;
78
78
  /** siwe / siwf: allowed chain ids (positive integers, array or comma list). */
79
79
  chain_ids?: number[] | string | null;
80
80
  /** siwe: an https RPC URL; enables smart-contract (EIP-1271) wallets. */
81
81
  rpc_url?: string | null;
82
- /** siws: allowed networks. */
83
- networks?: Array<'mainnet' | 'devnet' | 'testnet'> | string | null;
82
+ /** siws: allowed networks. siwb: allowed Bitcoin networks (`mainnet`, `testnet`, `testnet4`, `signet`, `regtest`). */
83
+ networks?: Array<'mainnet' | 'devnet' | 'testnet' | 'testnet4' | 'signet' | 'regtest'> | string | null;
84
84
  /** siwf: an https Optimism RPC URL, required to verify FID ownership. */
85
85
  optimism_rpc_url?: string | null;
86
86
  /** siwf: the Farcaster ID registry contract (`0x…`). */