> ## Documentation Index
> Fetch the complete documentation index at: https://docs.keyapi.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Get user videos

> Get videos published by a LinkedIn user

<div className="inline-flex items-center gap-2 px-4 py-2 bg-yellow-50 dark:bg-yellow-900/20 border border-yellow-200 dark:border-yellow-800 rounded-lg">
  <span className="text-base">🪙</span>
  <span className="text-sm font-medium text-yellow-900 dark:text-yellow-100"><span className="font-semibold">1 credit</span><span className="text-yellow-700 dark:text-yellow-300 ml-1">per request</span></span>
</div>

## Copy for AI

<div className="my-6 rounded-xl border border-gray-200 bg-gray-50 p-5 dark:border-gray-800 dark:bg-gray-900/40">
  <div className="min-w-0">
    <p className="text-base font-semibold text-gray-900 dark:text-gray-100">🤖 Why Code When AI Can Do It For You?</p>
    <p className="mt-1 text-sm text-gray-700 dark:text-gray-300">Stop writing code like it's 1970! Let AI do the heavy lifting - click the sparkles to copy a perfectly formatted prompt for ChatGPT, Claude, or your favorite AI assistant.</p>
  </div>

  <div className="mt-4">
    <button
      type="button"
      className="inline-flex items-center gap-2 rounded-md border border-emerald-300 bg-emerald-50 px-3 py-2 text-sm font-medium text-emerald-800 hover:bg-emerald-100 dark:border-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-100 dark:hover:bg-emerald-900/50"
      onClick={() => navigator.clipboard.writeText(`I want to make an API call to https://api.keyapi.ai/v1/linkedin/get_user_videos.

Please help me write code to make this API call and handle the response appropriately. Include error handling and best practices.

Here are the details:

Endpoint: GET https://api.keyapi.ai/v1/linkedin/get_user_videos

Description: Get videos published by a LinkedIn user

Required Headers:
--header 'Authorization: Bearer <YOUR_API_KEY>'

Parameters:
- urn (Required). Example: ACoAABCtiL8B26nfi3Nbpo_AM8ngg4LeClT1Wh8
- page (Optional): Page number, default is 1. Example: 1
- pagination_token (Optional): Pagination token, obtained from the previous response

Example Response:
{
"code": 0,
"message": "success",
"data": {
"pagination_token": "dXJuOmxpOmFjdGl2aXR5OjcyNjY4MTAzNjU0OTYxNzI1NDQtMTczMjU0MjU1MjU0Nw==",
"data": [
  {
    "id": "7335289137178005504",
    "url": "https://www.linkedin.com/feed/update/urn:li:activity:7335289137178005504",
    "duration": "2 minutes 54 seconds",
    "activity": {
      "num_likes": 479,
      "num_comments": 37,
      "reaction_counts": [
        {
          "count": 433,
          "type": "LIKE"
        },
        {
          "count": 18,
          "type": "EMPATHY"
        },
        {
          "count": 17,
          "type": "INTEREST"
        },
        {
          "count": 8,
          "type": "PRAISE"
        },
        {
          "count": 3,
          "type": "APPRECIATION"
        }
      ]
    },
    "thumbnail": [
      {
        "width": 640,
        "height": 360,
        "url": "https://media.licdn.com/dms/image/v2/D5605AQHTRcAufHzYBA/videocover-low/B56Zcuw4DIGoBg-/0/1748836273050?e=1773720000&v=beta&t=J7rkNPfMN27QFBKz9PjmloGbN7OufMDy5ChhdQiCgR0",
        "expires_at": 1773720000000
      },
      {
        "width": 1280,
        "height": 720,
        "url": "https://media.licdn.com/dms/image/v2/D5605AQHTRcAufHzYBA/videocover-high/B56Zcuw4DIGoBk-/0/1748836273060?e=1773720000&v=beta&t=YLc7AqQBcbcS0XrMm3m2OEZGKM1sA5j1u3SLvtH
... (truncated)`)}
    >
      <span>✨</span>
      <span>Copy for AI</span>
    </button>
  </div>
</div>


## OpenAPI

````yaml en/linkedin.openapi.json GET /v1/linkedin/get_user_videos
openapi: 3.0.1
info:
  title: LinkedIn API english documentation
  description: >-
    The english reference documentation of the LinkedIn API includes the
    interface's purpose, parameter description, response status, and sample
    structure.
  version: 1.0.0
servers:
  - url: https://api.keyapi.ai
    description: Production
security:
  - JWT Bearer: []
tags: []
paths:
  /v1/linkedin/get_user_videos:
    get:
      tags: []
      summary: Get user videos
      description: Get videos published by a LinkedIn user
      parameters:
        - name: urn
          in: query
          description: ''
          required: true
          example: ACoAABCtiL8B26nfi3Nbpo_AM8ngg4LeClT1Wh8
          schema:
            type: string
        - name: page
          in: query
          description: Page number, default is 1
          required: false
          example: 1
          schema:
            type: integer
        - name: pagination_token
          in: query
          description: Pagination token, obtained from the previous response
          required: false
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties: {}
              example:
                code: 0
                message: success
                data:
                  pagination_token: >-
                    dXJuOmxpOmFjdGl2aXR5OjcyNjY4MTAzNjU0OTYxNzI1NDQtMTczMjU0MjU1MjU0Nw==
                  data:
                    - id: '7335289137178005504'
                      url: >-
                        https://www.linkedin.com/feed/update/urn:li:activity:7335289137178005504
                      duration: 2 minutes 54 seconds
                      activity:
                        num_likes: 479
                        num_comments: 37
                        reaction_counts:
                          - count: 433
                            type: LIKE
                          - count: 18
                            type: EMPATHY
                          - count: 17
                            type: INTEREST
                          - count: 8
                            type: PRAISE
                          - count: 3
                            type: APPRECIATION
                      thumbnail:
                        - width: 640
                          height: 360
                          url: >-
                            https://media.licdn.com/dms/image/v2/D5605AQHTRcAufHzYBA/videocover-low/B56Zcuw4DIGoBg-/0/1748836273050?e=1773720000&v=beta&t=J7rkNPfMN27QFBKz9PjmloGbN7OufMDy5ChhdQiCgR0
                          expires_at: 1773720000000
                        - width: 1280
                          height: 720
                          url: >-
                            https://media.licdn.com/dms/image/v2/D5605AQHTRcAufHzYBA/videocover-high/B56Zcuw4DIGoBk-/0/1748836273060?e=1773720000&v=beta&t=YLc7AqQBcbcS0XrMm3m2OEZGKM1sA5j1u3SLvtHhcBA
                          expires_at: 1773720000000
                      created_at: 10mo ago
                    - id: '7266810365496172544'
                      url: >-
                        https://www.linkedin.com/feed/update/urn:li:activity:7266810365496172544
                      duration: 59 seconds
                      activity:
                        num_likes: 1071
                        num_comments: 35
                        reaction_counts:
                          - count: 983
                            type: LIKE
                          - count: 47
                            type: INTEREST
                          - count: 33
                            type: EMPATHY
                          - count: 6
                            type: APPRECIATION
                          - count: 1
                            type: ENTERTAINMENT
                          - count: 1
                            type: PRAISE
                      thumbnail:
                        - width: 401
                          height: 720
                          url: >-
                            https://media.licdn.com/dms/image/v2/D5605AQGE4sp4UlJu2g/feedshare-thumbnail_720_1280/feedshare-thumbnail_720_1280/0/1732542553524?e=1773720000&v=beta&t=Nd12rtmUPe8f5nCI4WBLLF6dWJMj8jGYVw8C7Q9SuwM
                          expires_at: 1773720000000
                      created_at: 1yr ago
                requestId: 1726cff3-2389-4a1d-b6c3-a67595305712
          headers: {}
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                example:
                  code: 400
                  data: null
                  message: 'Missing required parameter: handle'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                example:
                  code: 401
                  data: null
                  message: apiKey is null
        '402':
          description: Payment Required
          content:
            application/json:
              schema:
                type: object
                example:
                  code: 402
                  data: null
                  message: apiKey quota is not enough
        '429':
          description: Too Many Requests
          content:
            application/json:
              schema:
                type: object
                example:
                  code: 429
                  data: null
                  message: qps limit exceeded
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                example:
                  code: 500
                  data: null
                  message: Internal server error
      deprecated: false
      security:
        - JWT Bearer: []
      x-codeSamples:
        - lang: curl
          label: cURL
          source: |-
            curl --request GET \
              --url 'https://api.keyapi.ai/v1/linkedin/get_user_videos?urn=ACoAABCtiL8B26nfi3Nbpo_AM8ngg4LeClT1Wh8&page=1' \
              --header 'Authorization: Bearer <YOUR_API_KEY>'
        - lang: python
          label: Python
          source: |-
            import requests

            response = requests.get(
                'https://api.keyapi.ai/v1/linkedin/get_user_videos',
                params={"urn": "ACoAABCtiL8B26nfi3Nbpo_AM8ngg4LeClT1Wh8", "page": 1},
                headers={'Authorization': 'Bearer <YOUR_API_KEY>'}
            )
            print(response.json())
        - lang: javascript
          label: JavaScript
          source: >-
            const params = new URLSearchParams({"urn":
            "ACoAABCtiL8B26nfi3Nbpo_AM8ngg4LeClT1Wh8", "page": 1});


            const response = await
            fetch(`https://api.keyapi.ai/v1/linkedin/get_user_videos?${params}`,
            {
              method: 'GET',
              headers: { 'Authorization': 'Bearer <YOUR_API_KEY>' }
            });

            const data = await response.json();

            console.log(data);
components:
  securitySchemes:
    JWT Bearer:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: |-
        API key for authentication. Format: `sk_live_xxxxxxxxxxxxx`
        Get your API key from the [Dashboard](http://keyapi.ai/app/dashboard).

````