@orvello/sdk 0.2.1 → 0.2.3

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.
package/dist/contract.js CHANGED
@@ -1,15 +1,20 @@
1
1
  // src/generated/api/catalog.ts
2
2
  var apiMountPrefixes = {
3
3
  base: [
4
+ "/api-keys",
4
5
  "/api/amp-proxy",
5
6
  "/api/entitlements",
6
7
  "/app-info",
7
8
  "/app-logs",
9
+ "/auth",
10
+ "/docs",
8
11
  "/entitlements",
12
+ "/internal/users",
9
13
  "/oauth",
10
14
  "/permissions",
11
15
  "/role-assignments",
12
16
  "/roles",
17
+ "/security",
13
18
  "/settings",
14
19
  "/user-activity",
15
20
  "/users",
@@ -22,23 +27,35 @@ var apiMountPrefixes = {
22
27
  "/bookkeeping",
23
28
  "/currency-rates",
24
29
  "/customer-companies",
25
- "/docs",
26
30
  "/documents",
27
31
  "/exports",
28
32
  "/invoices",
29
- "/managing-companies"
33
+ "/managing-companies",
34
+ "/oauth"
30
35
  ]
31
36
  };
32
37
  var apiGroups = {
33
38
  base: [
34
39
  {
35
- "key": "api",
36
- "module": "./routes.api"
40
+ "key": "api_keys",
41
+ "module": "./routes.api_keys"
42
+ },
43
+ {
44
+ "key": "app_info",
45
+ "module": "./routes.app_info"
46
+ },
47
+ {
48
+ "key": "auth",
49
+ "module": "./routes.auth"
37
50
  },
38
51
  {
39
52
  "key": "entitlements",
40
53
  "module": "./routes.entitlements"
41
54
  },
55
+ {
56
+ "key": "internal",
57
+ "module": "./routes.internal"
58
+ },
42
59
  {
43
60
  "key": "permissions",
44
61
  "module": "./routes.permissions"
@@ -47,10 +64,18 @@ var apiGroups = {
47
64
  "key": "roles",
48
65
  "module": "./routes.roles"
49
66
  },
67
+ {
68
+ "key": "security",
69
+ "module": "./routes.security"
70
+ },
50
71
  {
51
72
  "key": "settings",
52
73
  "module": "./routes.settings"
53
74
  },
75
+ {
76
+ "key": "user_activity",
77
+ "module": "./routes.user_activity"
78
+ },
54
79
  {
55
80
  "key": "users",
56
81
  "module": "./routes.users"
@@ -69,6 +94,14 @@ var apiGroups = {
69
94
  "key": "bookkeeping",
70
95
  "module": "./routes.bookkeeping"
71
96
  },
97
+ {
98
+ "key": "currency_rates",
99
+ "module": "./routes.currency_rates"
100
+ },
101
+ {
102
+ "key": "customer_companies",
103
+ "module": "./routes.customer_companies"
104
+ },
72
105
  {
73
106
  "key": "documents",
74
107
  "module": "./routes.documents"
@@ -80,6 +113,10 @@ var apiGroups = {
80
113
  {
81
114
  "key": "invoices",
82
115
  "module": "./routes.invoices"
116
+ },
117
+ {
118
+ "key": "managing_companies",
119
+ "module": "./routes.managing_companies"
83
120
  }
84
121
  ],
85
122
  all: [
@@ -88,13 +125,17 @@ var apiGroups = {
88
125
  "module": "./features/routes.admin"
89
126
  },
90
127
  {
91
- "key": "api",
92
- "module": "./base/routes.api"
128
+ "key": "api_keys",
129
+ "module": "./base/routes.api_keys"
93
130
  },
94
131
  {
95
132
  "key": "app_info",
96
133
  "module": "./base/routes.app_info"
97
134
  },
135
+ {
136
+ "key": "auth",
137
+ "module": "./base/routes.auth"
138
+ },
98
139
  {
99
140
  "key": "bookkeeping",
100
141
  "module": "./features/routes.bookkeeping"
@@ -131,6 +172,10 @@ var apiGroups = {
131
172
  "key": "exports",
132
173
  "module": "./features/routes.exports"
133
174
  },
175
+ {
176
+ "key": "internal",
177
+ "module": "./base/routes.internal"
178
+ },
134
179
  {
135
180
  "key": "invoices",
136
181
  "module": "./features/routes.invoices"
@@ -141,7 +186,7 @@ var apiGroups = {
141
186
  },
142
187
  {
143
188
  "key": "logs",
144
- "module": "./features/routes.logs"
189
+ "module": "./base/routes.logs"
145
190
  },
146
191
  {
147
192
  "key": "managing_companies",
@@ -157,11 +202,11 @@ var apiGroups = {
157
202
  },
158
203
  {
159
204
  "key": "oauth2",
160
- "module": "./features/routes.oauth2"
205
+ "module": "./base/routes.oauth2"
161
206
  },
162
207
  {
163
208
  "key": "oauth2_external",
164
- "module": "./features/routes.oauth2_external"
209
+ "module": "./base/routes.oauth2_external"
165
210
  },
166
211
  {
167
212
  "key": "permissions",
@@ -171,6 +216,10 @@ var apiGroups = {
171
216
  "key": "roles",
172
217
  "module": "./base/routes.roles"
173
218
  },
219
+ {
220
+ "key": "security",
221
+ "module": "./base/routes.security"
222
+ },
174
223
  {
175
224
  "key": "settings",
176
225
  "module": "./base/routes.settings"
@@ -257,41 +306,113 @@ var apiRoutes_admin = {
257
306
  }
258
307
  };
259
308
 
260
- // src/generated/api/base/routes.api.ts
261
- var apiRoutes_api = {
262
- "GET__api_amp_proxy__discover": {
309
+ // src/generated/api/base/routes.api_keys.ts
310
+ var apiRoutes_api_keys = {
311
+ "api_keys_meta_capabilities": {
263
312
  method: "GET",
264
- path: "/api/amp-proxy/_discover",
265
- auth: { "type": "public" },
313
+ path: "/api-keys/meta/capabilities",
314
+ auth: { "type": "frontend_bearer_http" },
266
315
  meta: {
267
- tags: ["api"]
316
+ tags: ["api-keys"],
317
+ summary: "API-Key Capabilities f\xFCr UI",
318
+ description: "Pre-flight Check: liefert canCreate / canList / canRevoke / canDelete plus strukturierte Gr\xFCnde (INSUFFICIENT_ROLE, PLAN_LIMIT_REACHED, ...) und das aktuelle Limit/Usage. Das Frontend rendert Buttons enabled/disabled inkl. Tooltip OHNE vorherigen 4xx-Round-Trip.",
319
+ validated: { "params": false, "query": true, "body": false }
268
320
  },
269
321
  types: null
270
322
  },
271
- "GET__api_amp_proxy_key": {
323
+ "api_keys_meta_scopes": {
272
324
  method: "GET",
273
- path: "/api/amp-proxy/:key",
274
- auth: { "type": "public" },
325
+ path: "/api-keys/meta/scopes",
326
+ auth: { "type": "frontend_bearer_http" },
275
327
  meta: {
276
- tags: ["api"]
328
+ tags: ["api-keys"],
329
+ summary: "Scope-Vokabular f\xFCr UI",
330
+ description: "Liefert die vollst\xE4ndige Scope-Liste samt Labels und UI-Gruppen sowie die verf\xFCgbaren Rollen + Environment-Werte. Damit das Frontend Picker rendern kann, ohne irgendetwas zu hardcoden. Auth: jeder eingeloggte User.",
331
+ validated: { "params": false, "query": true, "body": false }
277
332
  },
278
333
  types: null
279
334
  },
280
- "POST__api_amp_proxy_key": {
335
+ "api_keys_create": {
281
336
  method: "POST",
282
- path: "/api/amp-proxy/:key",
283
- auth: { "type": "public" },
337
+ path: "/api-keys/create",
338
+ auth: { "type": "frontend_bearer_http" },
284
339
  meta: {
285
- tags: ["api"]
340
+ tags: ["api-keys"],
341
+ summary: "API-Key erstellen",
342
+ description: "Erstellt einen neuen API-Key im aktiven Workspace. Der Klartext-Schl\xFCssel wird genau einmal in der Response zur\xFCckgegeben \u2014 danach niemals wieder. Capability: api_key.write (admin+). Die gew\xE4hlte Key-Rolle kann nicht h\xF6her sein als die Workspace-Rolle des Aufrufers.",
343
+ validated: { "params": false, "query": false, "body": true }
344
+ },
345
+ types: null
346
+ },
347
+ "api_keys_list": {
348
+ method: "GET",
349
+ path: "/api-keys/list",
350
+ auth: { "type": "frontend_bearer_http" },
351
+ meta: {
352
+ tags: ["api-keys"],
353
+ summary: "API-Keys listen",
354
+ description: "Listet API-Keys des aktiven Workspace paginiert. Capability: api_key.read.",
355
+ validated: { "params": false, "query": true, "body": false }
286
356
  },
287
357
  types: null
288
358
  },
289
- "DELETE__api_amp_proxy_key": {
359
+ "api_keys_by_id": {
360
+ method: "GET",
361
+ path: "/api-keys/byId/:apiKeyId",
362
+ auth: { "type": "frontend_bearer_http" },
363
+ meta: {
364
+ tags: ["api-keys"],
365
+ summary: "API-Key nach ID",
366
+ description: "L\xE4dt einen API-Key (Metadata, ohne Klartext). Capability: api_key.read.",
367
+ validated: { "params": true, "query": false, "body": false }
368
+ },
369
+ types: null
370
+ },
371
+ "api_keys_update": {
372
+ method: "PUT",
373
+ path: "/api-keys/update/:apiKeyId",
374
+ auth: { "type": "frontend_bearer_http" },
375
+ meta: {
376
+ tags: ["api-keys"],
377
+ summary: "API-Key aktualisieren",
378
+ description: "\xC4ndert Name/Rolle/Scopes/IP-Whitelist/Rate-Limit/G\xFCltigkeit. Der eigentliche Key-Wert kann nicht aktualisiert werden \u2014 daf\xFCr einen neuen Key erstellen. Capability: api_key.write.",
379
+ validated: { "params": true, "query": false, "body": true }
380
+ },
381
+ types: null
382
+ },
383
+ "api_keys_revoke": {
384
+ method: "POST",
385
+ path: "/api-keys/revoke/:apiKeyId",
386
+ auth: { "type": "frontend_bearer_http" },
387
+ meta: {
388
+ tags: ["api-keys"],
389
+ summary: "API-Key sperren",
390
+ description: "Setzt isActive=false und revokedAt=now. Der Key bleibt f\xFCr Audit-Zwecke in der Tabelle, ist aber nicht mehr authentifizierbar. Capability: api_key.write.",
391
+ validated: { "params": true, "query": false, "body": true }
392
+ },
393
+ types: null
394
+ },
395
+ "api_keys_delete": {
290
396
  method: "DELETE",
291
- path: "/api/amp-proxy/:key",
292
- auth: { "type": "public" },
397
+ path: "/api-keys/delete/:apiKeyId",
398
+ auth: { "type": "frontend_bearer_http" },
399
+ meta: {
400
+ tags: ["api-keys"],
401
+ summary: "API-Key l\xF6schen",
402
+ description: "L\xF6scht einen API-Key endg\xFCltig (GDPR Right-to-Erasure). Audit-Log-Eintr\xE4ge bleiben mit nullified api_key_id erhalten. Capability: api_key.write.",
403
+ validated: { "params": true, "query": false, "body": false }
404
+ },
405
+ types: null
406
+ },
407
+ "api_keys_audit": {
408
+ method: "GET",
409
+ path: "/api-keys/audit/:apiKeyId",
410
+ auth: { "type": "frontend_bearer_http" },
293
411
  meta: {
294
- tags: ["api"]
412
+ tags: ["api-keys"],
413
+ summary: "Audit-Log eines Keys",
414
+ description: "Listet Authentifizierungs-Versuche dieses Keys (Erfolg + Fehler) paginiert. Capability: api_key.read.",
415
+ validated: { "params": true, "query": true, "body": false }
295
416
  },
296
417
  types: null
297
418
  }
@@ -306,6 +427,7 @@ var apiRoutes_app_info = {
306
427
  meta: {
307
428
  tags: ["app-info"],
308
429
  summary: "Health check",
430
+ description: "Kern-Pruefungen des Prozesses (Datenbank, Speicher, Event-Loop, Verschluesselung). 200 bei healthy/degraded, 503 bei unhealthy.",
309
431
  validated: { "params": false, "query": false, "body": false }
310
432
  },
311
433
  types: null
@@ -345,6 +467,116 @@ var apiRoutes_app_info = {
345
467
  }
346
468
  };
347
469
 
470
+ // src/generated/api/base/routes.auth.ts
471
+ var apiRoutes_auth = {
472
+ "auth_register": {
473
+ method: "POST",
474
+ path: "/auth/register",
475
+ auth: { "type": "public" },
476
+ meta: {
477
+ tags: ["auth"],
478
+ summary: "Register a new direct-auth account",
479
+ bodyContentType: "application/json",
480
+ validated: { "params": false, "query": false, "body": true }
481
+ },
482
+ types: null
483
+ },
484
+ "auth_login": {
485
+ method: "POST",
486
+ path: "/auth/login",
487
+ auth: { "type": "public" },
488
+ meta: {
489
+ tags: ["auth"],
490
+ summary: "Log in with email + password",
491
+ bodyContentType: "application/json",
492
+ validated: { "params": false, "query": false, "body": true }
493
+ },
494
+ types: null
495
+ },
496
+ "auth_refresh": {
497
+ method: "POST",
498
+ path: "/auth/refresh",
499
+ auth: { "type": "public" },
500
+ meta: {
501
+ tags: ["auth"],
502
+ summary: "Rotate access + refresh tokens",
503
+ bodyContentType: "application/json",
504
+ validated: { "params": false, "query": false, "body": true }
505
+ },
506
+ types: null
507
+ },
508
+ "auth_logout": {
509
+ method: "POST",
510
+ path: "/auth/logout",
511
+ auth: { "type": "public" },
512
+ meta: {
513
+ tags: ["auth"],
514
+ summary: "Revoke the current refresh token",
515
+ bodyContentType: "application/json",
516
+ validated: { "params": false, "query": false, "body": true }
517
+ },
518
+ types: null
519
+ },
520
+ "auth_me": {
521
+ method: "GET",
522
+ path: "/auth/me",
523
+ auth: { "type": "frontend_bearer_http" },
524
+ meta: {
525
+ tags: ["auth"],
526
+ summary: "Get the current user incl. roles and isAdmin (Bearer access JWT)",
527
+ validated: { "params": false, "query": true, "body": false }
528
+ },
529
+ types: null
530
+ },
531
+ "auth_push_token_upsert": {
532
+ method: "POST",
533
+ path: "/auth/push-token",
534
+ auth: { "type": "frontend_bearer_http" },
535
+ meta: {
536
+ tags: ["auth"],
537
+ summary: "Register a device push token for the current user",
538
+ bodyContentType: "application/json",
539
+ validated: { "params": false, "query": false, "body": true }
540
+ },
541
+ types: null
542
+ },
543
+ "auth_verify_email_request": {
544
+ method: "POST",
545
+ path: "/auth/verify-email/request",
546
+ auth: { "type": "frontend_bearer_http" },
547
+ meta: {
548
+ tags: ["auth"],
549
+ summary: "Send a fresh email-verification link to the current user",
550
+ bodyContentType: "application/json",
551
+ validated: { "params": false, "query": false, "body": true }
552
+ },
553
+ types: null
554
+ },
555
+ "auth_verify_email_confirm": {
556
+ method: "POST",
557
+ path: "/auth/verify-email/confirm",
558
+ auth: { "type": "public" },
559
+ meta: {
560
+ tags: ["auth"],
561
+ summary: "Confirm an email-verification token (programmatic / deep-link flow)",
562
+ bodyContentType: "application/json",
563
+ validated: { "params": false, "query": false, "body": true }
564
+ },
565
+ types: null
566
+ },
567
+ "auth_verify_email_landing": {
568
+ method: "GET",
569
+ path: "/auth/verify-email",
570
+ auth: { "type": "public" },
571
+ meta: {
572
+ tags: ["auth"],
573
+ summary: "Browser landing page that consumes the verification token",
574
+ validated: { "params": false, "query": true, "body": false }
575
+ },
576
+ types: null
577
+ }
578
+ };
579
+
348
580
  // src/generated/api/features/routes.bookkeeping.ts
349
581
  var apiRoutes_bookkeeping = {
350
582
  "bookkeeping_revenues_search": {
@@ -2794,7 +3026,7 @@ var apiRoutes_entitlements = {
2794
3026
  "entitlements_list": {
2795
3027
  method: "GET",
2796
3028
  path: "/entitlements",
2797
- auth: { "type": "unified_bearer", "allowUserSession": false, "scopes": ["entitlements:read"] },
3029
+ auth: { "type": "unified_bearer", "allowUserSession": false, "allowOAuth2": false, "allowApiKey": true },
2798
3030
  meta: {
2799
3031
  tags: ["entitlements"],
2800
3032
  summary: "List available entitlements",
@@ -2806,7 +3038,7 @@ var apiRoutes_entitlements = {
2806
3038
  "entitlements_assign": {
2807
3039
  method: "POST",
2808
3040
  path: "/entitlements",
2809
- auth: { "type": "unified_bearer", "allowUserSession": false, "scopes": ["entitlements:write"] },
3041
+ auth: { "type": "unified_bearer", "allowUserSession": false, "allowOAuth2": false, "allowApiKey": true },
2810
3042
  meta: {
2811
3043
  tags: ["entitlements"],
2812
3044
  summary: "Assign entitlement to user",
@@ -2819,7 +3051,7 @@ var apiRoutes_entitlements = {
2819
3051
  "entitlements_get_state": {
2820
3052
  method: "GET",
2821
3053
  path: "/entitlements/:userId/:type/:identifier",
2822
- auth: { "type": "unified_bearer", "allowUserSession": false, "scopes": ["entitlements:read"] },
3054
+ auth: { "type": "unified_bearer", "allowUserSession": false, "allowOAuth2": false, "allowApiKey": true },
2823
3055
  meta: {
2824
3056
  tags: ["entitlements"],
2825
3057
  summary: "Get current entitlement state",
@@ -2831,7 +3063,7 @@ var apiRoutes_entitlements = {
2831
3063
  "entitlements_update_state": {
2832
3064
  method: "PUT",
2833
3065
  path: "/entitlements/:userId/:type/:identifier",
2834
- auth: { "type": "unified_bearer", "allowUserSession": false, "scopes": ["entitlements:read", "entitlements:write"] },
3066
+ auth: { "type": "unified_bearer", "allowUserSession": false, "allowOAuth2": false, "allowApiKey": true },
2835
3067
  meta: {
2836
3068
  tags: ["entitlements"],
2837
3069
  summary: "Update entitlement validity",
@@ -2844,7 +3076,7 @@ var apiRoutes_entitlements = {
2844
3076
  "entitlements_revoke": {
2845
3077
  method: "DELETE",
2846
3078
  path: "/entitlements/:userId/:type/:identifier",
2847
- auth: { "type": "unified_bearer", "allowUserSession": false, "scopes": ["entitlements:write"] },
3079
+ auth: { "type": "unified_bearer", "allowUserSession": false, "allowOAuth2": false, "allowApiKey": true },
2848
3080
  meta: {
2849
3081
  tags: ["entitlements"],
2850
3082
  summary: "Revoke entitlement from user",
@@ -2856,7 +3088,7 @@ var apiRoutes_entitlements = {
2856
3088
  "entitlements_getAll": {
2857
3089
  method: "GET",
2858
3090
  path: "/entitlements/getAll",
2859
- auth: { "type": "unified_bearer", "allowUserSession": false, "scopes": ["entitlements:read"] },
3091
+ auth: { "type": "unified_bearer", "allowUserSession": false, "allowOAuth2": false, "allowApiKey": true },
2860
3092
  meta: {
2861
3093
  tags: ["entitlements"],
2862
3094
  summary: "Alias for listing entitlements",
@@ -2868,7 +3100,7 @@ var apiRoutes_entitlements = {
2868
3100
  "entitlements_getAssigned": {
2869
3101
  method: "GET",
2870
3102
  path: "/entitlements/assigned",
2871
- auth: { "type": "unified_bearer", "allowUserSession": false, "scopes": ["entitlements:read"] },
3103
+ auth: { "type": "unified_bearer", "allowUserSession": false, "allowOAuth2": false, "allowApiKey": true },
2872
3104
  meta: {
2873
3105
  tags: ["entitlements"],
2874
3106
  summary: "Get role assignments (legacy)",
@@ -2880,7 +3112,7 @@ var apiRoutes_entitlements = {
2880
3112
  "entitlements_getUserEntitlements": {
2881
3113
  method: "GET",
2882
3114
  path: "/entitlements/user/:userId",
2883
- auth: { "type": "unified_bearer", "allowUserSession": false, "scopes": ["entitlements:read"] },
3115
+ auth: { "type": "unified_bearer", "allowUserSession": false, "allowOAuth2": false, "allowApiKey": true },
2884
3116
  meta: {
2885
3117
  tags: ["entitlements"],
2886
3118
  summary: "Get active user entitlements (legacy)",
@@ -2892,7 +3124,7 @@ var apiRoutes_entitlements = {
2892
3124
  "entitlements_context_get_by_shop_assignment": {
2893
3125
  method: "GET",
2894
3126
  path: "/entitlements/context/by-shop-assignment/:shopAssignmentId",
2895
- auth: { "type": "unified_bearer", "allowUserSession": false, "scopes": ["entitlements:read"] },
3127
+ auth: { "type": "unified_bearer", "allowUserSession": false, "allowOAuth2": false, "allowApiKey": true },
2896
3128
  meta: {
2897
3129
  tags: ["entitlements"],
2898
3130
  summary: "Get entitlement sync context by shop assignment id",
@@ -2904,7 +3136,7 @@ var apiRoutes_entitlements = {
2904
3136
  "entitlements_usage_overages_pull": {
2905
3137
  method: "GET",
2906
3138
  path: "/entitlements/usage-overages",
2907
- auth: { "type": "unified_bearer", "allowUserSession": false, "scopes": ["entitlements:read"] },
3139
+ auth: { "type": "unified_bearer", "allowUserSession": false, "allowOAuth2": false, "allowApiKey": true },
2908
3140
  meta: {
2909
3141
  tags: ["entitlements"],
2910
3142
  summary: "Pull usage overages",
@@ -2916,7 +3148,7 @@ var apiRoutes_entitlements = {
2916
3148
  "entitlements_getById": {
2917
3149
  method: "GET",
2918
3150
  path: "/entitlements/:id",
2919
- auth: { "type": "unified_bearer", "allowUserSession": false, "scopes": ["entitlements:read"] },
3151
+ auth: { "type": "unified_bearer", "allowUserSession": false, "allowOAuth2": false, "allowApiKey": true },
2920
3152
  meta: {
2921
3153
  tags: ["entitlements"],
2922
3154
  summary: "Get entitlement by role id (legacy)",
@@ -2953,6 +3185,45 @@ var apiRoutes_exports = {
2953
3185
  }
2954
3186
  };
2955
3187
 
3188
+ // src/generated/api/base/routes.internal.ts
3189
+ var apiRoutes_internal = {
3190
+ "internal_users_provision": {
3191
+ method: "POST",
3192
+ path: "/internal/users/provision",
3193
+ auth: { "type": "x_api_key_https" },
3194
+ meta: {
3195
+ tags: ["internal", "users"],
3196
+ summary: "Idempotente Provisionierung: User-Anlage (oder Link via E-Mail-Match), Startrolle und App-Extras.",
3197
+ bodyContentType: "application/json",
3198
+ validated: { "params": false, "query": false, "body": true }
3199
+ },
3200
+ types: null
3201
+ },
3202
+ "internal_users_sync": {
3203
+ method: "POST",
3204
+ path: "/internal/users/sync",
3205
+ auth: { "type": "x_api_key_https" },
3206
+ meta: {
3207
+ tags: ["internal", "users"],
3208
+ summary: "Update der Profil-Felder (Email/Name/Verify). Out-of-order-gesch\xFCtzt via sourceUpdatedAt-Vergleich.",
3209
+ bodyContentType: "application/json",
3210
+ validated: { "params": false, "query": false, "body": true }
3211
+ },
3212
+ types: null
3213
+ },
3214
+ "internal_users_delete": {
3215
+ method: "DELETE",
3216
+ path: "/internal/users/:externalUserId",
3217
+ auth: { "type": "x_api_key_https" },
3218
+ meta: {
3219
+ tags: ["internal", "users"],
3220
+ summary: "DSGVO Art. 17 Hard-Delete. Cascade \xFCber vorhandene FK-Constraints. Idempotent (200 mit deleted:false bei not-found).",
3221
+ validated: { "params": true, "query": false, "body": false }
3222
+ },
3223
+ types: null
3224
+ }
3225
+ };
3226
+
2956
3227
  // src/generated/api/features/routes.invoices.ts
2957
3228
  var apiRoutes_invoices = {
2958
3229
  "invoice_dunning_suggestions": {
@@ -3407,7 +3678,7 @@ var apiRoutes_invoices_external = {
3407
3678
  }
3408
3679
  };
3409
3680
 
3410
- // src/generated/api/features/routes.logs.ts
3681
+ // src/generated/api/base/routes.logs.ts
3411
3682
  var apiRoutes_logs = {
3412
3683
  "logs_search": {
3413
3684
  method: "GET",
@@ -4202,7 +4473,7 @@ var apiRoutes_managing_company_logos = {
4202
4473
  }
4203
4474
  };
4204
4475
 
4205
- // src/generated/api/features/routes.oauth2.ts
4476
+ // src/generated/api/base/routes.oauth2.ts
4206
4477
  var apiRoutes_oauth2 = {
4207
4478
  "oauth2_token": {
4208
4479
  method: "POST",
@@ -4286,7 +4557,7 @@ var apiRoutes_oauth2 = {
4286
4557
  }
4287
4558
  };
4288
4559
 
4289
- // src/generated/api/features/routes.oauth2_external.ts
4560
+ // src/generated/api/base/routes.oauth2_external.ts
4290
4561
  var apiRoutes_oauth2_external = {
4291
4562
  "oauth2_external_clients_list": {
4292
4563
  method: "GET",
@@ -4557,6 +4828,19 @@ var apiRoutes_roles = {
4557
4828
  }
4558
4829
  };
4559
4830
 
4831
+ // src/generated/api/base/routes.security.ts
4832
+ var apiRoutes_security = {
4833
+ "GET__security_public": {
4834
+ method: "GET",
4835
+ path: "/security/public",
4836
+ auth: { "type": "public" },
4837
+ meta: {
4838
+ tags: ["security"]
4839
+ },
4840
+ types: null
4841
+ }
4842
+ };
4843
+
4560
4844
  // src/generated/api/base/routes.settings.ts
4561
4845
  var apiRoutes_settings = {
4562
4846
  "settings_list": {
@@ -4719,13 +5003,13 @@ var apiRoutes_users = {
4719
5003
 
4720
5004
  // src/generated/api/base/routes.webhooks.ts
4721
5005
  var apiRoutes_webhooks = {
4722
- "webhooks_list": {
5006
+ "webhooks_search": {
4723
5007
  method: "GET",
4724
- path: "/webhooks/getAll",
5008
+ path: "/webhooks/search",
4725
5009
  auth: { "type": "frontend_permission_http", "permission": "webhook_view" },
4726
5010
  meta: {
4727
5011
  tags: ["webhooks"],
4728
- summary: "List webhooks",
5012
+ summary: "Search webhooks (paginated)",
4729
5013
  validated: { "params": false, "query": true, "body": false }
4730
5014
  },
4731
5015
  types: null
@@ -4904,8 +5188,9 @@ var apiRoutes_work_tracking = {
4904
5188
  // src/generated/api/index.ts
4905
5189
  var apiRoutes = {
4906
5190
  ...apiRoutes_admin,
4907
- ...apiRoutes_api,
5191
+ ...apiRoutes_api_keys,
4908
5192
  ...apiRoutes_app_info,
5193
+ ...apiRoutes_auth,
4909
5194
  ...apiRoutes_bookkeeping,
4910
5195
  ...apiRoutes_currency_rates,
4911
5196
  ...apiRoutes_customer_companies,
@@ -4915,6 +5200,7 @@ var apiRoutes = {
4915
5200
  ...apiRoutes_enterprise,
4916
5201
  ...apiRoutes_entitlements,
4917
5202
  ...apiRoutes_exports,
5203
+ ...apiRoutes_internal,
4918
5204
  ...apiRoutes_invoices,
4919
5205
  ...apiRoutes_invoices_external,
4920
5206
  ...apiRoutes_logs,
@@ -4925,6 +5211,7 @@ var apiRoutes = {
4925
5211
  ...apiRoutes_oauth2_external,
4926
5212
  ...apiRoutes_permissions,
4927
5213
  ...apiRoutes_roles,
5214
+ ...apiRoutes_security,
4928
5215
  ...apiRoutes_settings,
4929
5216
  ...apiRoutes_user_activity,
4930
5217
  ...apiRoutes_users,
@@ -4932,6 +5219,6 @@ var apiRoutes = {
4932
5219
  ...apiRoutes_work_tracking
4933
5220
  };
4934
5221
 
4935
- export { apiGroups, apiMountPrefixes, apiRoutes, apiRoutes_admin, apiRoutes_api, apiRoutes_app_info, apiRoutes_bookkeeping, apiRoutes_currency_rates, apiRoutes_customer_companies, apiRoutes_customer_companies_external, apiRoutes_documents, apiRoutes_dunning_external, apiRoutes_enterprise, apiRoutes_entitlements, apiRoutes_exports, apiRoutes_invoices, apiRoutes_invoices_external, apiRoutes_logs, apiRoutes_managing_companies, apiRoutes_managing_companies_external, apiRoutes_managing_company_logos, apiRoutes_oauth2, apiRoutes_oauth2_external, apiRoutes_permissions, apiRoutes_roles, apiRoutes_settings, apiRoutes_user_activity, apiRoutes_users, apiRoutes_webhooks, apiRoutes_work_tracking };
5222
+ export { apiGroups, apiMountPrefixes, apiRoutes, apiRoutes_admin, apiRoutes_api_keys, apiRoutes_app_info, apiRoutes_auth, apiRoutes_bookkeeping, apiRoutes_currency_rates, apiRoutes_customer_companies, apiRoutes_customer_companies_external, apiRoutes_documents, apiRoutes_dunning_external, apiRoutes_enterprise, apiRoutes_entitlements, apiRoutes_exports, apiRoutes_internal, apiRoutes_invoices, apiRoutes_invoices_external, apiRoutes_logs, apiRoutes_managing_companies, apiRoutes_managing_companies_external, apiRoutes_managing_company_logos, apiRoutes_oauth2, apiRoutes_oauth2_external, apiRoutes_permissions, apiRoutes_roles, apiRoutes_security, apiRoutes_settings, apiRoutes_user_activity, apiRoutes_users, apiRoutes_webhooks, apiRoutes_work_tracking };
4936
5223
  //# sourceMappingURL=contract.js.map
4937
5224
  //# sourceMappingURL=contract.js.map