Skip to main content

Get started in three steps

Start scraping LinkedIn profiles and companies with the WraithBytes API.

Step 1: Get your API key

Sign up for a WraithBytes account and generate your API key from the dashboard.
Keep your API key secure. Never commit it to version control or share it publicly.
Store your API key in environment variables:
export WRAITHBYTES_API_KEY="your_api_key_here"
Or in your .env file:
WRAITHBYTES_API_KEY=your_api_key_here
Add .env to your .gitignore to prevent accidentally committing your API key.

Step 2: Make your first request

Here’s how to scrape a LinkedIn profile using cURL:
curl -X POST https://api.wraithbytes.com/api/v1/scraper/linkedin/profile \
  -H "Authorization: Bearer $WRAITHBYTES_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://www.linkedin.com/in/username"
  }'
const response = await fetch('https://api.wraithbytes.com/api/v1/scraper/linkedin/profile', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${process.env.WRAITHBYTES_API_KEY}`,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    url: 'https://www.linkedin.com/in/username'
  })
});

const data = await response.json();
console.log(data);
import os
import requests

url = "https://api.wraithbytes.com/api/v1/scraper/linkedin/profile"
headers = {
    "Authorization": f"Bearer {os.getenv('WRAITHBYTES_API_KEY')}",
    "Content-Type": "application/json"
}
payload = {
    "url": "https://www.linkedin.com/in/username"
}

response = requests.post(url, json=payload, headers=headers)
data = response.json()
print(data)
package main

import (
    "bytes"
    "encoding/json"
    "fmt"
    "io"
    "net/http"
    "os"
)

func main() {
    url := "https://api.wraithbytes.com/api/v1/scraper/linkedin/profile"

    payload := map[string]string{
        "url": "https://www.linkedin.com/in/username",
    }

    jsonData, _ := json.Marshal(payload)

    req, _ := http.NewRequest("POST", url, bytes.NewBuffer(jsonData))
    req.Header.Set("Authorization", "Bearer "+os.Getenv("WRAITHBYTES_API_KEY"))
    req.Header.Set("Content-Type", "application/json")

    client := &http.Client{}
    resp, _ := client.Do(req)
    defer resp.Body.Close()

    body, _ := io.ReadAll(resp.Body)
    fmt.Println(string(body))
}

Step 3: Handle the response

The API returns structured JSON data. Here’s an example response:
{
  "id": 1,
  "url": "https://www.linkedin.com/in/username",
  "name": "John Doe",
  "headline": "Senior Software Engineer at Tech Company",
  "location": "San Francisco, CA",
  "about": "Passionate software engineer...",
  "experience": [...],
  "education": [...],
  "skills": ["Python", "Go", "JavaScript"],
  "contact_info": {
    "email": "[email protected]"
  },
  "scraped_at": "2025-01-10T12:00:00Z"
}
Check the API Reference for detailed response schemas.

Next steps

Now that you’ve made your first request, explore more capabilities:

Common use cases

Build a pipeline to scrape LinkedIn profiles of potential leads and enrich your CRM data.
Analyze company information, employee counts, and industry trends.
Find and analyze candidates based on their LinkedIn profiles and experience.
Track competitors’ company pages and employee growth over time.