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

# LinkedIn Job Search

> Collect normalized public linkedin job search data.

# LinkedIn Job Search

```json theme={"system"}
{
  "location": "Seattle",
  "keyword": "Python",
  "country": "US",
  "results_limit": 20
}
```

## Result Fields

Task results use the stable SocQ fields below. Source-specific field names and formats are normalized without inferring or enriching values that the source did not provide. To request a smaller field set, use `fields` for MCP queries, `_result_fields` for typed tools, or `--result-fields` in the CLI. Declared fields remain present when their value is `null`.

| Field                | Type      | Nullable | Description                                                              |
| -------------------- | --------- | -------- | ------------------------------------------------------------------------ |
| `id`                 | `string`  | Yes      | Unique identifier for this result item.                                  |
| `platform`           | `string`  | No       | Platform the result belongs to, such as `instagram` or `linkedin`.       |
| `resource`           | `string`  | No       | SocQ resource represented by the result, such as `videos` or `comments`. |
| `type`               | `string`  | No       | Category of the result item, such as `video`, `post`, or `comment`.      |
| `url`                | `string`  | Yes      | Public URL of the result item when available.                            |
| `published_at`       | `string`  | Yes      | Time the source item was published, in ISO 8601 format when available.   |
| `collected_at`       | `string`  | No       | Time SocQ collected or processed this result, in ISO 8601 format.        |
| `title`              | `string`  | Yes      | Job title.                                                               |
| `company`            | `object`  | Yes      | Company associated with the job.                                         |
| `company.id`         | `string`  | Yes      | Unique identifier of the company.                                        |
| `company.name`       | `string`  | Yes      | Display name of the company.                                             |
| `company.url`        | `string`  | Yes      | Public URL of the company when available.                                |
| `company.logo_url`   | `string`  | Yes      | URL of the company or advertiser logo.                                   |
| `location`           | `object`  | Yes      | Geographic location associated with the result.                          |
| `location.name`      | `string`  | Yes      | Human-readable location name.                                            |
| `location.city`      | `string`  | Yes      | City name.                                                               |
| `location.region`    | `string`  | Yes      | Region, state, or province name.                                         |
| `location.country`   | `string`  | Yes      | Country or territory name or code.                                       |
| `location.latitude`  | `number`  | Yes      | Latitude in decimal degrees.                                             |
| `location.longitude` | `number`  | Yes      | Longitude in decimal degrees.                                            |
| `text`               | `string`  | Yes      | Job description.                                                         |
| `employment_type`    | `string`  | Yes      | Employment type, such as full-time, part-time, or contract.              |
| `experience_level`   | `string`  | Yes      | Experience or seniority level requested for the job.                     |
| `is_remote`          | `boolean` | Yes      | Whether the job is marked as remote.                                     |
| `salary`             | `object`  | Yes      | Compensation information reported for the job.                           |
| `salary.amount`      | `number`  | Yes      | Numeric monetary amount.                                                 |
| `salary.currency`    | `string`  | Yes      | Currency code or symbol reported for the monetary value.                 |
| `salary.formatted`   | `string`  | Yes      | Human-readable price or salary text.                                     |
| `expires_at`         | `string`  | Yes      | Time the job or listing expires, in ISO 8601 format when available.      |

## Completed Task Response

```json theme={"system"}
{
  "code": 200,
  "data": {
    "task_id": "KH66AAF39JDV50DF",
    "status": "succeeded",
    "public_id": "linkedin/search-jobs",
    "result_count": 1,
    "credits_amount": 0.5,
    "results": {
      "limit": 50,
      "next_cursor": null,
      "has_more": false,
      "schema_id": "job",
      "schema_version": "1.0",
      "items": [
        {
          "id": "4378399183",
          "platform": "linkedin",
          "resource": "search-jobs",
          "type": "job",
          "url": "https://www.linkedin.com/jobs/view/python-automation-developer-onsite-at-veridian-tech-solutions-inc-4378399183",
          "published_at": null,
          "collected_at": "2026-08-11T03:03:36.519621Z",
          "title": "Python Automation Developer (Onsite)",
          "company": null,
          "location": null,
          "text": "Python Automation Developer in Renton, WA / Everett, WA.",
          "employment_type": null,
          "experience_level": null,
          "is_remote": null,
          "salary": null,
          "expires_at": null
        }
      ]
    }
  }
}
```

## Use with MCP and CLI

| Interface   | Value                                                  |
| ----------- | ------------------------------------------------------ |
| REST        | `POST /v1/linkedin/search-jobs`                        |
| Compact MCP | `socq_execute` with `endpoint: "linkedin/search-jobs"` |
| Typed MCP   | `socq_linkedin_search_jobs`                            |
| CLI         | `socq linkedin search-jobs`                            |

The endpoint uses the asynchronous task flow and returns a task\_id. Poll the task endpoint to read normalized results.


## OpenAPI

````yaml api-manual/agent-api/agent-api.json POST /v1/linkedin/search-jobs
openapi: 3.1.0
info:
  title: SocQ Agent API
  version: v1-c051f5df2885
  description: Asynchronous social data API generated from the SocQ Capability Registry.
servers:
  - url: https://api.socq.ai
security: []
paths:
  /v1/linkedin/search-jobs:
    post:
      tags:
        - linkedin
      summary: Get LinkedIn Search Jobs
      description: Fetch normalized search jobs data from LinkedIn.
      operationId: socq_linkedin_search_jobs
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $schema: https://json-schema.org/draft/2020-12/schema
              type: object
              additionalProperties: false
              properties:
                company:
                  type: string
                  minLength: 1
                country:
                  type: string
                  minLength: 1
                experience_level:
                  type: string
                  minLength: 1
                job_type:
                  type: string
                  minLength: 1
                jobs_to_not_include:
                  type: array
                  items:
                    type: string
                    minLength: 1
                keyword:
                  type: string
                  minLength: 1
                location:
                  type: string
                  minLength: 1
                location_radius:
                  type: string
                  minLength: 1
                remote:
                  type: string
                  minLength: 1
                results_limit:
                  type: integer
                  minimum: 1
                  maximum: 2000
                  default: 100
                selective_search:
                  type: boolean
                time_range:
                  type: string
                  minLength: 1
              required:
                - location
      responses:
        '200':
          description: Task accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentSubmitResponse'
      security:
        - bearerAuth: []
        - apiKeyAuth: []
components:
  schemas:
    AgentSubmitResponse:
      type: object
      properties:
        code:
          type: integer
          const: 200
        data:
          type: object
          properties:
            task_id:
              type: string
            status:
              type: string
            created_time:
              type:
                - string
                - 'null'
            idempotent_replay:
              type: boolean
          required:
            - task_id
            - status
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````