Generate alpha with web-sourced alternative data. Extract market signals, sentiment, and competitive intelligence from across the internet.
Everyone has access to the same financial data feeds. To generate alpha, you need unique data sources - web-based signals that reveal market dynamics before they show up in traditional metrics.
Building and maintaining alternative data pipelines is expensive and complex. You need a reliable way to extract insights from the web at scale.
Web data that drives investment insights
Track hiring, job postings, executive changes, and expansion indicators.
Monitor pricing, inventory levels, and product launches.
Extract sentiment from reviews, forums, and news sources.
Monitor press releases, news articles, and regulatory filings.
Extract alternative data signals
curl -G "https://api.webscraping.ai/ai/fields" \
--data-urlencode "api_key=YOUR_API_KEY" \
--data-urlencode "url=https://target-company.com/careers" \
--data-urlencode "fields[total_openings]=Total number of open positions" \
--data-urlencode "fields[departments_hiring]=Which departments are hiring" \
--data-urlencode "fields[engineering_roles]=Number of engineering positions" \
--data-urlencode "fields[sales_roles]=Number of sales positions" \
--data-urlencode "fields[locations]=Locations with open positions" \
--data-urlencode "fields[recent_postings]=Jobs posted in the last 30 days"
# Response:
# {
# "total_openings": 47,
# "departments_hiring": ["Engineering", "Sales", "Marketing", "Operations"],
# "engineering_roles": 23,
# "sales_roles": 12,
# "locations": ["San Francisco", "New York", "London", "Remote"],
# "recent_postings": 15
# }
# pip install webscraping_ai
# https://pypi.org/project/webscraping-ai/
from webscraping_ai import Client
client = Client(api_key="YOUR_API_KEY")
result = client.fields(
"https://target-company.com/careers",
fields={
"total_openings": "Total number of open positions",
"departments_hiring": "Which departments are hiring",
"engineering_roles": "Number of engineering positions",
"sales_roles": "Number of sales positions",
"locations": "Locations with open positions",
"recent_postings": "Jobs posted in the last 30 days",
},
)
print(result)
# Response:
# {
# "total_openings": 47,
# "departments_hiring": ["Engineering", "Sales", "Marketing", "Operations"],
# "engineering_roles": 23,
# "sales_roles": 12,
# "locations": ["San Francisco", "New York", "London", "Remote"],
# "recent_postings": 15
# }
// npm install webscraping-ai
// https://www.npmjs.com/package/webscraping-ai
import { WebScrapingAI } from 'webscraping-ai';
const client = new WebScrapingAI({ apiKey: 'YOUR_API_KEY' });
const result = await client.fields({
url: 'https://target-company.com/careers',
fields: {
total_openings: 'Total number of open positions',
departments_hiring: 'Which departments are hiring',
engineering_roles: 'Number of engineering positions',
sales_roles: 'Number of sales positions',
locations: 'Locations with open positions',
recent_postings: 'Jobs posted in the last 30 days',
},
});
console.log(result);
// Response:
// {
// "total_openings": 47,
// "departments_hiring": ["Engineering", "Sales", "Marketing", "Operations"],
// "engineering_roles": 23,
// "sales_roles": 12,
// "locations": ["San Francisco", "New York", "London", "Remote"],
// "recent_postings": 15
// }
<?php
// composer require webscraping-ai/webscraping-ai-php
// https://packagist.org/packages/webscraping-ai/webscraping-ai-php
require 'vendor/autoload.php';
use WebScrapingAI\Client;
$client = new Client('YOUR_API_KEY');
$result = $client->fields('https://target-company.com/careers', [
'total_openings' => 'Total number of open positions',
'departments_hiring' => 'Which departments are hiring',
'engineering_roles' => 'Number of engineering positions',
'sales_roles' => 'Number of sales positions',
'locations' => 'Locations with open positions',
'recent_postings' => 'Jobs posted in the last 30 days',
]);
print_r($result);
// Response:
// {
// "total_openings": 47,
// "departments_hiring": ["Engineering", "Sales", "Marketing", "Operations"],
// "engineering_roles": 23,
// "sales_roles": 12,
// "locations": ["San Francisco", "New York", "London", "Remote"],
// "recent_postings": 15
// }
# gem install webscraping_ai
# https://rubygems.org/gems/webscraping_ai
require 'webscraping_ai'
client = WebScrapingAI::Client.new(api_key: 'YOUR_API_KEY')
result = client.fields(
'https://target-company.com/careers',
fields: {
total_openings: 'Total number of open positions',
departments_hiring: 'Which departments are hiring',
engineering_roles: 'Number of engineering positions',
sales_roles: 'Number of sales positions',
locations: 'Locations with open positions',
recent_postings: 'Jobs posted in the last 30 days',
}
)
puts result.inspect
# Response:
# {
# "total_openings": 47,
# "departments_hiring": ["Engineering", "Sales", "Marketing", "Operations"],
# "engineering_roles": 23,
# "sales_roles": 12,
# "locations": ["San Francisco", "New York", "London", "Remote"],
# "recent_postings": 15
# }
// go get github.com/webscraping-ai/webscraping-ai-go/v4
// https://pkg.go.dev/github.com/webscraping-ai/webscraping-ai-go/v4
package main
import (
"context"
"fmt"
webscrapingai "github.com/webscraping-ai/webscraping-ai-go/v4"
)
func main() {
client, _ := webscrapingai.NewClient(&webscrapingai.Config{APIKey: "YOUR_API_KEY"})
result, _ := client.Fields(context.Background(), &webscrapingai.FieldsOptions{
URL: "https://target-company.com/careers",
Fields: map[string]string{
"total_openings": "Total number of open positions",
"departments_hiring": "Which departments are hiring",
"engineering_roles": "Number of engineering positions",
"sales_roles": "Number of sales positions",
"locations": "Locations with open positions",
"recent_postings": "Jobs posted in the last 30 days",
},
})
fmt.Println(result.Result)
}
// Response:
// {
// "total_openings": 47,
// "departments_hiring": ["Engineering", "Sales", "Marketing", "Operations"],
// "engineering_roles": 23,
// "sales_roles": 12,
// "locations": ["San Francisco", "New York", "London", "Remote"],
// "recent_postings": 15
// }
// Maven: ai.webscraping:webscraping-ai:4.0.0
// https://central.sonatype.com/artifact/ai.webscraping/webscraping-ai
import ai.webscraping.Client;
import ai.webscraping.Config;
import ai.webscraping.option.FieldsOptions;
import ai.webscraping.result.FieldsResult;
Client client = new Client(Config.builder().apiKey("YOUR_API_KEY").build());
FieldsResult result = client.fields(FieldsOptions.builder()
.url("https://target-company.com/careers")
.addField("total_openings", "Total number of open positions")
.addField("departments_hiring", "Which departments are hiring")
.addField("engineering_roles", "Number of engineering positions")
.addField("sales_roles", "Number of sales positions")
.addField("locations", "Locations with open positions")
.addField("recent_postings", "Jobs posted in the last 30 days")
.build());
System.out.println(result.getResult());
// Response:
// {
// "total_openings": 47,
// "departments_hiring": ["Engineering", "Sales", "Marketing", "Operations"],
// "engineering_roles": 23,
// "sales_roles": 12,
// "locations": ["San Francisco", "New York", "London", "Remote"],
// "recent_postings": 15
// }
// dotnet add package WebScrapingAI
// https://www.nuget.org/packages/WebScrapingAI
using WebScrapingAI;
var client = new WebScrapingAIClient(new WebScrapingAIClientOptions { ApiKey = "YOUR_API_KEY" });
var result = await client.FieldsAsync(new FieldsRequest {
Url = "https://target-company.com/careers",
Fields = new Dictionary<string, string> {
["total_openings"] = "Total number of open positions",
["departments_hiring"] = "Which departments are hiring",
["engineering_roles"] = "Number of engineering positions",
["sales_roles"] = "Number of sales positions",
["locations"] = "Locations with open positions",
["recent_postings"] = "Jobs posted in the last 30 days",
},
});
Console.WriteLine(result.Result);
// Response:
// {
// "total_openings": 47,
// "departments_hiring": ["Engineering", "Sales", "Marketing", "Operations"],
// "engineering_roles": 23,
// "sales_roles": 12,
// "locations": ["San Francisco", "New York", "London", "Remote"],
// "recent_postings": 15
// }
curl -G "https://api.webscraping.ai/ai/question" \
--data-urlencode "api_key=YOUR_API_KEY" \
--data-urlencode "url=https://target-company.com/press" \
--data-urlencode "question=What are the most recent announcements? Are there any executive changes, partnerships, or product launches mentioned?"
# pip install webscraping_ai
# https://pypi.org/project/webscraping-ai/
from webscraping_ai import Client
client = Client(api_key="YOUR_API_KEY")
answer = client.question(
"https://target-company.com/press",
question="What are the most recent announcements? Are there any executive changes, partnerships, or product launches mentioned?",
)
print(answer)
// npm install webscraping-ai
// https://www.npmjs.com/package/webscraping-ai
import { WebScrapingAI } from 'webscraping-ai';
const client = new WebScrapingAI({ apiKey: 'YOUR_API_KEY' });
const answer = await client.question({
url: 'https://target-company.com/press',
question: 'What are the most recent announcements? Are there any executive changes, partnerships, or product launches mentioned?',
});
console.log(answer);
<?php
// composer require webscraping-ai/webscraping-ai-php
// https://packagist.org/packages/webscraping-ai/webscraping-ai-php
require 'vendor/autoload.php';
use WebScrapingAI\Client;
$client = new Client('YOUR_API_KEY');
$answer = $client->question(
'https://target-company.com/press',
'What are the most recent announcements? Are there any executive changes, partnerships, or product launches mentioned?',
);
echo $answer;
# gem install webscraping_ai
# https://rubygems.org/gems/webscraping_ai
require 'webscraping_ai'
client = WebScrapingAI::Client.new(api_key: 'YOUR_API_KEY')
answer = client.question(
'https://target-company.com/press',
question: 'What are the most recent announcements? Are there any executive changes, partnerships, or product launches mentioned?'
)
puts answer
// go get github.com/webscraping-ai/webscraping-ai-go/v4
// https://pkg.go.dev/github.com/webscraping-ai/webscraping-ai-go/v4
package main
import (
"context"
"fmt"
webscrapingai "github.com/webscraping-ai/webscraping-ai-go/v4"
)
func main() {
client, _ := webscrapingai.NewClient(&webscrapingai.Config{APIKey: "YOUR_API_KEY"})
answer, _ := client.Question(context.Background(), &webscrapingai.QuestionOptions{
URL: "https://target-company.com/press",
Question: "What are the most recent announcements? Are there any executive changes, partnerships, or product launches mentioned?",
})
fmt.Println(answer)
}
// Maven: ai.webscraping:webscraping-ai:4.0.0
// https://central.sonatype.com/artifact/ai.webscraping/webscraping-ai
import ai.webscraping.Client;
import ai.webscraping.Config;
import ai.webscraping.option.QuestionOptions;
Client client = new Client(Config.builder().apiKey("YOUR_API_KEY").build());
String answer = client.question(QuestionOptions.builder()
.url("https://target-company.com/press")
.question("What are the most recent announcements? Are there any executive changes, partnerships, or product launches mentioned?")
.build());
System.out.println(answer);
// dotnet add package WebScrapingAI
// https://www.nuget.org/packages/WebScrapingAI
using WebScrapingAI;
var client = new WebScrapingAIClient(new WebScrapingAIClientOptions { ApiKey = "YOUR_API_KEY" });
var answer = await client.QuestionAsync(new QuestionRequest {
Url = "https://target-company.com/press",
Question = "What are the most recent announcements? Are there any executive changes, partnerships, or product launches mentioned?",
});
Console.WriteLine(answer);
Track hiring velocity as a growth indicator
Monitor competitor and market pricing
Estimate consumer interest and demand
Track news flow and market sentiment
More data collection solutions
Get started with 1,000 free API credits. No credit card required.