LinkedIn · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for LinkedIn Recruiter System Connect Access Control API

4 actions 4 updates phrasing extends openapi/linkedin-access-control-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for LinkedIn's API. It is a proposal applied on top of the contract, not a document LinkedIn publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 4

$.info
$.paths['/v2/atsEntityAcls'].get
$.paths['/v2/atsEntityAcls'].put
$.paths['/v2/atsEntityAcls'].delete

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for LinkedIn Recruiter System Connect Access Control API
  version: 1.0.0
extends: openapi/linkedin-access-control-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 3
- target: $.paths['/v2/atsEntityAcls'].get
  update:
    x-apievangelist-phrasing:
      intent: Retrieve synced ATS entity access controls
      effect: read
      questions:
      - Who can see a synced ATS job or candidate inside LinkedIn Recruiter?
      - Can I read back the access control list I synced for an ATS entity?
      instructions:
      - text: Retrieve ACLs for {atsEntityType} {atsEntityId} from provider {dataProvider} in context {integrationContext}.
        slots:
          atsEntityType: query.atsEntityType
          atsEntityId: query.atsEntityId
          dataProvider: query.dataProvider
          integrationContext: query.integrationContext
      - text: Page ACLs for entity {atsEntityId}, {count} at a time from {start}.
        slots:
          atsEntityId: query.atsEntityId
          count: query.count
          start: query.start
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v2/atsEntityAcls'].put
  update:
    x-apievangelist-phrasing:
      intent: Create or update ATS entity access controls
      effect: write
      questions:
      - Can I control which recruiters see a synced requisition?
      - What happens when I sync an ACL that already exists?
      instructions:
      - text: Upsert ACL {aclId} for {atsEntityType} {atsEntityId} from {dataProvider} in {integrationContext}.
        slots:
          aclId: query.ids[0].atsEntityAclId
          atsEntityType: query.ids[0].atsEntityType
          atsEntityId: query.ids[0].atsEntityId
          dataProvider: query.ids[0].dataProvider
          integrationContext: query.ids[0].integrationContext
      - text: Sync access control entries {entities} to LinkedIn.
        slots:
          entities: requestBody.entities
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v2/atsEntityAcls'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete synced ATS entity access controls
      effect: destructive
      questions:
      - Can I remove an access control entry I previously synced?
      - What should I delete when an ATS visibility rule no longer applies?
      instructions:
      - text: Delete ACL {aclId} on {atsEntityType} {atsEntityId} from {dataProvider} in {integrationContext}.
        slots:
          aclId: query.ids[0].atsEntityAclId
          atsEntityType: query.ids[0].atsEntityType
          atsEntityId: query.ids[0].atsEntityId
          dataProvider: query.ids[0].dataProvider
          integrationContext: query.ids[0].integrationContext
      - text: Remove the synced ACL {aclId}.
        slots:
          aclId: query.ids[0].atsEntityAclId
      method: generated
      generated: '2026-09-26'