{
  "openapi": "3.0.1",
  "info": {
    "title": "LinkedIn Decision-Maker Finder",
    "description": "Find the right LinkedIn decision-makers from names, company pages, people-search URLs, or exact profile URLs, then return confidence-scored matches with optional public profile and contact enrichment.",
    "version": "0.1",
    "x-build-id": "ZrdZuJgbL5ylvQ1lz"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/netdesignr~linkedin-decision-maker-finder/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-netdesignr-linkedin-decision-maker-finder",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/netdesignr~linkedin-decision-maker-finder/runs": {
      "post": {
        "operationId": "runs-sync-netdesignr-linkedin-decision-maker-finder",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/netdesignr~linkedin-decision-maker-finder/run-sync": {
      "post": {
        "operationId": "run-sync-netdesignr-linkedin-decision-maker-finder",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "mode": {
            "title": "Run Mode",
            "enum": [
              "match_only",
              "enrich_profiles",
              "enrich_profiles_and_contacts"
            ],
            "type": "string",
            "description": "Choose whether to stop at matching, enrich matched profiles, or enrich matched profiles plus public contact data. Match billing applies only to successful matches. Contact billing applies only when contact data is returned.",
            "default": "enrich_profiles"
          },
          "inputType": {
            "title": "Primary Input Type",
            "enum": [
              "auto",
              "search_query",
              "csv_rows",
              "people_search_url",
              "company_url",
              "profile_url"
            ],
            "type": "string",
            "description": "Optional hint for how you are supplying data. This does not create input by itself; add at least one source below.",
            "default": "auto"
          },
          "queries": {
            "title": "Search Queries",
            "type": "array",
            "description": "Free-text or Boolean-style people-search queries. One query per line. Good for broad discovery like founder fintech london or vp sales saas germany. Add at least one input source before running.",
            "items": {
              "type": "string"
            }
          },
          "rows": {
            "title": "Rows",
            "type": "array",
            "description": "Structured rows for CSV-like enrichment workflows. Recommended columns: id, name, company, title, location. This is the best option for CRM or Clay enrichment jobs. Add at least one usable row before running.",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "title": "Row ID",
                  "description": "Optional source row identifier used in outputs and billing tracking.",
                  "type": "string"
                },
                "name": {
                  "title": "Full Name",
                  "description": "Person name to match against public LinkedIn profiles.",
                  "type": "string"
                },
                "company": {
                  "title": "Company",
                  "description": "Company name used in discovery and confidence scoring.",
                  "type": "string"
                },
                "title": {
                  "title": "Job Title",
                  "description": "Optional role hint such as Founder, CEO, or VP Sales.",
                  "type": "string"
                },
                "query": {
                  "title": "Custom Query",
                  "description": "Optional row-level free-text query to use instead of name/company matching.",
                  "type": "string"
                },
                "location": {
                  "title": "Location",
                  "description": "Optional location hint used in query building and scoring.",
                  "type": "string"
                },
                "seniority": {
                  "title": "Seniority",
                  "description": "Optional seniority hint such as executive or director.",
                  "type": "string"
                },
                "industry": {
                  "title": "Industry",
                  "description": "Optional industry hint such as SaaS or fintech.",
                  "type": "string"
                },
                "companyUrl": {
                  "title": "LinkedIn Company URL",
                  "description": "Optional LinkedIn company page used for direct employee-card discovery.",
                  "type": "string"
                },
                "peopleSearchUrl": {
                  "title": "LinkedIn People Search URL",
                  "description": "Optional LinkedIn people search URL to convert into public discovery queries.",
                  "type": "string"
                },
                "linkedinProfileUrl": {
                  "title": "LinkedIn Profile URL",
                  "description": "Optional exact public LinkedIn profile URL for deterministic matching.",
                  "type": "string"
                },
                "currentTitleKeywords": {
                  "title": "Decision-Maker Title Keywords",
                  "description": "Optional row-level title keywords that override or extend the top-level decision-maker keywords.",
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "peopleSearchUrls": {
            "title": "LinkedIn People Search URLs",
            "type": "array",
            "description": "Public LinkedIn people-search URLs to convert into no-cookie discovery queries. Use this when you already have a LinkedIn people search and want export-ready matches. Add at least one URL before running.",
            "items": {
              "type": "string"
            }
          },
          "companyUrls": {
            "title": "LinkedIn Company URLs",
            "type": "array",
            "description": "Company LinkedIn URLs used to discover likely decision-makers from public search results. Best for founder, CEO, VP, or director discovery per account. Add at least one URL before running.",
            "items": {
              "type": "string"
            }
          },
          "linkedinProfileUrls": {
            "title": "LinkedIn Profile URLs",
            "type": "array",
            "description": "Exact public LinkedIn profile URLs. This is the most deterministic input style and is recommended for large-scale re-processing or known-profile enrichment workflows. Add at least one URL before running.",
            "items": {
              "type": "string"
            }
          },
          "maxResults": {
            "title": "Max Results",
            "minimum": 1,
            "maximum": 250,
            "type": "integer",
            "description": "Maximum matched outputs to produce across the run. This is a hard cap on returned matches.",
            "default": 25
          },
          "minConfidence": {
            "title": "Minimum Match Confidence",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Only return candidates at or above this score from 1-100. Raise this when you want fewer but safer matches.",
            "default": 55
          },
          "deduplicateResults": {
            "title": "Deduplicate Results",
            "type": "boolean",
            "description": "Remove duplicate LinkedIn profile URLs inside each input row's candidate set.",
            "default": true
          },
          "location": {
            "title": "Location Filter",
            "type": "string",
            "description": "Optional location text used in query building and confidence scoring."
          },
          "seniority": {
            "title": "Seniority Filter",
            "type": "string",
            "description": "Optional seniority hint such as executive, director, or manager."
          },
          "currentCompany": {
            "title": "Current Company Hint",
            "type": "string",
            "description": "Optional top-level company hint applied when row-level company is missing."
          },
          "currentTitleKeywords": {
            "title": "Decision-Maker Title Keywords",
            "type": "array",
            "description": "Optional title keywords used for company discovery and confidence scoring.",
            "items": {
              "type": "string"
            }
          },
          "industry": {
            "title": "Industry Filter",
            "type": "string",
            "description": "Optional industry hint such as SaaS, fintech, or biotech."
          },
          "companySize": {
            "title": "Company Size Hint",
            "type": "string",
            "description": "Optional company size hint kept for downstream workflow context."
          },
          "includeExperience": {
            "title": "Include Experience",
            "type": "boolean",
            "description": "Attempt to normalize public experience history when available.",
            "default": true
          },
          "includeEducation": {
            "title": "Include Education",
            "type": "boolean",
            "description": "Attempt to normalize public education history when available.",
            "default": true
          },
          "includeSkills": {
            "title": "Include Skills",
            "type": "boolean",
            "description": "Attempt to normalize visible public skills when available.",
            "default": true
          },
          "includeContacts": {
            "title": "Include Contacts",
            "type": "boolean",
            "description": "When enabled, look for public email and phone data on the company website. Contact enrichment is best effort and only billable when contact data is returned.",
            "default": false
          },
          "emptyRunPolicy": {
            "title": "Empty Run Policy",
            "enum": [
              "retry_then_fail",
              "retry_then_warn",
              "retry_then_succeed"
            ],
            "type": "string",
            "description": "Control how the actor exits when valid input is processed but no lead rows are emitted. Missing input still produces a no-charge diagnostic row.",
            "default": "retry_then_warn"
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}