LinkedIn Account Management API

APIs to create and manage ad accounts

Operations 4

POST /adAccounts LinkedIn Create Test Ad Account #
GET /adAccounts LinkedIn Search Ad Accounts by Type #
GET /adAccounts/{SponsoredAccountId} LinkedIn Fetch Ad Account by Id #
POST /adAccounts/{SponsoredAccountId} LinkedIn Update Ad Account Name #

Documentation

📖
Documentation
https://learn.microsoft.com/en-us/linkedin/marketing/
📖
GettingStarted
https://learn.microsoft.com/en-us/linkedin/marketing/getting-started
📖
Documentation
https://learn.microsoft.com/en-us/linkedin/learning/
📖
GettingStarted
https://learn.microsoft.com/en-us/linkedin/learning/getting-started
📖
Documentation
https://learn.microsoft.com/en-us/linkedin/learning/getting-started/terminology
📖
Documentation
https://learn.microsoft.com/en-us/linkedin/learning/integrations/xapi
📖
APIReference
https://learn.microsoft.com/en-us/linkedin/learning/reporting/reporting-docs/reporting-api
📖
Documentation
https://learn.microsoft.com/en-us/linkedin/talent/
📖
GettingStarted
https://learn.microsoft.com/en-us/linkedin/talent/getting-started
📖
Documentation
https://learn.microsoft.com/en-us/linkedin/talent/versioning
📖
Documentation
https://learn.microsoft.com/en-us/linkedin/compliance/
📖
GettingStarted
https://learn.microsoft.com/en-us/linkedin/compliance/getting-started
📖
Documentation
https://learn.microsoft.com/en-us/linkedin/compliance/compliance-api/overview
📖
Documentation
https://learn.microsoft.com/en-us/linkedin/sales/
📖
APIReference
https://learn.microsoft.com/en-us/linkedin/sales/display-services/
📖
APIReference
https://learn.microsoft.com/en-us/linkedin/sales/analytics-services/
📖
APIReference
https://learn.microsoft.com/en-us/linkedin/sales/sync-services/
📖
Documentation
https://learn.microsoft.com/en-us/linkedin/dma/
📖
Documentation
https://learn.microsoft.com/en-us/linkedin/dma/member-data-portability/
📖
Documentation
https://learn.microsoft.com/en-us/linkedin/dma/pages-data-portability-overview
📖
Documentation
https://learn.microsoft.com/en-us/linkedin/dma/transparency/advertiser-transparency

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/linkedin-account-management-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

linkedin-account-management-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: LinkedIn Marketing Campaign Management Account Management API
  description: 'Campaign Manager is LinkedIn''s online tool for creating and managing ad accounts and campaigns. This API provides capabilities for account management, campaign group management, campaign management, creative management, ad targeting, and forecasting.

    You must apply for access to the Marketing Developer Platform to use these APIs.'
  version: 1.0.0
  contact:
    name: LinkedIn Marketing API Support
    url: https://developer.linkedin.com/product-catalog/marketing/campaign-management
servers:
- url: https://api.linkedin.com/rest
  description: LinkedIn REST API Server
security:
- OAuth2Auth:
  - rw_ads
tags:
- name: Account Management
  description: APIs to create and manage ad accounts
paths:
  /adAccounts:
    post:
      tags:
      - Account Management
      summary: LinkedIn Create Test Ad Account
      description: Create a new ad account. Set test flag to true for test accounts.
      operationId: createAdAccount
      x-microcks-operation:
        dispatcher: FALLBACK
        dispatcherRules: ''
      parameters:
      - name: LinkedIn-Version
        in: header
        required: true
        schema:
          type: string
        example: '202401'
      - name: X-Restli-Protocol-Version
        in: header
        required: true
        schema:
          type: string
        example: 2.0.0
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdAccountCreateRequest'
            examples:
              CreateTestAccount:
                $ref: '#/components/examples/AdAccountCreateExample'
      responses:
        '201':
          description: Ad account created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdAccount'
              examples:
                SuccessResponse:
                  value:
                    id: 123456
                    name: XYZ Company
                    currency: USD
                    type: BUSINESS
                    status: ACTIVE
                    reference: urn:li:organization:12345678
                    test: true
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    get:
      tags:
      - Account Management
      summary: LinkedIn Search Ad Accounts by Type
      description: Search for ad accounts by ID, name, reference, type, or status.
      operationId: searchAdAccounts
      x-microcks-operation:
        dispatcher: FALLBACK
        dispatcherRules: ''
      parameters:
      - name: LinkedIn-Version
        in: header
        required: true
        schema:
          type: string
        example: '202401'
      - name: X-Restli-Protocol-Version
        in: header
        required: true
        schema:
          type: string
        example: 2.0.0
      - name: q
        in: query
        required: true
        schema:
          type: string
          enum:
          - search
        example: search
      - name: search
        in: query
        required: false
        schema:
          type: string
        description: Search criteria
        example: (type:(values:List(BUSINESS)))
      responses:
        '200':
          description: Successfully retrieved ad accounts
          content:
            application/json:
              schema:
                type: object
                properties:
                  elements:
                    type: array
                    items:
                      $ref: '#/components/schemas/AdAccount'
                  paging:
                    $ref: '#/components/schemas/Paging'
              examples:
                SuccessResponse:
                  value:
                    elements:
                    - id: 123456
                      name: XYZ Company
                      currency: USD
                      type: BUSINESS
                      status: ACTIVE
                      reference: urn:li:organization:12345678
                      test: false
                    paging:
                      start: 0
                      count: 10
                      total: 1
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /adAccounts/{SponsoredAccountId}:
    get:
      tags:
      - Account Management
      summary: LinkedIn Fetch Ad Account by Id
      description: Retrieve an ad account by its ID.
      operationId: getAdAccountById
      x-microcks-operation:
        dispatcher: FALLBACK
        dispatcherRules: ''
      parameters:
      - name: LinkedIn-Version
        in: header
        required: true
        schema:
          type: string
        example: '202401'
      - name: X-Restli-Protocol-Version
        in: header
        required: true
        schema:
          type: string
        example: 2.0.0
      - name: SponsoredAccountId
        in: path
        required: true
        schema:
          type: string
        example: '123456'
      responses:
        '200':
          description: Successfully retrieved ad account
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdAccount'
              examples:
                SuccessResponse:
                  value:
                    id: 123456
                    name: XYZ Company
                    currency: USD
                    type: BUSINESS
                    status: ACTIVE
                    reference: urn:li:organization:12345678
                    test: false
        '404':
          description: Account not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    post:
      tags:
      - Account Management
      summary: LinkedIn Update Ad Account Name
      description: Update an ad account using partial update.
      operationId: updateAdAccount
      x-microcks-operation:
        dispatcher: FALLBACK
        dispatcherRules: ''
      parameters:
      - name: LinkedIn-Version
        in: header
        required: true
        schema:
          type: string
        example: '202401'
      - name: X-Restli-Protocol-Version
        in: header
        required: true
        schema:
          type: string
        example: 2.0.0
      - name: SponsoredAccountId
        in: path
        required: true
        schema:
          type: string
        example: '123456'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                patch:
                  type: object
                  properties:
                    $set:
                      type: object
                      properties:
                        name:
                          type: string
            examples:
              UpdateName:
                value:
                  patch:
                    $set:
                      name: Updated Ad Account name
      responses:
        '200':
          description: Ad account updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdAccount'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    AdAccountCreateRequest:
      type: object
      properties:
        currency:
          type: string
          example: USD
        name:
          type: string
          example: XYZ Company
        notifiedOnCampaignOptimization:
          type: boolean
          example: true
        notifiedOnCreativeApproval:
          type: boolean
          example: true
        notifiedOnCreativeRejection:
          type: boolean
          example: true
        notifiedOnEndOfCampaign:
          type: boolean
          example: true
        reference:
          type: string
          example: urn:li:organization:12345678
        type:
          type: string
          enum:
          - BUSINESS
          - ENTERPRISE
          example: BUSINESS
        test:
          type: boolean
          example: true
      required:
      - currency
      - name
      - reference
      - type
    ErrorResponse:
      type: object
      properties:
        status:
          type: integer
          example: 400
        message:
          type: string
          example: Invalid request parameters
        code:
          type: string
          example: INVALID_PARAMS
    Paging:
      type: object
      properties:
        start:
          type: integer
          example: 0
        count:
          type: integer
          example: 10
        total:
          type: integer
          example: 100
        links:
          type: array
          items:
            type: string
    AdAccount:
      type: object
      properties:
        id:
          type: integer
          format: int64
          description: Unique identifier
          example: 123456
        name:
          type: string
          description: Display name
          example: XYZ Company
        currency:
          type: string
          description: Account currency
          example: USD
        type:
          type: string
          enum:
          - BUSINESS
          - ENTERPRISE
          description: Account type
          example: BUSINESS
        status:
          type: string
          enum:
          - ACTIVE
          - CANCELLED
          - DRAFT
          - PENDING_DELETION
          - REMOVED
          description: Account status
          example: ACTIVE
        reference:
          type: string
          description: Organization URN
          example: urn:li:organization:12345678
        test:
          type: boolean
          description: Whether this is a test account
          example: true
        notifiedOnCampaignOptimization:
          type: boolean
          example: true
        notifiedOnCreativeApproval:
          type: boolean
          example: true
        notifiedOnCreativeRejection:
          type: boolean
          example: true
        notifiedOnEndOfCampaign:
          type: boolean
          example: true
  examples:
    AdAccountCreateExample:
      summary: Create test ad account
      value:
        currency: USD
        name: XYZ Company
        notifiedOnCampaignOptimization: true
        notifiedOnCreativeApproval: true
        notifiedOnCreativeRejection: true
        notifiedOnEndOfCampaign: true
        reference: urn:li:organization:12345678
        type: BUSINESS
        test: true
  securitySchemes:
    OAuth2Auth:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://www.linkedin.com/oauth/v2/authorization
          tokenUrl: https://www.linkedin.com/oauth/v2/accessToken
          scopes:
            rw_ads: Read and write advertising data
            r_ads: Read advertising data