@optimizely-opal/opal-tool-ocp-sdk 1.0.0 → 1.1.0-beta.2

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 (44) hide show
  1. package/README.md +51 -13
  2. package/dist/auth/AuthUtils.d.ts +2 -5
  3. package/dist/auth/AuthUtils.d.ts.map +1 -1
  4. package/dist/auth/AuthUtils.js +5 -5
  5. package/dist/auth/AuthUtils.js.map +1 -1
  6. package/dist/decorator/Decorator.test.js +4 -4
  7. package/dist/decorator/Decorator.test.js.map +1 -1
  8. package/dist/function/GlobalToolFunction.d.ts +4 -1
  9. package/dist/function/GlobalToolFunction.d.ts.map +1 -1
  10. package/dist/function/GlobalToolFunction.js +27 -21
  11. package/dist/function/GlobalToolFunction.js.map +1 -1
  12. package/dist/function/GlobalToolFunction.test.js +114 -193
  13. package/dist/function/GlobalToolFunction.test.js.map +1 -1
  14. package/dist/function/ToolFunction.d.ts +4 -1
  15. package/dist/function/ToolFunction.d.ts.map +1 -1
  16. package/dist/function/ToolFunction.js +20 -21
  17. package/dist/function/ToolFunction.js.map +1 -1
  18. package/dist/function/ToolFunction.test.js +73 -263
  19. package/dist/function/ToolFunction.test.js.map +1 -1
  20. package/dist/service/Service.d.ts +20 -19
  21. package/dist/service/Service.d.ts.map +1 -1
  22. package/dist/service/Service.js +47 -72
  23. package/dist/service/Service.js.map +1 -1
  24. package/dist/service/Service.test.js +229 -133
  25. package/dist/service/Service.test.js.map +1 -1
  26. package/dist/types/Models.d.ts +18 -7
  27. package/dist/types/Models.d.ts.map +1 -1
  28. package/dist/types/Models.js +1 -29
  29. package/dist/types/Models.js.map +1 -1
  30. package/dist/utils/ErrorFormatter.d.ts +9 -0
  31. package/dist/utils/ErrorFormatter.d.ts.map +1 -0
  32. package/dist/utils/ErrorFormatter.js +25 -0
  33. package/dist/utils/ErrorFormatter.js.map +1 -0
  34. package/package.json +1 -1
  35. package/src/auth/AuthUtils.ts +10 -10
  36. package/src/decorator/Decorator.test.ts +4 -4
  37. package/src/function/GlobalToolFunction.test.ts +113 -213
  38. package/src/function/GlobalToolFunction.ts +31 -31
  39. package/src/function/ToolFunction.test.ts +78 -285
  40. package/src/function/ToolFunction.ts +24 -30
  41. package/src/service/Service.test.ts +238 -174
  42. package/src/service/Service.ts +68 -92
  43. package/src/types/Models.ts +24 -15
  44. package/src/utils/ErrorFormatter.ts +31 -0
package/README.md CHANGED
@@ -10,7 +10,7 @@ A TypeScript SDK for building Opal tools in Optimizely Connect Platform. This SD
10
10
  - 🌐 **Global and Regular Function Modes** - SDK can be used in either global or organization-scoped mode
11
11
  - 🔧 **Type-safe Development** - Full TypeScript support with comprehensive type definitions
12
12
  - 🏗️ **Abstract Base Classes** - Extend `ToolFunction` or `GlobalToolFunction` for standardized request processing
13
- - 🔐 **Authentication Support** - OptiID authentication
13
+ - 🔐 **Authentication Support** - OptiID authentication (default), custom auth providers supported
14
14
  - 🛡️ **Authorization Support** - OptiID token tool authorization
15
15
  - 📝 **Parameter Validation** - Define and validate tool parameters with types
16
16
  - ✅ **Automatic Validation** - SDK automatically validates parameters and returns RFC 9457 compliant error responses
@@ -80,7 +80,7 @@ export class OpalToolFunction extends ToolFunction {
80
80
  }
81
81
  ]
82
82
  })
83
- async createTask(params: { title: string; priority?: string }, authData?: OptiIdAuthData) {
83
+ async createTask(params: { title: string; priority?: string }, authData: OptiIdAuthData) {
84
84
  return {
85
85
  id: '123',
86
86
  title: params.title,
@@ -173,9 +173,9 @@ This allow Opal to auto-correct.
173
173
 
174
174
  The SDK supports authentication and authorization mechanisms:
175
175
 
176
- #### OptiID Authentication
176
+ #### OptiID Authentication (Default)
177
177
 
178
- OptiID provides user authentication with type safety. This is the only user authentication provider currently supported in Opal:
178
+ OptiID provides user authentication with type safety. When a tool does not declare any `authRequirements`, the SDK automatically adds OptiID as the default authentication provider:
179
179
 
180
180
  ```typescript
181
181
  interface AuthRequirementConfig {
@@ -208,7 +208,7 @@ export class MyToolFunction extends ToolFunction {
208
208
  })
209
209
  async secureToolHandler(
210
210
  params: { data: string },
211
- authData?: OptiIdAuthData
211
+ authData: OptiIdAuthData
212
212
  ) {
213
213
 
214
214
  // Process the request knowing it's from a trusted Opal instance
@@ -221,6 +221,42 @@ export class MyToolFunction extends ToolFunction {
221
221
  }
222
222
  ```
223
223
 
224
+ #### Custom Auth Providers
225
+
226
+ Tools can declare custom authentication providers instead of using the default OptiID. When a tool specifies its own `authRequirements`, the SDK respects that choice and skips its built-in authentication validation:
227
+
228
+ ```typescript
229
+ @tool({
230
+ name: 'external_api_tool',
231
+ description: 'Tool that uses external OAuth2 authentication',
232
+ endpoint: '/external-api',
233
+ parameters: [
234
+ { name: 'query', type: ParameterType.String, description: 'Search query', required: true }
235
+ ],
236
+ authRequirements: [{ provider: 'google', scopeBundle: 'calendar', required: true }]
237
+ })
238
+ async externalApiTool(params: { query: string }, authData: OAuthAuthData) {
239
+ // SDK does NOT validate oauth2 credentials
240
+ // Your handler must validate the auth credentials
241
+ // Validate token with your external provider
242
+ const isValid = await this.validateOAuth2Token(authData.credentials.access_token);
243
+ if (!isValid) {
244
+ throw new ToolError('Invalid OAuth2 token', 401);
245
+ }
246
+
247
+ return { results: await this.searchExternalApi(params.query) };
248
+ }
249
+ ```
250
+
251
+ **Important Security Considerations:**
252
+
253
+ > **Warning**: Tools using non-OptiID authentication should NOT expose sensitive data from app settings (such as API keys, secrets, or organization-specific configuration).
254
+ >
255
+ > - **OptiID auth** guarantees the caller is authorized for the specific organization and the request is from a trusted Opal instance
256
+ > - **Non-OptiID auth** only guarantees the credentials are valid for that provider - it does NOT guarantee the caller is authorized for the organization or app
257
+ >
258
+ > Only credentials for the declared auth provider are validated. If your tool declares `google` auth requirement, the SDK will pass through whatever credentials Opal sends without SDK-level validation. Your handler is fully responsible for credential validation and access control.
259
+
224
260
  ## Error Handling
225
261
 
226
262
  The SDK provides RFC 9457 Problem Details compliant error handling through the `ToolError` class. This allows you to throw errors with custom HTTP status codes and detailed error information.
@@ -343,12 +379,12 @@ All tool handler methods follow this signature pattern:
343
379
  ```typescript
344
380
  async handlerMethod(
345
381
  params: TParams, // Tool parameters
346
- authData?: OptiIdAuthData // OptiID user authentication data (if authenticated)
382
+ authData: OptiIdAuthData | OAuthAuthData // OptiID or OAuth user authentication data
347
383
  ): Promise<TResult>
348
384
  ```
349
385
 
350
386
  - **params**: The input parameters for tools
351
- - **authData**: Available when OptiID user authentication is configured and successful
387
+ - **authData**: OptiID user authentication by default; can be customized in tool definition
352
388
 
353
389
 
354
390
  ### Decorators
@@ -397,12 +433,14 @@ Extend this class for tools that work across organizations. The `perform` method
397
433
 
398
434
  ### Models
399
435
 
400
- Key model classes with generic type support:
436
+ Key model classes:
401
437
 
402
- - `Tool<TAuthData>` - Represents a registered tool with typed auth data
438
+ - `Tool` - Represents a registered tool (auth data is `OptiIdAuthData | OAuthAuthData`)
403
439
  - `Parameter` - Defines tool parameters
404
440
  - `AuthRequirement` - Defines authentication needs
441
+ - `AuthData` - Union type for authentication data (`OptiIdAuthData | OAuthAuthData`)
405
442
  - `OptiIdAuthData` - OptiID specific authentication data
443
+ - `OAuthAuthData` - OAuth provider authentication data
406
444
  - `ReadyResponse` - Response type for the ready method containing status and optional reason
407
445
  - `ToolError` - Custom error class for RFC 9457 Problem Details error responses with configurable HTTP status codes
408
446
 
@@ -542,7 +580,7 @@ export class AuthenticatedFunction extends ToolFunction {
542
580
  parameters: [],
543
581
  authRequirements: [{ provider: 'OptiID', scopeBundle: 'tasks', required: true }]
544
582
  })
545
- async secureOperation(params: unknown, authData?: OptiIdAuthData) {
583
+ async secureOperation(params: unknown, authData: OptiIdAuthData) {
546
584
  if (!authData) throw new Error('OptiID authentication required');
547
585
 
548
586
  const { customer_id, access_token } = authData.credentials;
@@ -592,7 +630,7 @@ export class TaskTool {
592
630
  }
593
631
  ]
594
632
  })
595
- async createTask(params: { title: string; priority?: string }, authData?: OptiIdAuthData) {
633
+ async createTask(params: { title: string; priority?: string }, authData: OptiIdAuthData) {
596
634
  return {
597
635
  id: '123',
598
636
  title: params.title,
@@ -613,7 +651,7 @@ export class TaskTool {
613
651
  }
614
652
  ]
615
653
  })
616
- async deleteTask(params: { taskId: string }, authData?: OptiIdAuthData) {
654
+ async deleteTask(params: { taskId: string }, authData: OptiIdAuthData) {
617
655
  return { success: true, deletedTaskId: params.taskId };
618
656
  }
619
657
  }
@@ -643,7 +681,7 @@ export class NotificationTool {
643
681
  }
644
682
  ]
645
683
  })
646
- async sendNotification(params: { message: string; userId: string }, authData?: OptiIdAuthData) {
684
+ async sendNotification(params: { message: string; userId: string }, authData: OptiIdAuthData) {
647
685
  return {
648
686
  notificationId: '456',
649
687
  message: params.message,
@@ -1,15 +1,12 @@
1
1
  import { Request } from '@zaiusinc/app-sdk';
2
- import { OptiIdAuthData } from '../types/Models';
2
+ import { OptiIdAuthDataCredentials } from '../types/Models';
3
3
  /**
4
4
  * Extract and validate basic OptiID authentication data from request
5
5
  *
6
6
  * @param request - The incoming request
7
7
  * @returns object with authData and accessToken, or null if auth is missing
8
8
  */
9
- export declare function extractAuthData(request: any): {
10
- authData: OptiIdAuthData;
11
- accessToken: string;
12
- } | null;
9
+ export declare function extractAuthData(request: any): OptiIdAuthDataCredentials | null;
13
10
  /**
14
11
  * Authenticate internal requests using OptiID token from headers
15
12
  * @param request The request object
@@ -1 +1 @@
1
- {"version":3,"file":"AuthUtils.d.ts","sourceRoot":"","sources":["../../src/auth/AuthUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEnE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AA4BjD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,GAAG,GAAG;IAAE,QAAQ,EAAE,cAAc,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAiBtG;AA+ED;;;;GAIG;AACH,wBAAsB,2BAA2B,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBjF;AAED;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAE5E;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAE3E"}
1
+ {"version":3,"file":"AuthUtils.d.ts","sourceRoot":"","sources":["../../src/auth/AuthUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEnE,OAAO,EAAY,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AA4BtE;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,GAAG,GAAG,yBAAyB,GAAG,IAAI,CAiB9E;AA+ED;;;;GAIG;AACH,wBAAsB,2BAA2B,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBjF;AAED;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAE5E;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAE3E"}
@@ -50,7 +50,7 @@ function extractAuthData(request) {
50
50
  if (!accessToken) {
51
51
  return null;
52
52
  }
53
- return { authData, accessToken };
53
+ return authData?.credentials;
54
54
  }
55
55
  /**
56
56
  * Extract and validate auth data with error throwing for authentication flow
@@ -71,7 +71,7 @@ function extractAndValidateAuthData(request) {
71
71
  if (!accessToken) {
72
72
  throw new ToolError_1.ToolError('Forbidden', 403, 'OptiID access token is required');
73
73
  }
74
- return { authData, accessToken };
74
+ return authData?.credentials;
75
75
  }
76
76
  /**
77
77
  * Validate organization ID matches the app context
@@ -110,12 +110,12 @@ async function authenticateRequest(request, validateOrg) {
110
110
  if (shouldSkipAuth(request)) {
111
111
  return;
112
112
  }
113
- const { authData, accessToken } = extractAndValidateAuthData(request);
113
+ const optiIdCredentials = extractAndValidateAuthData(request);
114
114
  // Validate organization ID if required
115
115
  if (validateOrg) {
116
- validateOrganizationId(authData.credentials?.customer_id);
116
+ validateOrganizationId(optiIdCredentials.customer_id);
117
117
  }
118
- await validateAccessToken(accessToken);
118
+ await validateAccessToken(optiIdCredentials.access_token);
119
119
  }
120
120
  /**
121
121
  * Authenticate internal requests using OptiID token from headers
@@ -1 +1 @@
1
- {"version":3,"file":"AuthUtils.js","sourceRoot":"","sources":["../../src/auth/AuthUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuthUtils.js","sourceRoot":"","sources":["../../src/auth/AuthUtils.ts"],"names":[],"mappings":"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"}
@@ -437,7 +437,7 @@ describe('Decorators', () => {
437
437
  const registerToolCall = mockedRegisterTool.mock.calls.find((call) => call[0] === 'instanceMethodTest');
438
438
  const registeredHandler = registerToolCall[2];
439
439
  // Call the handler
440
- const result = await registeredHandler(undefined, {}, {});
440
+ const result = await registeredHandler(undefined, {}, undefined);
441
441
  // Should be able to call class methods through 'this'
442
442
  expect(result.result).toBe('class-method-called');
443
443
  expect(TestClass).toBeDefined();
@@ -462,7 +462,7 @@ describe('Decorators', () => {
462
462
  const registerInteractionCall = mockedRegisterInteraction.mock.calls.find((call) => call[0] === 'instanceInteractionTest');
463
463
  const registeredHandler = registerInteractionCall[1];
464
464
  // Call the handler
465
- const result = await registeredHandler(undefined, {});
465
+ const result = await registeredHandler(undefined, {}, undefined);
466
466
  // Should be able to call class methods through 'this'
467
467
  expect(result.message).toBe('interaction-processed');
468
468
  expect(TestClass).toBeDefined();
@@ -491,7 +491,7 @@ describe('Decorators', () => {
491
491
  // Call the handler with an invalid functionContext (truthy but wrong type)
492
492
  // This should trigger the instanceof check and create a new instance instead
493
493
  const invalidContext = { notAnInstance: true, someOtherProperty: 'invalid' };
494
- const result = await registeredHandler(invalidContext, {}, {});
494
+ const result = await registeredHandler(invalidContext, {}, undefined);
495
495
  // Should still work by creating a new instance
496
496
  expect(result.result).toBe('class-method-called');
497
497
  expect(TestClass).toBeDefined();
@@ -518,7 +518,7 @@ describe('Decorators', () => {
518
518
  // Call the handler with an invalid functionContext (truthy but wrong type)
519
519
  // This should trigger the instanceof check and create a new instance instead
520
520
  const invalidContext = { notAnInstance: true, someOtherProperty: 'invalid' };
521
- const result = await registeredHandler(invalidContext, {});
521
+ const result = await registeredHandler(invalidContext, {}, undefined);
522
522
  // Should still work by creating a new instance
523
523
  expect(result.message).toBe('interaction-processed');
524
524
  expect(TestClass).toBeDefined();
@@ -1 +1 @@
1
- {"version":3,"file":"Decorator.test.js","sourceRoot":"","sources":["../../src/decorator/Decorator.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Decorator.test.js","sourceRoot":"","sources":["../../src/decorator/Decorator.test.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,10 @@ export declare abstract class GlobalToolFunction extends GlobalFunction {
20
20
  perform(): Promise<Response>;
21
21
  private handleRequest;
22
22
  /**
23
- * Authenticate the incoming request by validating only the OptiID token
23
+ * Authenticate the incoming request based on the endpoint
24
+ * - /discovery: No auth required
25
+ * - /overrides: Internal auth (header-based token)
26
+ * - Tools/interactions: Global auth if OptiID is required
24
27
  *
25
28
  * @throws {ToolError} If authentication fails
26
29
  */
@@ -1 +1 @@
1
- {"version":3,"file":"GlobalToolFunction.d.ts","sourceRoot":"","sources":["../../src/function/GlobalToolFunction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAA4B,MAAM,mBAAmB,CAAC;AAKvF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD;;;GAGG;AACH,8BAAsB,kBAAmB,SAAQ,cAAc;IAE7D;;;;;OAKG;IACH,SAAS,CAAC,KAAK,IAAI,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC;IAInD;;;;OAIG;IACU,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC;YAmB3B,aAAa;IAmC3B;;;;OAIG;YACW,gBAAgB;CAG/B"}
1
+ {"version":3,"file":"GlobalToolFunction.d.ts","sourceRoot":"","sources":["../../src/function/GlobalToolFunction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAmB,MAAM,mBAAmB,CAAC;AAI9E,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGhD;;;GAGG;AACH,8BAAsB,kBAAmB,SAAQ,cAAc;IAE7D;;;;;OAKG;IACH,SAAS,CAAC,KAAK,IAAI,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC;IAInD;;;;OAIG;IACU,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC;YAmB3B,aAAa;IAkB3B;;;;;;;OAOG;YACW,gBAAgB;CAiB/B"}
@@ -5,7 +5,7 @@ const app_sdk_1 = require("@zaiusinc/app-sdk");
5
5
  const AuthUtils_1 = require("../auth/AuthUtils");
6
6
  const Service_1 = require("../service/Service");
7
7
  const ToolLogger_1 = require("../logging/ToolLogger");
8
- const ToolError_1 = require("../types/ToolError");
8
+ const ErrorFormatter_1 = require("../utils/ErrorFormatter");
9
9
  /**
10
10
  * Abstract base class for global tool-based function execution
11
11
  * Provides a standard interface for processing requests through registered tools
@@ -28,8 +28,8 @@ class GlobalToolFunction extends app_sdk_1.GlobalFunction {
28
28
  async perform() {
29
29
  const startTime = Date.now();
30
30
  // Extract customer_id from auth data for global context attribution
31
- const authInfo = (0, AuthUtils_1.extractAuthData)(this.request);
32
- const customerId = authInfo?.authData?.credentials?.customer_id;
31
+ const optiIdCredentials = (0, AuthUtils_1.extractAuthData)(this.request);
32
+ const customerId = optiIdCredentials?.customer_id;
33
33
  (0, app_sdk_1.amendLogContext)({
34
34
  opalThreadId: this.request.headers.get('x-opal-thread-id') || '',
35
35
  customerId: customerId || ''
@@ -40,21 +40,6 @@ class GlobalToolFunction extends app_sdk_1.GlobalFunction {
40
40
  return response;
41
41
  }
42
42
  async handleRequest() {
43
- try {
44
- await this.authorizeRequest();
45
- }
46
- catch (error) {
47
- if (error instanceof ToolError_1.ToolError) {
48
- return new app_sdk_1.Response(error.status, error.toProblemDetails(this.request.path), new app_sdk_1.Headers([['content-type', 'application/problem+json']]));
49
- }
50
- // Fallback for unexpected errors
51
- return new app_sdk_1.Response(500, {
52
- title: 'Internal Server Error',
53
- status: 500,
54
- detail: 'An unexpected error occurred during authentication',
55
- instance: this.request.path
56
- }, new app_sdk_1.Headers([['content-type', 'application/problem+json']]));
57
- }
58
43
  if (this.request.path === '/ready') {
59
44
  const readyResult = await this.ready();
60
45
  const readyResponse = typeof readyResult === 'boolean'
@@ -62,15 +47,36 @@ class GlobalToolFunction extends app_sdk_1.GlobalFunction {
62
47
  : readyResult;
63
48
  return new app_sdk_1.Response(200, readyResponse);
64
49
  }
65
- return Service_1.toolsService.processRequest(this.request, this);
50
+ try {
51
+ await this.authorizeRequest();
52
+ return await Service_1.toolsService.processRequest(this.request, this);
53
+ }
54
+ catch (error) {
55
+ return (0, ErrorFormatter_1.formatErrorResponse)(error, this.request.path);
56
+ }
66
57
  }
67
58
  /**
68
- * Authenticate the incoming request by validating only the OptiID token
59
+ * Authenticate the incoming request based on the endpoint
60
+ * - /discovery: No auth required
61
+ * - /overrides: Internal auth (header-based token)
62
+ * - Tools/interactions: Global auth if OptiID is required
69
63
  *
70
64
  * @throws {ToolError} If authentication fails
71
65
  */
72
66
  async authorizeRequest() {
73
- await (0, AuthUtils_1.authenticateGlobalRequest)(this.request);
67
+ // Discovery endpoint doesn't require auth
68
+ if (this.request.path === '/discovery') {
69
+ return;
70
+ }
71
+ // Use internal authentication for overrides endpoint (header-based token)
72
+ if (this.request.path === '/overrides') {
73
+ await (0, AuthUtils_1.authenticateInternalRequest)(this.request);
74
+ return;
75
+ }
76
+ // Tool/interaction endpoints - authenticate only if OptiID is required
77
+ if (Service_1.toolsService.requiresOptiIdAuth(this.request.path)) {
78
+ await (0, AuthUtils_1.authenticateGlobalRequest)(this.request);
79
+ }
74
80
  }
75
81
  }
76
82
  exports.GlobalToolFunction = GlobalToolFunction;
@@ -1 +1 @@
1
- {"version":3,"file":"GlobalToolFunction.js","sourceRoot":"","sources":["../../src/function/GlobalToolFunction.ts"],"names":[],"mappings":";;;AAAA,+CAAuF;AACvF,iDAA+E;AAC/E,gDAAkD;AAClD,sDAAmD;AACnD,kDAA+C;AAG/C;;;GAGG;AACH,MAAsB,kBAAmB,SAAQ,wBAAc;IAE7D;;;;;OAKG;IACO,KAAK;QACb,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,OAAO;QAClB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,oEAAoE;QACpE,MAAM,QAAQ,GAAG,IAAA,2BAAe,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;QAEhE,IAAA,yBAAe,EAAC;YACd,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,EAAE;YAChE,UAAU,EAAE,UAAU,IAAI,EAAE;SAC7B,CAAC,CAAC;QAEH,uBAAU,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC5C,uBAAU,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;QACvE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,aAAa;QACzB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,qBAAS,EAAE,CAAC;gBAC/B,OAAO,IAAI,kBAAQ,CACjB,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EACzC,IAAI,iBAAO,CAAC,CAAC,CAAC,cAAc,EAAE,0BAA0B,CAAC,CAAC,CAAC,CAC5D,CAAC;YACJ,CAAC;YACD,iCAAiC;YACjC,OAAO,IAAI,kBAAQ,CACjB,GAAG,EACH;gBACE,KAAK,EAAE,uBAAuB;gBAC9B,MAAM,EAAE,GAAG;gBACX,MAAM,EAAE,oDAAoD;gBAC5D,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;aAC5B,EACD,IAAI,iBAAO,CAAC,CAAC,CAAC,cAAc,EAAE,0BAA0B,CAAC,CAAC,CAAC,CAC5D,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACnC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YACvC,MAAM,aAAa,GAAG,OAAO,WAAW,KAAK,SAAS;gBACpD,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE;gBACxB,CAAC,CAAC,WAAW,CAAC;YAChB,OAAO,IAAI,kBAAQ,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,sBAAY,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzD,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,gBAAgB;QAC5B,MAAM,IAAA,qCAAyB,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;CACF;AA/ED,gDA+EC"}
1
+ {"version":3,"file":"GlobalToolFunction.js","sourceRoot":"","sources":["../../src/function/GlobalToolFunction.ts"],"names":[],"mappings":";;;AAAA,+CAA8E;AAC9E,iDAA4G;AAC5G,gDAAkD;AAClD,sDAAmD;AAEnD,4DAA8D;AAE9D;;;GAGG;AACH,MAAsB,kBAAmB,SAAQ,wBAAc;IAE7D;;;;;OAKG;IACO,KAAK;QACb,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,OAAO;QAClB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,oEAAoE;QACpE,MAAM,iBAAiB,GAAG,IAAA,2BAAe,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxD,MAAM,UAAU,GAAG,iBAAiB,EAAE,WAAW,CAAC;QAElD,IAAA,yBAAe,EAAC;YACd,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,EAAE;YAChE,UAAU,EAAE,UAAU,IAAI,EAAE;SAC7B,CAAC,CAAC;QAEH,uBAAU,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC5C,uBAAU,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;QACvE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,aAAa;QACzB,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACnC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YACvC,MAAM,aAAa,GAAG,OAAO,WAAW,KAAK,SAAS;gBACpD,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE;gBACxB,CAAC,CAAC,WAAW,CAAC;YAChB,OAAO,IAAI,kBAAQ,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAE9B,OAAO,MAAM,sBAAY,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC/D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAA,oCAAmB,EAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,gBAAgB;QAC5B,0CAA0C;QAC1C,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACvC,OAAO;QACT,CAAC;QAED,0EAA0E;QAC1E,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACvC,MAAM,IAAA,uCAA2B,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAChD,OAAO;QACT,CAAC;QAED,uEAAuE;QACvE,IAAI,sBAAY,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACvD,MAAM,IAAA,qCAAyB,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;CACF;AA/ED,gDA+EC"}