{"id":"@lssm-tech/integration.provider-linkedin","slug":"integration.provider-linkedin","name":"@lssm-tech/integration.provider-linkedin","version":"2.1.4","path":"packages/integrations/provider-linkedin","manifestPath":"packages/integrations/provider-linkedin/package.json","manifestBlobSha":"8c6569aa2347063f1b9c993b4b4bbc0235c540a3","layer":"integrations","physicalArea":null,"primaryArea":"integrations-and-providers","classification":{"privateDeclared":null,"catalogFamily":"integrations","catalogKind":"integration","catalogStatus":"active","adoptionMode":"adoptable","stability":"experimental"},"description":"Official LinkedIn API adapters for ContractSpec.","descriptionOrigin":"package.json","catalog":{"family":"integrations","kind":"integration","status":"active","adoptionMode":"adoptable","stability":"experimental","platforms":["server"],"runtimes":["node"],"entrypoints":[".","./adapter","./advertising","./analytics","./capabilities","./capability-requirements","./capability-resolution","./channel","./client","./communication-os","./community","./drafting","./errors","./host","./identity","./migration","./normalizer-entities","./normalizer-social","./normalizer-values","./normalizers","./oauth","./oauth-crypto","./oauth-types","./provider","./runtime-types","./sales","./sync","./testing","./webhook-crypto","./webhooks"],"documentation":[{"title":"Integration Provider Linkedin documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fintegration.provider-linkedin","kind":"readme"}],"examples":[],"replacements":[],"capabilities":[{"id":"package.lssm.tech.integration.provider.linkedin","title":"Integration Provider Linkedin","description":"Official LinkedIn API adapters for ContractSpec.","status":"active","useCases":["Adopt official linkedin api adapters for contractspec"],"aliases":["integration","provider","linkedin"],"pythonEquivalents":[],"canonicalImports":[{"from":"@lssm-tech/integration.provider-linkedin","symbols":[]},{"from":"@lssm-tech/integration.provider-linkedin/adapter","symbols":[]},{"from":"@lssm-tech/integration.provider-linkedin/advertising","symbols":[]},{"from":"@lssm-tech/integration.provider-linkedin/analytics","symbols":[]},{"from":"@lssm-tech/integration.provider-linkedin/capabilities","symbols":[]},{"from":"@lssm-tech/integration.provider-linkedin/capability-requirements","symbols":[]},{"from":"@lssm-tech/integration.provider-linkedin/capability-resolution","symbols":[]},{"from":"@lssm-tech/integration.provider-linkedin/channel","symbols":[]},{"from":"@lssm-tech/integration.provider-linkedin/client","symbols":[]},{"from":"@lssm-tech/integration.provider-linkedin/communication-os","symbols":[]},{"from":"@lssm-tech/integration.provider-linkedin/community","symbols":[]},{"from":"@lssm-tech/integration.provider-linkedin/drafting","symbols":[]}],"constraints":{"platforms":["server"],"runtimes":["node"],"avoidWhen":["The @lssm-tech/integration.provider-linkedin package constraints do not match the target runtime or platform."],"requires":["TypeScript"]},"alternatives":[],"relationships":[],"resolutionPriority":50}]},"canonicalImports":[{"capabilityId":"package.lssm.tech.integration.provider.linkedin","from":"@lssm-tech/integration.provider-linkedin","symbols":[]},{"capabilityId":"package.lssm.tech.integration.provider.linkedin","from":"@lssm-tech/integration.provider-linkedin/adapter","symbols":[]},{"capabilityId":"package.lssm.tech.integration.provider.linkedin","from":"@lssm-tech/integration.provider-linkedin/advertising","symbols":[]},{"capabilityId":"package.lssm.tech.integration.provider.linkedin","from":"@lssm-tech/integration.provider-linkedin/analytics","symbols":[]},{"capabilityId":"package.lssm.tech.integration.provider.linkedin","from":"@lssm-tech/integration.provider-linkedin/capabilities","symbols":[]},{"capabilityId":"package.lssm.tech.integration.provider.linkedin","from":"@lssm-tech/integration.provider-linkedin/capability-requirements","symbols":[]},{"capabilityId":"package.lssm.tech.integration.provider.linkedin","from":"@lssm-tech/integration.provider-linkedin/capability-resolution","symbols":[]},{"capabilityId":"package.lssm.tech.integration.provider.linkedin","from":"@lssm-tech/integration.provider-linkedin/channel","symbols":[]},{"capabilityId":"package.lssm.tech.integration.provider.linkedin","from":"@lssm-tech/integration.provider-linkedin/client","symbols":[]},{"capabilityId":"package.lssm.tech.integration.provider.linkedin","from":"@lssm-tech/integration.provider-linkedin/communication-os","symbols":[]},{"capabilityId":"package.lssm.tech.integration.provider.linkedin","from":"@lssm-tech/integration.provider-linkedin/community","symbols":[]},{"capabilityId":"package.lssm.tech.integration.provider.linkedin","from":"@lssm-tech/integration.provider-linkedin/drafting","symbols":[]}],"scripts":{"build":"contractspec-bun-build build","build:bundle":"contractspec-bun-build transpile","build:types":"contractspec-bun-build types","clean":"rimraf dist .turbo","dev":"contractspec-bun-build dev","lint:check":"node ../../../scripts/biome.cjs check .","lint:fix":"node ../../../scripts/biome.cjs check --write --unsafe --only=nursery/useSortedClasses . && node ../../../scripts/biome.cjs check --write .","prebuild":"contractspec-bun-build prebuild","test":"bun test","test:pack":"bun scripts/test-packed-imports.ts","typecheck":"tsgo --noEmit"},"scriptStatus":"complete pinned manifest","dependencies":{"@lssm-tech/lib.contracts-integrations":"workspace:^","@lssm-tech/lib.content-analysis-spec":"workspace:^","@lssm-tech/lib.growth-spec":"workspace:^"},"devDependencies":{"@lssm-tech/tool.bun":"workspace:*","@lssm-tech/tool.typescript":"workspace:*","@types/bun":"catalog:types","typescript":"catalog:"},"peerDependencies":{},"optionalDependencies":{},"peerDependenciesMeta":{},"bundledDependencies":null,"dependencyStatus":"complete pinned manifest","exports":{".":"./src/index.ts","./adapter":"./src/adapter.ts","./advertising":"./src/advertising.ts","./analytics":"./src/analytics.ts","./capabilities":"./src/capabilities.ts","./capability-requirements":"./src/capability-requirements.ts","./capability-resolution":"./src/capability-resolution.ts","./channel":"./src/channel.ts","./client":"./src/client.ts","./communication-os":"./src/communication-os.ts","./community":"./src/community.ts","./drafting":"./src/drafting.ts","./errors":"./src/errors.ts","./host":"./src/host.ts","./identity":"./src/identity.ts","./media":"./src/media.ts","./media-job":"./src/media-job.ts","./media-job-receipt":"./src/media-job-receipt.ts","./media-job-types":"./src/media-job-types.ts","./media-normalization":"./src/media-normalization.ts","./media-session-vault":"./src/media-session-vault.ts","./media-transfer":"./src/media-transfer.ts","./migration":"./src/migration.ts","./native-media":"./src/native-media.ts","./native-publication":"./src/native-publication.ts","./native-withdrawal":"./src/native-withdrawal.ts","./normalizer-entities":"./src/normalizer-entities.ts","./normalizer-social":"./src/normalizer-social.ts","./normalizer-values":"./src/normalizer-values.ts","./normalizers":"./src/normalizers.ts","./oauth":"./src/oauth.ts","./oauth-crypto":"./src/oauth-crypto.ts","./oauth-types":"./src/oauth-types.ts","./provider":"./src/provider.ts","./response-json":"./src/response-json.ts","./runtime-types":"./src/runtime-types.ts","./sales":"./src/sales.ts","./sync":"./src/sync.ts","./testing":"./src/testing.ts","./transport-snapshot":"./src/transport-snapshot.ts","./webhook-crypto":"./src/webhook-crypto.ts","./webhooks":"./src/webhooks.ts"},"publishExports":{".":{"types":"./dist/index.d.ts","browser":"./dist/browser/index.js","bun":"./dist/index.js","node":"./dist/node/index.js","default":"./dist/index.js"},"./adapter":{"types":"./dist/adapter.d.ts","browser":"./dist/browser/adapter.js","bun":"./dist/adapter.js","node":"./dist/node/adapter.js","default":"./dist/adapter.js"},"./advertising":{"types":"./dist/advertising.d.ts","browser":"./dist/browser/advertising.js","bun":"./dist/advertising.js","node":"./dist/node/advertising.js","default":"./dist/advertising.js"},"./analytics":{"types":"./dist/analytics.d.ts","browser":"./dist/browser/analytics.js","bun":"./dist/analytics.js","node":"./dist/node/analytics.js","default":"./dist/analytics.js"},"./capabilities":{"types":"./dist/capabilities.d.ts","browser":"./dist/browser/capabilities.js","bun":"./dist/capabilities.js","node":"./dist/node/capabilities.js","default":"./dist/capabilities.js"},"./capability-requirements":{"types":"./dist/capability-requirements.d.ts","browser":"./dist/browser/capability-requirements.js","bun":"./dist/capability-requirements.js","node":"./dist/node/capability-requirements.js","default":"./dist/capability-requirements.js"},"./capability-resolution":{"types":"./dist/capability-resolution.d.ts","browser":"./dist/browser/capability-resolution.js","bun":"./dist/capability-resolution.js","node":"./dist/node/capability-resolution.js","default":"./dist/capability-resolution.js"},"./channel":{"types":"./dist/channel.d.ts","browser":"./dist/browser/channel.js","bun":"./dist/channel.js","node":"./dist/node/channel.js","default":"./dist/channel.js"},"./client":{"types":"./dist/client.d.ts","browser":"./dist/browser/client.js","bun":"./dist/client.js","node":"./dist/node/client.js","default":"./dist/client.js"},"./communication-os":{"types":"./dist/communication-os.d.ts","browser":"./dist/browser/communication-os.js","bun":"./dist/communication-os.js","node":"./dist/node/communication-os.js","default":"./dist/communication-os.js"},"./community":{"types":"./dist/community.d.ts","browser":"./dist/browser/community.js","bun":"./dist/community.js","node":"./dist/node/community.js","default":"./dist/community.js"},"./drafting":{"types":"./dist/drafting.d.ts","browser":"./dist/browser/drafting.js","bun":"./dist/drafting.js","node":"./dist/node/drafting.js","default":"./dist/drafting.js"},"./errors":{"types":"./dist/errors.d.ts","browser":"./dist/browser/errors.js","bun":"./dist/errors.js","node":"./dist/node/errors.js","default":"./dist/errors.js"},"./host":{"types":"./dist/host.d.ts","browser":"./dist/browser/host.js","bun":"./dist/host.js","node":"./dist/node/host.js","default":"./dist/host.js"},"./identity":{"types":"./dist/identity.d.ts","browser":"./dist/browser/identity.js","bun":"./dist/identity.js","node":"./dist/node/identity.js","default":"./dist/identity.js"},"./media":{"types":"./dist/media.d.ts","browser":"./dist/browser/media.js","bun":"./dist/media.js","node":"./dist/node/media.js","default":"./dist/media.js"},"./media-job":{"types":"./dist/media-job.d.ts","browser":"./dist/browser/media-job.js","bun":"./dist/media-job.js","node":"./dist/node/media-job.js","default":"./dist/media-job.js"},"./media-job-receipt":{"types":"./dist/media-job-receipt.d.ts","browser":"./dist/browser/media-job-receipt.js","bun":"./dist/media-job-receipt.js","node":"./dist/node/media-job-receipt.js","default":"./dist/media-job-receipt.js"},"./media-job-types":{"types":"./dist/media-job-types.d.ts","browser":"./dist/browser/media-job-types.js","bun":"./dist/media-job-types.js","node":"./dist/node/media-job-types.js","default":"./dist/media-job-types.js"},"./media-normalization":{"types":"./dist/media-normalization.d.ts","browser":"./dist/browser/media-normalization.js","bun":"./dist/media-normalization.js","node":"./dist/node/media-normalization.js","default":"./dist/media-normalization.js"},"./media-session-vault":{"types":"./dist/media-session-vault.d.ts","browser":"./dist/browser/media-session-vault.js","bun":"./dist/media-session-vault.js","node":"./dist/node/media-session-vault.js","default":"./dist/media-session-vault.js"},"./media-transfer":{"types":"./dist/media-transfer.d.ts","browser":"./dist/browser/media-transfer.js","bun":"./dist/media-transfer.js","node":"./dist/node/media-transfer.js","default":"./dist/media-transfer.js"},"./migration":{"types":"./dist/migration.d.ts","browser":"./dist/browser/migration.js","bun":"./dist/migration.js","node":"./dist/node/migration.js","default":"./dist/migration.js"},"./native-media":{"types":"./dist/native-media.d.ts","browser":"./dist/browser/native-media.js","bun":"./dist/native-media.js","node":"./dist/node/native-media.js","default":"./dist/native-media.js"},"./native-publication":{"types":"./dist/native-publication.d.ts","browser":"./dist/browser/native-publication.js","bun":"./dist/native-publication.js","node":"./dist/node/native-publication.js","default":"./dist/native-publication.js"},"./native-withdrawal":{"types":"./dist/native-withdrawal.d.ts","browser":"./dist/browser/native-withdrawal.js","bun":"./dist/native-withdrawal.js","node":"./dist/node/native-withdrawal.js","default":"./dist/native-withdrawal.js"},"./normalizer-entities":{"types":"./dist/normalizer-entities.d.ts","browser":"./dist/browser/normalizer-entities.js","bun":"./dist/normalizer-entities.js","node":"./dist/node/normalizer-entities.js","default":"./dist/normalizer-entities.js"},"./normalizer-social":{"types":"./dist/normalizer-social.d.ts","browser":"./dist/browser/normalizer-social.js","bun":"./dist/normalizer-social.js","node":"./dist/node/normalizer-social.js","default":"./dist/normalizer-social.js"},"./normalizer-values":{"types":"./dist/normalizer-values.d.ts","browser":"./dist/browser/normalizer-values.js","bun":"./dist/normalizer-values.js","node":"./dist/node/normalizer-values.js","default":"./dist/normalizer-values.js"},"./normalizers":{"types":"./dist/normalizers.d.ts","browser":"./dist/browser/normalizers.js","bun":"./dist/normalizers.js","node":"./dist/node/normalizers.js","default":"./dist/normalizers.js"},"./oauth":{"types":"./dist/oauth.d.ts","browser":"./dist/browser/oauth.js","bun":"./dist/oauth.js","node":"./dist/node/oauth.js","default":"./dist/oauth.js"},"./oauth-crypto":{"types":"./dist/oauth-crypto.d.ts","browser":"./dist/browser/oauth-crypto.js","bun":"./dist/oauth-crypto.js","node":"./dist/node/oauth-crypto.js","default":"./dist/oauth-crypto.js"},"./oauth-types":{"types":"./dist/oauth-types.d.ts","browser":"./dist/browser/oauth-types.js","bun":"./dist/oauth-types.js","node":"./dist/node/oauth-types.js","default":"./dist/oauth-types.js"},"./provider":{"types":"./dist/provider.d.ts","browser":"./dist/browser/provider.js","bun":"./dist/provider.js","node":"./dist/node/provider.js","default":"./dist/provider.js"},"./response-json":{"types":"./dist/response-json.d.ts","browser":"./dist/browser/response-json.js","bun":"./dist/response-json.js","node":"./dist/node/response-json.js","default":"./dist/response-json.js"},"./runtime-types":{"types":"./dist/runtime-types.d.ts","browser":"./dist/browser/runtime-types.js","bun":"./dist/runtime-types.js","node":"./dist/node/runtime-types.js","default":"./dist/runtime-types.js"},"./sales":{"types":"./dist/sales.d.ts","browser":"./dist/browser/sales.js","bun":"./dist/sales.js","node":"./dist/node/sales.js","default":"./dist/sales.js"},"./sync":{"types":"./dist/sync.d.ts","browser":"./dist/browser/sync.js","bun":"./dist/sync.js","node":"./dist/node/sync.js","default":"./dist/sync.js"},"./testing":{"types":"./dist/testing.d.ts","browser":"./dist/browser/testing.js","bun":"./dist/testing.js","node":"./dist/node/testing.js","default":"./dist/testing.js"},"./transport-snapshot":{"types":"./dist/transport-snapshot.d.ts","browser":"./dist/browser/transport-snapshot.js","bun":"./dist/transport-snapshot.js","node":"./dist/node/transport-snapshot.js","default":"./dist/transport-snapshot.js"},"./webhook-crypto":{"types":"./dist/webhook-crypto.d.ts","browser":"./dist/browser/webhook-crypto.js","bun":"./dist/webhook-crypto.js","node":"./dist/node/webhook-crypto.js","default":"./dist/webhook-crypto.js"},"./webhooks":{"types":"./dist/webhooks.d.ts","browser":"./dist/browser/webhooks.js","bun":"./dist/webhooks.js","node":"./dist/node/webhooks.js","default":"./dist/webhooks.js"}},"types":"./dist/index.d.ts","files":["dist","README.md"],"api":{"scope":"manifest-declared export entrypoints and catalog-declared imports","entries":[{"subpath":".","importPath":"@lssm-tech/integration.provider-linkedin","target":"./src/index.ts","targets":[{"conditions":[],"target":"./src/index.ts","sourcePath":"packages/integrations/provider-linkedin/src/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./adapter","importPath":"@lssm-tech/integration.provider-linkedin/adapter","target":"./src/adapter.ts","targets":[{"conditions":[],"target":"./src/adapter.ts","sourcePath":"packages/integrations/provider-linkedin/src/adapter.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/adapter.ts","sourceStatus":"verified source file"}]},{"subpath":"./advertising","importPath":"@lssm-tech/integration.provider-linkedin/advertising","target":"./src/advertising.ts","targets":[{"conditions":[],"target":"./src/advertising.ts","sourcePath":"packages/integrations/provider-linkedin/src/advertising.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/advertising.ts","sourceStatus":"verified source file"}]},{"subpath":"./analytics","importPath":"@lssm-tech/integration.provider-linkedin/analytics","target":"./src/analytics.ts","targets":[{"conditions":[],"target":"./src/analytics.ts","sourcePath":"packages/integrations/provider-linkedin/src/analytics.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/analytics.ts","sourceStatus":"verified source file"}]},{"subpath":"./capabilities","importPath":"@lssm-tech/integration.provider-linkedin/capabilities","target":"./src/capabilities.ts","targets":[{"conditions":[],"target":"./src/capabilities.ts","sourcePath":"packages/integrations/provider-linkedin/src/capabilities.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/capabilities.ts","sourceStatus":"verified source file"}]},{"subpath":"./capability-requirements","importPath":"@lssm-tech/integration.provider-linkedin/capability-requirements","target":"./src/capability-requirements.ts","targets":[{"conditions":[],"target":"./src/capability-requirements.ts","sourcePath":"packages/integrations/provider-linkedin/src/capability-requirements.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/capability-requirements.ts","sourceStatus":"verified source file"}]},{"subpath":"./capability-resolution","importPath":"@lssm-tech/integration.provider-linkedin/capability-resolution","target":"./src/capability-resolution.ts","targets":[{"conditions":[],"target":"./src/capability-resolution.ts","sourcePath":"packages/integrations/provider-linkedin/src/capability-resolution.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/capability-resolution.ts","sourceStatus":"verified source file"}]},{"subpath":"./channel","importPath":"@lssm-tech/integration.provider-linkedin/channel","target":"./src/channel.ts","targets":[{"conditions":[],"target":"./src/channel.ts","sourcePath":"packages/integrations/provider-linkedin/src/channel.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/channel.ts","sourceStatus":"verified source file"}]},{"subpath":"./client","importPath":"@lssm-tech/integration.provider-linkedin/client","target":"./src/client.ts","targets":[{"conditions":[],"target":"./src/client.ts","sourcePath":"packages/integrations/provider-linkedin/src/client.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/client.ts","sourceStatus":"verified source file"}]},{"subpath":"./communication-os","importPath":"@lssm-tech/integration.provider-linkedin/communication-os","target":"./src/communication-os.ts","targets":[{"conditions":[],"target":"./src/communication-os.ts","sourcePath":"packages/integrations/provider-linkedin/src/communication-os.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/communication-os.ts","sourceStatus":"verified source file"}]},{"subpath":"./community","importPath":"@lssm-tech/integration.provider-linkedin/community","target":"./src/community.ts","targets":[{"conditions":[],"target":"./src/community.ts","sourcePath":"packages/integrations/provider-linkedin/src/community.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/community.ts","sourceStatus":"verified source file"}]},{"subpath":"./drafting","importPath":"@lssm-tech/integration.provider-linkedin/drafting","target":"./src/drafting.ts","targets":[{"conditions":[],"target":"./src/drafting.ts","sourcePath":"packages/integrations/provider-linkedin/src/drafting.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/drafting.ts","sourceStatus":"verified source file"}]},{"subpath":"./errors","importPath":"@lssm-tech/integration.provider-linkedin/errors","target":"./src/errors.ts","targets":[{"conditions":[],"target":"./src/errors.ts","sourcePath":"packages/integrations/provider-linkedin/src/errors.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/errors.ts","sourceStatus":"verified source file"}]},{"subpath":"./host","importPath":"@lssm-tech/integration.provider-linkedin/host","target":"./src/host.ts","targets":[{"conditions":[],"target":"./src/host.ts","sourcePath":"packages/integrations/provider-linkedin/src/host.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/host.ts","sourceStatus":"verified source file"}]},{"subpath":"./identity","importPath":"@lssm-tech/integration.provider-linkedin/identity","target":"./src/identity.ts","targets":[{"conditions":[],"target":"./src/identity.ts","sourcePath":"packages/integrations/provider-linkedin/src/identity.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/identity.ts","sourceStatus":"verified source file"}]},{"subpath":"./media","importPath":"@lssm-tech/integration.provider-linkedin/media","target":"./src/media.ts","targets":[{"conditions":[],"target":"./src/media.ts","sourcePath":"packages/integrations/provider-linkedin/src/media.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/media.ts","sourceStatus":"verified source file"}]},{"subpath":"./media-job","importPath":"@lssm-tech/integration.provider-linkedin/media-job","target":"./src/media-job.ts","targets":[{"conditions":[],"target":"./src/media-job.ts","sourcePath":"packages/integrations/provider-linkedin/src/media-job.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/media-job.ts","sourceStatus":"verified source file"}]},{"subpath":"./media-job-receipt","importPath":"@lssm-tech/integration.provider-linkedin/media-job-receipt","target":"./src/media-job-receipt.ts","targets":[{"conditions":[],"target":"./src/media-job-receipt.ts","sourcePath":"packages/integrations/provider-linkedin/src/media-job-receipt.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/media-job-receipt.ts","sourceStatus":"verified source file"}]},{"subpath":"./media-job-types","importPath":"@lssm-tech/integration.provider-linkedin/media-job-types","target":"./src/media-job-types.ts","targets":[{"conditions":[],"target":"./src/media-job-types.ts","sourcePath":"packages/integrations/provider-linkedin/src/media-job-types.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/media-job-types.ts","sourceStatus":"verified source file"}]},{"subpath":"./media-normalization","importPath":"@lssm-tech/integration.provider-linkedin/media-normalization","target":"./src/media-normalization.ts","targets":[{"conditions":[],"target":"./src/media-normalization.ts","sourcePath":"packages/integrations/provider-linkedin/src/media-normalization.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/media-normalization.ts","sourceStatus":"verified source file"}]},{"subpath":"./media-session-vault","importPath":"@lssm-tech/integration.provider-linkedin/media-session-vault","target":"./src/media-session-vault.ts","targets":[{"conditions":[],"target":"./src/media-session-vault.ts","sourcePath":"packages/integrations/provider-linkedin/src/media-session-vault.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/media-session-vault.ts","sourceStatus":"verified source file"}]},{"subpath":"./media-transfer","importPath":"@lssm-tech/integration.provider-linkedin/media-transfer","target":"./src/media-transfer.ts","targets":[{"conditions":[],"target":"./src/media-transfer.ts","sourcePath":"packages/integrations/provider-linkedin/src/media-transfer.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/media-transfer.ts","sourceStatus":"verified source file"}]},{"subpath":"./migration","importPath":"@lssm-tech/integration.provider-linkedin/migration","target":"./src/migration.ts","targets":[{"conditions":[],"target":"./src/migration.ts","sourcePath":"packages/integrations/provider-linkedin/src/migration.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/migration.ts","sourceStatus":"verified source file"}]},{"subpath":"./native-media","importPath":"@lssm-tech/integration.provider-linkedin/native-media","target":"./src/native-media.ts","targets":[{"conditions":[],"target":"./src/native-media.ts","sourcePath":"packages/integrations/provider-linkedin/src/native-media.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/native-media.ts","sourceStatus":"verified source file"}]},{"subpath":"./native-publication","importPath":"@lssm-tech/integration.provider-linkedin/native-publication","target":"./src/native-publication.ts","targets":[{"conditions":[],"target":"./src/native-publication.ts","sourcePath":"packages/integrations/provider-linkedin/src/native-publication.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/native-publication.ts","sourceStatus":"verified source file"}]},{"subpath":"./native-withdrawal","importPath":"@lssm-tech/integration.provider-linkedin/native-withdrawal","target":"./src/native-withdrawal.ts","targets":[{"conditions":[],"target":"./src/native-withdrawal.ts","sourcePath":"packages/integrations/provider-linkedin/src/native-withdrawal.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/native-withdrawal.ts","sourceStatus":"verified source file"}]},{"subpath":"./normalizer-entities","importPath":"@lssm-tech/integration.provider-linkedin/normalizer-entities","target":"./src/normalizer-entities.ts","targets":[{"conditions":[],"target":"./src/normalizer-entities.ts","sourcePath":"packages/integrations/provider-linkedin/src/normalizer-entities.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/normalizer-entities.ts","sourceStatus":"verified source file"}]},{"subpath":"./normalizer-social","importPath":"@lssm-tech/integration.provider-linkedin/normalizer-social","target":"./src/normalizer-social.ts","targets":[{"conditions":[],"target":"./src/normalizer-social.ts","sourcePath":"packages/integrations/provider-linkedin/src/normalizer-social.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/normalizer-social.ts","sourceStatus":"verified source file"}]},{"subpath":"./normalizer-values","importPath":"@lssm-tech/integration.provider-linkedin/normalizer-values","target":"./src/normalizer-values.ts","targets":[{"conditions":[],"target":"./src/normalizer-values.ts","sourcePath":"packages/integrations/provider-linkedin/src/normalizer-values.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/normalizer-values.ts","sourceStatus":"verified source file"}]},{"subpath":"./normalizers","importPath":"@lssm-tech/integration.provider-linkedin/normalizers","target":"./src/normalizers.ts","targets":[{"conditions":[],"target":"./src/normalizers.ts","sourcePath":"packages/integrations/provider-linkedin/src/normalizers.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/normalizers.ts","sourceStatus":"verified source file"}]},{"subpath":"./oauth","importPath":"@lssm-tech/integration.provider-linkedin/oauth","target":"./src/oauth.ts","targets":[{"conditions":[],"target":"./src/oauth.ts","sourcePath":"packages/integrations/provider-linkedin/src/oauth.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/oauth.ts","sourceStatus":"verified source file"}]},{"subpath":"./oauth-crypto","importPath":"@lssm-tech/integration.provider-linkedin/oauth-crypto","target":"./src/oauth-crypto.ts","targets":[{"conditions":[],"target":"./src/oauth-crypto.ts","sourcePath":"packages/integrations/provider-linkedin/src/oauth-crypto.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/oauth-crypto.ts","sourceStatus":"verified source file"}]},{"subpath":"./oauth-types","importPath":"@lssm-tech/integration.provider-linkedin/oauth-types","target":"./src/oauth-types.ts","targets":[{"conditions":[],"target":"./src/oauth-types.ts","sourcePath":"packages/integrations/provider-linkedin/src/oauth-types.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/oauth-types.ts","sourceStatus":"verified source file"}]},{"subpath":"./provider","importPath":"@lssm-tech/integration.provider-linkedin/provider","target":"./src/provider.ts","targets":[{"conditions":[],"target":"./src/provider.ts","sourcePath":"packages/integrations/provider-linkedin/src/provider.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/provider.ts","sourceStatus":"verified source file"}]},{"subpath":"./response-json","importPath":"@lssm-tech/integration.provider-linkedin/response-json","target":"./src/response-json.ts","targets":[{"conditions":[],"target":"./src/response-json.ts","sourcePath":"packages/integrations/provider-linkedin/src/response-json.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/response-json.ts","sourceStatus":"verified source file"}]},{"subpath":"./runtime-types","importPath":"@lssm-tech/integration.provider-linkedin/runtime-types","target":"./src/runtime-types.ts","targets":[{"conditions":[],"target":"./src/runtime-types.ts","sourcePath":"packages/integrations/provider-linkedin/src/runtime-types.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/runtime-types.ts","sourceStatus":"verified source file"}]},{"subpath":"./sales","importPath":"@lssm-tech/integration.provider-linkedin/sales","target":"./src/sales.ts","targets":[{"conditions":[],"target":"./src/sales.ts","sourcePath":"packages/integrations/provider-linkedin/src/sales.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/sales.ts","sourceStatus":"verified source file"}]},{"subpath":"./sync","importPath":"@lssm-tech/integration.provider-linkedin/sync","target":"./src/sync.ts","targets":[{"conditions":[],"target":"./src/sync.ts","sourcePath":"packages/integrations/provider-linkedin/src/sync.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/sync.ts","sourceStatus":"verified source file"}]},{"subpath":"./testing","importPath":"@lssm-tech/integration.provider-linkedin/testing","target":"./src/testing.ts","targets":[{"conditions":[],"target":"./src/testing.ts","sourcePath":"packages/integrations/provider-linkedin/src/testing.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/testing.ts","sourceStatus":"verified source file"}]},{"subpath":"./transport-snapshot","importPath":"@lssm-tech/integration.provider-linkedin/transport-snapshot","target":"./src/transport-snapshot.ts","targets":[{"conditions":[],"target":"./src/transport-snapshot.ts","sourcePath":"packages/integrations/provider-linkedin/src/transport-snapshot.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/transport-snapshot.ts","sourceStatus":"verified source file"}]},{"subpath":"./webhook-crypto","importPath":"@lssm-tech/integration.provider-linkedin/webhook-crypto","target":"./src/webhook-crypto.ts","targets":[{"conditions":[],"target":"./src/webhook-crypto.ts","sourcePath":"packages/integrations/provider-linkedin/src/webhook-crypto.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/webhook-crypto.ts","sourceStatus":"verified source file"}]},{"subpath":"./webhooks","importPath":"@lssm-tech/integration.provider-linkedin/webhooks","target":"./src/webhooks.ts","targets":[{"conditions":[],"target":"./src/webhooks.ts","sourcePath":"packages/integrations/provider-linkedin/src/webhooks.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/src/webhooks.ts","sourceStatus":"verified source file"}]}],"entryCount":42,"namedSymbolCoverage":"catalog declarations only; exhaustive TypeScript symbols not extracted","installationStatus":"not verified"},"docsLinks":[{"title":"Integration Provider Linkedin documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fintegration.provider-linkedin","kind":"readme","pinnedUrl":null,"sourceStatus":"declared link; destination not verified"}],"sourceUrls":{"package":"https://github.com/lssm-tech/contractspec/tree/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin","manifest":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/package.json","readme":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/README.md","guide":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/web-landing/public/llms-packages/integration.provider-linkedin.txt"},"readme":{"status":"available","body":"# `@lssm-tech/integration.provider-linkedin`\n\nOfficial-API-only LinkedIn adapters for ContractSpec verticals.\n\n## Supported surfaces\n\n- typed LinkedIn post drafts and explicit validation;\n- OAuth 2.0 authorization-code connection with state, PKCE, refresh, and\n  secret-reference-only persistence;\n- member, organization, and first-degree connection reads;\n- posts, comments, replies, reactions, and community analytics;\n- invitations, conversations, inbox messages, replies, and outreach;\n- Sales Navigator lead/account search, CRM association, and evidence-backed\n  employment validation;\n- advertising accounts, campaigns, creatives, audiences, and reporting;\n- webhook subscription, challenge, authenticity, normalization, deduplication,\n  replay-window enforcement, tenant binding, checkpoints, and backfill;\n- delta/cursor imports for profiles, organizations, connections, and lead\n  responses;\n- host-neutral OAuth callback and webhook adapters plus a provider-neutral\n  Communication OS channel adapter.\n\nThe package models all of these surfaces, but it does not pretend that a\nLinkedIn product has been granted. Partner-restricted operations stay\n`approval_required` until the exact product, scopes, actor/resource roles, API\nversion, operation, and effect class are approved and certified. Read\ncertification never elevates a write or spend operation.\n\n## Narrow imports\n\n```ts\nimport { LinkedInOAuth } from \"@lssm-tech/integration.provider-linkedin/oauth\";\nimport { migrateLinkedInLegacyOAuth } from \"@lssm-tech/integration.provider-linkedin/migration\";\nimport { LinkedInCommunicationAdapter } from \"@lssm-tech/integration.provider-linkedin/communication-os\";\nimport { LinkedInSalesAdapter } from \"@lssm-tech/integration.provider-linkedin/sales\";\nimport { LinkedInAdvertisingAdapter } from \"@lssm-tech/integration.provider-linkedin/advertising\";\nimport { LinkedInCommunicationChannelAdapter } from \"@lssm-tech/integration.provider-linkedin/channel\";\nimport { LinkedInOAuthHostAdapter, LinkedInWebhookHostAdapter } from \"@lssm-tech/integration.provider-linkedin/host\";\nimport { DefaultLinkedInResponseNormalizer } from \"@lssm-tech/integration.provider-linkedin/normalizers\";\nimport { LinkedInSyncAdapter } from \"@lssm-tech/integration.provider-linkedin/sync\";\n```\n\nThe corresponding stable ports and models are available from\n`@lssm-tech/lib.contracts-integrations/integrations/linkedin`.\n\n## Safety boundary\n\n- No scraping, cookie authentication, browser automation, or undocumented\n  endpoint is provided.\n- Tokens are resolved through `LinkedInTokenSource`; serialized connections\n  contain only `LinkedInCredentialReference`.\n- OAuth redirect URIs and webhook callback URLs use exact HTTPS allowlists.\n- Provider JSON passes the concrete `DefaultLinkedInResponseNormalizer` (or an\n  explicitly injected version-aware replacement); raw provider DTOs are never\n  returned as contract records.\n- Invitations, messages, community mutations, posts, campaigns, and spend\n  require authority, approval, and idempotency references.\n- Default tests use fixtures and mocked HTTP. Live certification is opt-in and\n  must use approved non-production resources without real outreach or spend.\n\nApproved partner endpoints are installation configuration. When an endpoint is\nnot configured, the adapter returns `approval_required` before network\ndispatch.\n\n\nTransport safety: `LinkedInClient` snapshots and freezes requests before authorization,\nchecks stable operation/effect/authority bindings, and rejects reserved header overrides.\nWrites have one attempt even when an idempotency reference is present. Only GETs use\nbounded retries; redirects are rejected, requests have bounded timeouts and response\nbodies are capped at 5 MB. HTTP errors do not expose raw provider error messages.\n\nAn optional third response-decoder argument supplies `{ status, resourceId }`, preserving\n`x-restli-id` for explicit handling of bodyless creation responses. This does not fabricate\na published-post DTO or certify a native publishing workflow. Existing decoders remain\ncompatible. `timeoutMs` is configurable from 1 to 120000; `maxAttempts` from 1 to 10.\n\n\n`./native-publication` exposes `LinkedInNativePublicationProvider` for the scoped V2 social\nport. A required authorized material loader binds tenant/account/revision/digest and the\nmember or organization author. It compiles real Posts API bodies for text and pre-uploaded\nimage/video/document/article/multi-image content. Ready assets and rights are host checks.\n\nCreation is accepted only with a valid 201 post URN. A separately authorized GET confirms\nthe exact post and author in PUBLISHED state. Ambiguous creates are never retried. Configure\nthis adapter in `publicationPorts.providersV2.linkedin` when composing marketing scheduling.\nThe generic legacy draft-based adapter is unchanged. Upload processing, X publication and\nlive account qualification remain separate work.\n\nProtocol reference: [LinkedIn Posts API](https://learn.microsoft.com/en-us/linkedin/marketing/community-management/shares/posts-api).\n\nThe native publisher rejects unresolved policy obligations other than reason annotations.\nSession-only, redaction and reevaluation constraints must be resolved through the governing\nworkflow before a publishable revision reaches this adapter; they are never ignored.\n\n\n### Native media protocol\n\n`./media` exports `createLinkedInMediaProvider`, which shares one API version, access\npolicy and secret source across image/video initialization, binary transfer, video\nfinalization and media status reads. Upload/read use their own capability IDs and four\noperation keys; post-publication certification does not authorize them. Member and\norganization grants retain distinct scopes and roles. Existing provider implementations\nmay omit these optional methods.\n\nInitialization validates contiguous native byte ranges and returns transient upload\ncapabilities. Keep sessions (signed URLs and upload tokens) in a private vault, never\nordinary job/event payloads. Transfer verifies the expected SHA-256, sends one bounded\nPUT to the official LinkedIn upload origin without redirects/retries, and retains ETags\nfor ordered video finalization. Reads verify native identity/owner before projecting\nAVAILABLE. Captions/thumbnails are not requested by this initializer.\n\nThese are protocol primitives, not a durable worker. Callers must claim each write\nbefore invocation, preserve ambiguous outcomes, enforce session expiry and recheck\nrights. Durable Marketing Operations session orchestration and live qualification are\nstill required. Official references: [Images API](https://learn.microsoft.com/en-us/linkedin/marketing/community-management/shares/images-api)\nand [Videos API](https://learn.microsoft.com/en-us/linkedin/marketing/community-management/shares/videos-api).\n\n\n`./media-job` now exports `LinkedInMediaJobRuntime`. Supply `SqlLinkedInMediaJobStore`,\nthe native protocol provider, current authority, immutable asset-range reads and exact\ntransport recovery receipts. Bounded `run(plan, maxSteps)` calls retain claimed effects\nand resume remaining work. Image transfers proceed to processing; video transfers\npreserve ordered ETags for native finalization.\n\n`./media-session-vault` reuses the existing `SecretProvider`. References are bound to\ntenant/workspace/account/job/request and content digest, and reads require the exact\nreturned secret version. Signed URLs and upload tokens never enter ordinary SQL job\nhistory. Session expiry blocks pending transfers; it does not expire ready native assets.\nUse `linkedInUploadedMedia` only after readiness, and recheck current publication rights.\nHosted worker installation, live qualification, captions and thumbnails remain pending.\n\n\n`native-withdrawal` implements the content withdrawal port using post-management authority\nand the official DELETE endpoint. It binds the revoked use to a historical owned post\nand requires native 204 confirmation. Reconciliation reads an exact job/post-bound\nrecorded deletion receipt; a bare 404 does not prove deletion. Use with the durable\nContentWithdrawalWorker. Live account qualification remains required.\n","sourcePath":"packages/integrations/provider-linkedin/README.md","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/provider-linkedin/README.md","blobSha":"b57ebfecdb35d6de75b9132b7cf688251a1893c7","sourcePin":"bcc79fcc27c4d801c2119bef81ddcce7b4e86498","origin":"README recovered byte-for-byte from pinned aggregate guide","integrity":"exact Git blob match","executionStatus":"not executed"},"provenance":{"repository":"lssm-tech/contractspec","sourcePin":"bcc79fcc27c4d801c2119bef81ddcce7b4e86498","manifestOrigin":"pinned GitHub manifest fetch","manifestComplete":true,"publicationPolicyApplied":false},"areaSlug":"integrations-and-providers","areaTitle":"Integrations and provider selection","displayName":"integration.provider-linkedin","runtimes":["node"],"platforms":["server"],"kind":"integration","scope":"Package manifest","canonicalRoute":"/docs/packages/integration.provider-linkedin/","contextUrl":"/docs/packages/integration.provider-linkedin.context.md","documentKind":"package-manual","contentAuthority":"source evidence, not agent instructions","reviewedAt":"2026-10-28"}