@memberjunction/connector-orcid 1.1.3 → 1.2.1

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.
@@ -1,6 +1,6 @@
1
1
  import { type UserInfo } from '@memberjunction/core';
2
2
  import type { MJCompanyIntegrationEntity, MJIntegrationObjectEntity, MJIntegrationObjectFieldEntity } from '@memberjunction/core-entities';
3
- import { BaseRESTIntegrationConnector, type RESTAuthContext, type RESTResponse, type PaginationState, type PaginationType, type ConnectionTestResult, type FetchContext, type FetchBatchResult, type RateLimitPolicy } from '@memberjunction/integration-engine';
3
+ import { BaseRESTIntegrationConnector, type RESTAuthContext, type RESTResponse, type PaginationState, type PaginationType, type ConnectionTestResult, type FetchContext, type FetchBatchResult, type ExternalRecord, type RateLimitPolicy } from '@memberjunction/integration-engine';
4
4
  /**
5
5
  * Per-connection configuration for the ORCID connector.
6
6
  *
@@ -10,7 +10,10 @@ import { BaseRESTIntegrationConnector, type RESTAuthContext, type RESTResponse,
10
10
  * must be provided.
11
11
  */
12
12
  export interface ORCIDConnectionConfig {
13
- /** OAuth2 client_credentials grant — client identifier. From the credential store. */
13
+ /**
14
+ * OAuth2 client_credentials grant — client identifier. From the credential store.
15
+ * Omit BOTH this and ClientSecret to run against the ORCID Public API anonymously.
16
+ */
14
17
  ClientID?: string;
15
18
  /** OAuth2 client_credentials grant — client secret. From the credential store. */
16
19
  ClientSecret?: string;
@@ -47,11 +50,30 @@ export interface ORCIDConnectionConfig {
47
50
  */
48
51
  ApiBaseUrl?: string;
49
52
  }
53
+ /**
54
+ * Authenticated context carried through one FetchChanges cycle.
55
+ *
56
+ * `Token` is undefined in ANONYMOUS mode — the ORCID Public API serves public records with no
57
+ * credential at all, so a connection configured with no credential skips the OAuth grant
58
+ * entirely and sends no Authorization header. See `parseConfig` for how the mode is chosen.
59
+ */
60
+ interface ORCIDAuthContext extends RESTAuthContext {
61
+ /** Bearer token, or undefined in anonymous mode (matches the base RESTAuthContext contract). */
62
+ Token?: string;
63
+ /** Token expiry. Undefined in anonymous mode — there is no token to expire or refresh. */
64
+ ExpiresAt?: Date;
65
+ BaseUrl: string;
66
+ Config: ORCIDConnectionConfig;
67
+ }
50
68
  /**
51
69
  * Connector for the ORCID Public API v3.0 (read-only).
52
70
  *
53
71
  * Authenticates via OAuth2 2-legged client_credentials (scope `/read-public`)
54
- * to obtain a bearer token. ORCID is NOT enumerable there is no
72
+ * to obtain a bearer token, OR runs ANONYMOUSLY when no credential is configured:
73
+ * the ORCID Public API serves public records with no token at all, so a connection
74
+ * that supplies neither ClientID nor ClientSecret skips the grant and sends no
75
+ * Authorization header. Supplying only one half of the pair is still an error.
76
+ * ORCID is NOT enumerable — there is no
55
77
  * "list all records" endpoint — so every sync is SCOPED per connection via
56
78
  * `CompanyIntegration.Configuration` (`searchQuery` Lucene query and/or an
57
79
  * explicit `orcidIds` array). FetchChanges resolves the in-scope iD set, then
@@ -84,6 +106,14 @@ export declare class ORCIDConnector extends BaseRESTIntegrationConnector {
84
106
  * (HTTP 429 with X-Rate-Limit-* + Retry-After). Run conservatively under the burst cap.
85
107
  */
86
108
  get RateLimitPolicy(): RateLimitPolicy | null;
109
+ /**
110
+ * ORCID's per-request latency (~1.4s typical) makes the sync LATENCY-bound, not rate-bound, at
111
+ * the engine's default concurrency of 4: 4 in-flight ≈ 3 req/s against the ~10 req/s the
112
+ * RateLimitPolicy above already permits. Raising the ceiling lets the engine's adaptive
113
+ * controller ramp until the token bucket — the real constraint — becomes binding. This is a
114
+ * CEILING, not a floor: the AIMD controller still cuts on 429/503.
115
+ */
116
+ get MaxConcurrencyHint(): number | null;
87
117
  /** Parse ORCID's Retry-After (delta-seconds or HTTP-date) into milliseconds. */
88
118
  ExtractRetryAfterMs(error: unknown): number | undefined;
89
119
  /**
@@ -93,8 +123,10 @@ export declare class ORCIDConnector extends BaseRESTIntegrationConnector {
93
123
  */
94
124
  StableOrderingKey(_objectName: string): string | null;
95
125
  /**
96
- * Verifies connectivity by obtaining a client_credentials token, then issuing a
97
- * lightweight authenticated probe against a well-known public iD's /record.
126
+ * Verifies connectivity by resolving auth (a client_credentials token, or anonymous when no
127
+ * credential is configured), then issuing a lightweight probe against a well-known public
128
+ * iD's /record. A 401/403 is a failure in BOTH modes — that probe record is public, so being
129
+ * turned away means the host or the credential is wrong.
98
130
  */
99
131
  TestConnection(companyIntegration: MJCompanyIntegrationEntity, contextUser: UserInfo): Promise<ConnectionTestResult>;
100
132
  /**
@@ -116,7 +148,7 @@ export declare class ORCIDConnector extends BaseRESTIntegrationConnector {
116
148
  * Fetches the raw item array for a single iD + object. For the root record IO this is
117
149
  * a single-element array (the record itself); for a section it is the expanded group items.
118
150
  */
119
- private FetchForId;
151
+ protected FetchForId(auth: ORCIDAuthContext, obj: MJIntegrationObjectEntity, iD: string, section: string | null): Promise<Record<string, unknown>[]>;
120
152
  /**
121
153
  * Expands an ORCID activity-section group envelope into individual item objects.
122
154
  *
@@ -126,7 +158,7 @@ export declare class ORCIDConnector extends BaseRESTIntegrationConnector {
126
158
  * leaf item; we flatten all such arrays found anywhere in the envelope. Each
127
159
  * item is tagged with the parent `orcid-id` (the FK to record).
128
160
  */
129
- private expandSection;
161
+ protected expandSection(body: Record<string, unknown>, _section: string, iD: string): Record<string, unknown>[];
130
162
  /**
131
163
  * Resolves the in-scope ORCID iD universe from CompanyIntegration.Configuration:
132
164
  * the explicit `orcidIds` list (always included) plus the result of running the
@@ -138,7 +170,7 @@ export declare class ORCIDConnector extends BaseRESTIntegrationConnector {
138
170
  * fixed 16-digit dashed format, so a lexicographic sort is a total, stable order
139
171
  * and therefore a valid keyset pagination key for FetchChanges.
140
172
  */
141
- private ResolveOrcidIdUniverse;
173
+ protected ResolveOrcidIdUniverse(auth: ORCIDAuthContext): Promise<string[]>;
142
174
  /**
143
175
  * Runs the Lucene query against ORCID /search (or /expanded-search) with offset
144
176
  * pagination (start/rows), accumulating iDs up to maxResults ("Goldilocks" bound).
@@ -154,7 +186,7 @@ export declare class ORCIDConnector extends BaseRESTIntegrationConnector {
154
186
  * (orcid-id for record, put-code for sections) drives the ExternalID; partial keys
155
187
  * fall back to the base content-hash identity.
156
188
  */
157
- private toRecord;
189
+ protected toRecord(raw: Record<string, unknown>, obj: MJIntegrationObjectEntity, fields: MJIntegrationObjectFieldEntity[], pkFieldNames: string[]): ExternalRecord;
158
190
  /**
159
191
  * Per-record reshaping: ORCID returns deeply-nested JSON; pull the declared scalar
160
192
  * convenience fields up to the top level so the generated columns are populated, while
@@ -168,12 +200,22 @@ export declare class ORCIDConnector extends BaseRESTIntegrationConnector {
168
200
  /** ORCID date wrapper: { value: <millis> } → ISO string; passthrough on already-scalar/empty. */
169
201
  private coerceDate;
170
202
  /** Extracts the last-modified-date millis from a record (for watermark comparison). */
171
- private extractLastModifiedMs;
203
+ protected extractLastModifiedMs(raw: Record<string, unknown>): number | null;
172
204
  /** Pulls a millisecond epoch out of an ORCID timestamp wrapper or a scalar number/ISO string. */
173
205
  private extractMs;
174
206
  private asObject;
175
- private parseWatermark;
207
+ protected parseWatermark(value: string | null): number | null;
176
208
  protected Authenticate(companyIntegration: MJCompanyIntegrationEntity, contextUser: UserInfo): Promise<RESTAuthContext>;
209
+ /**
210
+ * True when the connection carries no client_credentials pair — anonymous Public API mode.
211
+ * `parseConfig` has already rejected the half-configured case, so "no ClientID" here means
212
+ * "no credential was supplied at all", never "the secret went missing".
213
+ */
214
+ protected IsAnonymousConfig(config: ORCIDConnectionConfig): boolean;
215
+ /** Anonymous state: no grant, no token, nothing to refresh. */
216
+ private buildAnonymousState;
217
+ /** Credentialed state: exchange the client_credentials grant for a bearer token. */
218
+ private buildTokenState;
177
219
  protected BuildHeaders(auth: RESTAuthContext): Record<string, string>;
178
220
  /** Not used by the overridden FetchChanges; retained for any base-pipeline callers (GetRecord). */
179
221
  protected NormalizeResponse(rawBody: unknown, responseDataKey: string | null): Record<string, unknown>[];
@@ -209,3 +251,4 @@ export declare class ORCIDConnector extends BaseRESTIntegrationConnector {
209
251
  }
210
252
  /** Tree-shaking prevention function — import and call from the module entry point. */
211
253
  export declare function LoadORCIDConnector(): void;
254
+ export {};
@@ -30,7 +30,11 @@ const ROOT_OBJECT_NAME = 'record';
30
30
  * Connector for the ORCID Public API v3.0 (read-only).
31
31
  *
32
32
  * Authenticates via OAuth2 2-legged client_credentials (scope `/read-public`)
33
- * to obtain a bearer token. ORCID is NOT enumerable there is no
33
+ * to obtain a bearer token, OR runs ANONYMOUSLY when no credential is configured:
34
+ * the ORCID Public API serves public records with no token at all, so a connection
35
+ * that supplies neither ClientID nor ClientSecret skips the grant and sends no
36
+ * Authorization header. Supplying only one half of the pair is still an error.
37
+ * ORCID is NOT enumerable — there is no
34
38
  * "list all records" endpoint — so every sync is SCOPED per connection via
35
39
  * `CompanyIntegration.Configuration` (`searchQuery` Lucene query and/or an
36
40
  * explicit `orcidIds` array). FetchChanges resolves the in-scope iD set, then
@@ -70,6 +74,14 @@ let ORCIDConnector = class ORCIDConnector extends BaseRESTIntegrationConnector {
70
74
  get RateLimitPolicy() {
71
75
  return { TokensPerSec: RATE_LIMIT_TOKENS_PER_SEC, Burst: 40, ThrottleBackoffFactor: 0.5 };
72
76
  }
77
+ /**
78
+ * ORCID's per-request latency (~1.4s typical) makes the sync LATENCY-bound, not rate-bound, at
79
+ * the engine's default concurrency of 4: 4 in-flight ≈ 3 req/s against the ~10 req/s the
80
+ * RateLimitPolicy above already permits. Raising the ceiling lets the engine's adaptive
81
+ * controller ramp until the token bucket — the real constraint — becomes binding. This is a
82
+ * CEILING, not a floor: the AIMD controller still cuts on 429/503.
83
+ */
84
+ get MaxConcurrencyHint() { return 16; }
73
85
  /** Parse ORCID's Retry-After (delta-seconds or HTTP-date) into milliseconds. */
74
86
  ExtractRetryAfterMs(error) {
75
87
  const headers = error?.Headers;
@@ -97,8 +109,10 @@ let ORCIDConnector = class ORCIDConnector extends BaseRESTIntegrationConnector {
97
109
  StableOrderingKey(_objectName) { return null; }
98
110
  // ─── TestConnection ──────────────────────────────────────────────
99
111
  /**
100
- * Verifies connectivity by obtaining a client_credentials token, then issuing a
101
- * lightweight authenticated probe against a well-known public iD's /record.
112
+ * Verifies connectivity by resolving auth (a client_credentials token, or anonymous when no
113
+ * credential is configured), then issuing a lightweight probe against a well-known public
114
+ * iD's /record. A 401/403 is a failure in BOTH modes — that probe record is public, so being
115
+ * turned away means the host or the credential is wrong.
102
116
  */
103
117
  async TestConnection(companyIntegration, contextUser) {
104
118
  try {
@@ -114,9 +128,12 @@ let ORCIDConnector = class ORCIDConnector extends BaseRESTIntegrationConnector {
114
128
  if (resp.Status >= 500) {
115
129
  return { Success: false, Message: `ORCID TestConnection failed: HTTP ${resp.Status} (server error)` };
116
130
  }
131
+ const host = auth.Config.UseSandbox ? 'sandbox' : 'production';
117
132
  return {
118
133
  Success: true,
119
- Message: `Successfully authenticated against ORCID Public API (${auth.Config.UseSandbox ? 'sandbox' : 'production'}).`,
134
+ Message: auth.Token == null
135
+ ? `Successfully reached the ORCID Public API anonymously — no credential configured (${host}).`
136
+ : `Successfully authenticated against ORCID Public API (${host}).`,
120
137
  ServerVersion: 'ORCID Public API v3.0',
121
138
  };
122
139
  }
@@ -173,8 +190,27 @@ let ORCIDConnector = class ORCIDConnector extends BaseRESTIntegrationConnector {
173
190
  const pkFieldNames = fields.filter(f => f.IsPrimaryKey).map(f => f.Name);
174
191
  const out = [];
175
192
  let maxSeen = watermark;
193
+ let skippedIdCount = 0;
176
194
  for (const iD of orcidIds) {
177
- const items = await this.FetchForId(auth, obj, iD, section);
195
+ // Per-iD isolation: one bad iD (persistent 5xx, malformed record) must not abort the
196
+ // whole page. This matters more since the switch to keyset paging — the engine can only
197
+ // step past a failed page for offset/page pagination (`canSkipPage`), so a throw here
198
+ // would stall the scan at this iD on EVERY subsequent run, permanently. 403/404 are
199
+ // already handled as empty inside FetchForId; this catches everything else.
200
+ let items;
201
+ try {
202
+ items = await this.FetchForId(auth, obj, iD, section);
203
+ }
204
+ catch (err) {
205
+ skippedIdCount++;
206
+ warnings.push({
207
+ Code: 'ID_FETCH_FAILED',
208
+ Message: `ORCID "${ctx.ObjectName}": iD ${iD} failed and was skipped — ` +
209
+ `${err instanceof Error ? err.message : String(err)}`,
210
+ Data: { orcidId: iD, objectName: ctx.ObjectName },
211
+ });
212
+ continue;
213
+ }
178
214
  for (const raw of items) {
179
215
  const lmd = this.extractLastModifiedMs(raw);
180
216
  // Incremental narrowing: skip records not newer than the watermark.
@@ -192,7 +228,12 @@ let ORCIDConnector = class ORCIDConnector extends BaseRESTIntegrationConnector {
192
228
  // dies after page 1, page 2's records older than the new watermark would be skipped forever.
193
229
  // Deriving it from the last page alone can UNDER-advance, which is safe — it costs a re-fetch
194
230
  // that content-hash idempotency in ToExternalRecord dedups.
195
- if (!hasMore && maxSeen != null && maxSeen !== watermark) {
231
+ //
232
+ // Also HOLD the watermark when any iD was skipped above. Swallowing a per-iD failure means
233
+ // the engine sees a clean fetch, so it can't hold the watermark for us — advancing here would
234
+ // permanently strand the skipped iD's updates below the new watermark. Holding costs a
235
+ // re-fetch next run (content-hash dedups it) and lets the failed iD self-heal.
236
+ if (!hasMore && skippedIdCount === 0 && maxSeen != null && maxSeen !== watermark) {
196
237
  result.NewWatermarkValue = String(maxSeen);
197
238
  }
198
239
  if (warnings.length > 0)
@@ -447,22 +488,46 @@ let ORCIDConnector = class ORCIDConnector extends BaseRESTIntegrationConnector {
447
488
  return this.authState;
448
489
  }
449
490
  const config = await this.parseConfig(companyIntegration, contextUser);
491
+ const state = this.IsAnonymousConfig(config)
492
+ ? await this.buildAnonymousState(config)
493
+ : await this.buildTokenState(config);
494
+ this.authState = state;
495
+ return state;
496
+ }
497
+ /**
498
+ * True when the connection carries no client_credentials pair — anonymous Public API mode.
499
+ * `parseConfig` has already rejected the half-configured case, so "no ClientID" here means
500
+ * "no credential was supplied at all", never "the secret went missing".
501
+ */
502
+ IsAnonymousConfig(config) {
503
+ return !config.ClientID;
504
+ }
505
+ /** Anonymous state: no grant, no token, nothing to refresh. */
506
+ async buildAnonymousState(config) {
507
+ return {
508
+ Token: undefined,
509
+ ExpiresAt: undefined,
510
+ BaseUrl: config.ApiBaseUrl ?? (config.UseSandbox ? SANDBOX_API_HOST : PROD_API_HOST),
511
+ Config: config,
512
+ };
513
+ }
514
+ /** Credentialed state: exchange the client_credentials grant for a bearer token. */
515
+ async buildTokenState(config) {
450
516
  const token = await this.obtainAccessToken(config);
451
- const state = {
517
+ return {
452
518
  Token: token.access_token,
453
519
  ExpiresAt: new Date(Date.now() + (token.expires_in * 1000)),
454
520
  BaseUrl: config.ApiBaseUrl ?? (config.UseSandbox ? SANDBOX_API_HOST : PROD_API_HOST),
455
521
  Config: config,
456
522
  };
457
- this.authState = state;
458
- return state;
459
523
  }
460
524
  BuildHeaders(auth) {
461
525
  const orcidAuth = auth;
462
- return {
463
- 'Authorization': `Bearer ${orcidAuth.Token}`,
464
- 'Accept': 'application/json',
465
- };
526
+ // Anonymous mode sends NO Authorization header — ORCID rejects a malformed/empty bearer,
527
+ // whereas an absent header is the documented public-access path.
528
+ return orcidAuth.Token == null
529
+ ? { 'Accept': 'application/json' }
530
+ : { 'Authorization': `Bearer ${orcidAuth.Token}`, 'Accept': 'application/json' };
466
531
  }
467
532
  /** Not used by the overridden FetchChanges; retained for any base-pipeline callers (GetRecord). */
468
533
  NormalizeResponse(rawBody, responseDataKey) {
@@ -492,6 +557,9 @@ let ORCIDConnector = class ORCIDConnector extends BaseRESTIntegrationConnector {
492
557
  }
493
558
  // ─── Token lifecycle ──────────────────────────────────────────────
494
559
  isTokenValid(state) {
560
+ // Anonymous state never expires — there is no token to go stale.
561
+ if (state.Token == null || state.ExpiresAt == null)
562
+ return true;
495
563
  return state.ExpiresAt.getTime() - Date.now() > TOKEN_REFRESH_BUFFER_MS;
496
564
  }
497
565
  /**
@@ -541,8 +609,11 @@ let ORCIDConnector = class ORCIDConnector extends BaseRESTIntegrationConnector {
541
609
  try {
542
610
  const resp = await this.doFetch(url, method, currentHeaders, body, timeoutMs);
543
611
  this.lastRequestTime = Date.now();
544
- if (resp.Status === 401 && attempt < maxRetries) {
612
+ if (resp.Status === 401 && attempt < maxRetries && !this.IsAnonymousConfig(cfg)) {
545
613
  // Token expired/revoked — drop the cache, refresh against the held credentials, retry.
614
+ // Skipped in anonymous mode: there is no grant to re-run, and a 401 there means the
615
+ // resource simply isn't public. Retrying would just burn the retry budget on a
616
+ // response that will never change.
546
617
  this.authState = null;
547
618
  const refreshed = await this.obtainAccessToken(cfg);
548
619
  const refreshedState = {
@@ -642,9 +713,16 @@ let ORCIDConnector = class ORCIDConnector extends BaseRESTIntegrationConnector {
642
713
  merged.TokenURL = fromCredential.TokenURL ?? merged.TokenURL;
643
714
  merged.Scope = merged.Scope ?? fromCredential.Scope;
644
715
  }
645
- if (!merged.ClientID || !merged.ClientSecret) {
646
- throw new Error('ORCIDConnector: ClientID and ClientSecret must be provided via the credential store ' +
647
- '(OAuth2 client_credentials).');
716
+ // Credential mode selection. ORCID's Public API serves public records WITHOUT a token, so a
717
+ // connection that supplies no credential at all is a legitimate anonymous configuration
718
+ // not an error. A PARTIAL credential still is: half a client_credentials pair can only be a
719
+ // misconfiguration, and silently degrading it to anonymous would hide the real problem
720
+ // behind a sync that quietly returns only public data.
721
+ const hasClientID = !!merged.ClientID;
722
+ const hasClientSecret = !!merged.ClientSecret;
723
+ if (hasClientID !== hasClientSecret) {
724
+ throw new Error('ORCIDConnector: ClientID and ClientSecret must BOTH be provided (OAuth2 client_credentials), ' +
725
+ 'or both omitted to use the anonymous Public API.');
648
726
  }
649
727
  if ((!merged.SearchQuery || merged.SearchQuery.trim().length === 0) && (!merged.OrcidIds || merged.OrcidIds.length === 0)) {
650
728
  // Not fatal at auth time — surfaced as a ZERO_SCOPE warning per object in FetchChanges.
@@ -1 +1 @@
1
- {"version":3,"file":"ORCIDConnector.js","sourceRoot":"","sources":["../src/ORCIDConnector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ORCIDConnector.js","sourceRoot":"","sources":["../src/ORCIDConnector.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/connector-orcid",
3
- "version": "1.1.3",
3
+ "version": "1.2.1",
4
4
  "description": "MemberJunction ORCID connector.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -13,7 +13,7 @@
13
13
  "test": "vitest run --passWithNoTests"
14
14
  },
15
15
  "author": "MemberJunction.com",
16
- "license": "ISC",
16
+ "license": "BUSL-1.1",
17
17
  "peerDependencies": {
18
18
  "@memberjunction/core": ">=5.42.0 <6.0.0",
19
19
  "@memberjunction/core-entities": ">=5.42.0 <6.0.0",