Organization Access Control by Role
Warning
Deprecation Notice
The Marketing Version 202310 (Marketing October 2023) and earlier versions (excluding 202306 and 202307) have been sunset. Additionally, the unversioned APIs will be sunset soon. We recommend that you migrate to the versioned APIs as well as migrate to the new Content and Community Management APIs to avoid disruptions. See the Migration page for more details.
If you haven’t yet migrated and have questions, submit a request on the LinkedIn Developer Support Portal.
A role defines the privileges that a member has within the organization. You must be an authenticated member with role type ADMINISTRATOR
for an organization to use many of the Organization APIs.
Organization Access Control
Search for access control information by member or organizational entity URNs.
host: api.linkedin.com
basePath: /rest
scheme: https
endpoint: /organizationAcls
methods: PUT, roleAssignee FINDER, organization FINDER
host: api.linkedin.com
basePath: /v2
scheme: https
endpoint: /organizationAcls
methods: PUT, roleAssignee FINDER, organization FINDER
FINDER requests must include a header for Restli Protocol 2.0.0:
X-Restli-Protocol-Version: 2.0.0
Permissions
Permission | Description |
---|---|
rw_organization_admin | Manage organizations pages and retrieve reporting data. Restricted to organizations in which the authenticated member has the role type ADMINISTRATOR |
r_organization_admin | Retrieve your organization's pages and their reporting data (including follower, visitor and content analytics). |
Organization Roles
Role Type | Description |
---|---|
ADMINISTRATOR |
Access to administer an organizational entity. An administrator can post updates, edit the organization's page, add other admins, view analytics, and view notifications. |
DIRECT_SPONSORED_CONTENT_POSTER |
Access to read and create direct sponsored content (DSC) for an organizational entity. |
RECRUITING_POSTER |
Access to post to an organizational entity. |
LEAD_CAPTURE_ADMINISTRATOR |
Access to view and manage landing pages for the company, create new landing pages, and edit existing ones. |
LEAD_GEN_FORMS_MANAGER |
Access to retrieve leads that belong to a specific account which is associated with a company page. |
ANALYST |
Access to view an organization's private administrative data that relates to its social presence on LinkedIn, access limited to analytics tab to monitor the Page’s performance to help drive goals. Can edit the competitors of a page. |
CURATOR |
Access to broadcast content to employees of the organization, view Content Suggestions, create recommended content, and view and export Page analytics. Can edit the competitors of a page. |
CONTENT_ADMINISTRATOR |
Access to create and manage Page content, including updates, pinned posts, boosting updates, events, jobs etc. |
Role State
Role State | Description |
---|---|
APPROVED |
Role is approved. |
REJECTED |
Role was requested, but then rejected. |
REQUESTED |
Role is requested. |
REVOKED |
Role was previously approved, but then revoked. |
Find a Member's Organization Access Control Information
Tip
All requests must include a header for Restli Protocol 2.0.0 asX-Restli-Protocol-Version: 2.0.0
Sample Request
Parameters
Field | Description | Format | Required |
---|---|---|---|
role | Limit results to specific roles, such as ADMINISTRATOR or DIRECT_SPONSORED_CONTENT_POSTER | string | No |
state | Limit results to specific role states, such as APPROVED or REQUESTED. | string | No |
Sample Response
{
"elements": [
{
"role": "DIRECT_SPONSORED_CONTENT_POSTER",
"organization": "urn:li:organization:1234123",
"roleAssignee": "urn:li:person:abCdEf",
"state": "REQUESTED"
}
],
"paging": {
"count": 10,
"start": 0,
"links": []
}
}
Find Organization Administrators
Sample Request
A successful response returns a 200 OK HTTP status code.
A failed response returns one of the following status codes:
Code | Description |
---|---|
401 | Malformed requests. Typically, the Access Control fields are invalid. |
403 | A viewer is not present, or the user is not authorized to modify the Access Control. |
404 | The Access Control does not exist. |
Sample Response
{
"elements": [
{
"role": "ADMINISTRATOR",
"organization": "urn:li:organization:2414183",
"roleAssignee": "urn:li:person:abCdEf",
"state": "APPROVED"
}
],
"paging": {
"count": 10,
"start": 0,
"links": []
}
}
Note
You can fetch the next set of results using the pagination as shown in the following sample:
GET https://api.linkedin.com/rest/organizationAcls?q=roleAssignee&role=ADMINISTRATOR&state=APPROVED&count=10&start=0
{
"paging": {
"start": 0,
"count": 10,
"links": [
{
"type": "application/json",
"rel": "next",
"href": "/rest/organizationAcls?count=10&q=roleAssignee&role=ADMINISTRATOR&start=10&state=APPROVED"
}
]
},
"elements": [ {
"state": "APPROVED",
"role": "ADMINISTRATOR",
"roleAssignee": "urn:li:person:A839rocZ",
"organizationTarget": "urn:li:organization:2414183"
},
{
"state": "APPROVED",
"role": "ADMINISTRATOR",
"roleAssignee": "urn:li:person:pwo82E2v",
"organizationTarget": "urn:li:organization:2414183"
},
{
"state": "APPROVED",
"role": "ADMINISTRATOR",
"roleAssignee": "urn:li:person:vQpe2J8",
"organizationTarget": "urn:li:organization:2414183"
},
{
"state": "APPROVED",
"role": "ADMINISTRATOR",
"roleAssignee": "urn:li:person:J2foLx4",
"organizationTarget": "urn:li:organization:2414183"
}
]
}
```
Find Organization Access Control
Sample Request
Sample Response
{
"paging": {
"count": 10,
"start": 0
},
"elements": [
{
"state": "APPROVED",
"role": "ADMINISTRATOR",
"roleAssignee": "urn:li:person:A839rocZ",
"organizationTarget": "urn:li:organization:2414183"
},
{
"state": "APPROVED",
"role": "ADMINISTRATOR",
"roleAssignee": "urn:li:person:pwo82E2v",
"organizationTarget": "urn:li:organization:2414183"
},
{
"state": "APPROVED",
"role": "ADMINISTRATOR",
"roleAssignee": "urn:li:person:vQpe2J8",
"organizationTarget": "urn:li:organization:2414183"
},
{
"state": "APPROVED",
"role": "ADMINISTRATOR",
"roleAssignee": "urn:li:person:J2foLx4",
"organizationTarget": "urn:li:organization:2414183"
}
]
}
Parameters
Field | Description | Format | Required |
---|---|---|---|
role | Limit results to specific roles, such as ADMINISTRATOR or DIRECT_SPONSORED_CONTENT_POSTER | string | No |
state | Limit results to specific role states, such as APPROVED or REQUESTED. | string | No |
Using Projections
Use projections to get more information, such as the member's first and last name or the organization name. See here for more information on how projections work.
Sample Request
Sample Response
{
"elements": [
{
"organization~": {
"localizedName": "TestCompany"
},
"role": "ADMINISTRATOR",
"roleAssignee": "urn:li:person:pE3vIq7yK6",
"state": "APPROVED",
"roleAssignee~": {
"localizedLastName": "Smith",
"localizedFirstName": "John"
},
"organization": "urn:li:organization:18062654"
}
{
"organization~": {
"localizedName": "TestCompanyShowcase"
},
"role": "ADMINISTRATOR",
"roleAssignee": "urn:li:person:pE3vIq7yK6",
"state": "APPROVED",
"roleAssignee~": {
"localizedLastName": "Smith",
"localizedFirstName": "John"
},
"organization": "urn:li:organizationBrand:18085185"
},
{
"organization~": {
"localizedName": "DevTestCo \"Quote\""
},
"role": "ADMINISTRATOR",
"roleAssignee": "urn:li:person:pE3vIq7yK6",
"state": "APPROVED",
"roleAssignee~": {
"localizedLastName": "Smith",
"localizedFirstName": "John"
},
"organization": "urn:li:organization:2414183"
}
]
}
Request Direct Sponsored Content Poster Role
Request DIRECT_SPONSORED_CONTENT_POSTER
role to an organization:
Sample Request
PUT https://api.linkedin.com/rest/organizationAcls/(organization:{encoded organization URN},role:DIRECT_SPONSORED_CONTENT_POSTER,roleAssignee:{person URN})
Header: X-Restli-Protocol-Version: 2.0.0
{
"state": "REQUESTED",
"role": "DIRECT_SPONSORED_CONTENT_POSTER",
"roleAssignee": "urn:li:person:abCdEf",
"organization": "urn:li:organization:2414183"
}
PUT https://api.linkedin.com/v2/organizationAcls/(organization:{encoded organization URN},role:DIRECT_SPONSORED_CONTENT_POSTER,roleAssignee:{person URN})
Header: X-Restli-Protocol-Version: 2.0.0
{
"state": "REQUESTED",
"role": "DIRECT_SPONSORED_CONTENT_POSTER",
"roleAssignee": "urn:li:person:abCdEf",
"organization": "urn:li:organization:2414183"
}
Request Body Fields
Field | Description | Format | Required |
---|---|---|---|
role | The role to add. Only the value DIRECT_SPONSORED_CONTENT_POSTER is supported. | string | Yes |
state | The role state to add. Only the value REQUESTED is supported. | string | Yes |
roleAssignee | The person URN of the member being added. Must be in the format urn:li:person{id}. | string | Yes |
organization | The organizational entity for which access control information is being added. Must either be in the format urn:li:organization:{id} or urn:li:organizationBrand:{id} |
string | Yes |
A successful response returns a 204 OK status code.
Retrieve Organization Details
You can retrieve an organization's information by using Organization Lookup API.