Submit SpiderFacebookPage Job
/api/v1/jobs/spiderFacebookPage/submitOverview
SpiderFacebookPage extracts business information from Facebook pages including contact details, operating hours, ratings, and social links. Profile pictures are automatically stored in SpiderMedia.
Best For:
- Enriching leads with Facebook business data
- Extracting contact info (email, phone, address)
- Getting social proof (followers, likes, rating)
- Downloading and hosting profile pictures
Best For
- Extracting business contact information from Facebook
- Enriching Google Maps data with Facebook profiles
- Building comprehensive business directories
- Competitive analysis via follower/rating data
- Profile picture collection and hosting
Request Body
payloadobjectrequiredJob configuration payload
priorityintegerdefault: 5Job priority (0-10, higher = processed first).
Response
job_idstringUnique job identifier (UUID format).
typestringAlways spiderFacebookPage.
statusstringInitial status: queued.
created_atstringJob creation timestamp (ISO 8601).
messagestringConfirmation message.
Example Request
- cURL
- Python
- JavaScript
curl -X POST https://spideriq.ai/api/v1/jobs/spiderFacebookPage/submit \
-H "Authorization: Bearer <your_token>" \
-H "Content-Type: application/json" \
-d '{
"payload": {
"url": "https://www.facebook.com/McDonalds"
}
}'
import requests
url = "https://spideriq.ai/api/v1/jobs/spiderFacebookPage/submit"
headers = {
"Authorization": "Bearer <your_token>",
"Content-Type": "application/json"
}
data = {
"payload": {
"url": "https://www.facebook.com/McDonalds"
}
}
response = requests.post(url, headers=headers, json=data)
job = response.json()
print(f"Job ID: {job['job_id']}")
const response = await fetch(
'https://spideriq.ai/api/v1/jobs/spiderFacebookPage/submit',
{
method: 'POST',
headers: {
'Authorization': 'Bearer <your_token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
payload: {
url: 'https://www.facebook.com/McDonalds'
}
})
}
);
const job = await response.json();
console.log('Job ID:', job.job_id);
Example Response
{
"job_id": "ef89341d-1a55-401f-8eb0-ebce5b565f0a",
"type": "spiderFacebookPage",
"status": "queued",
"created_at": "2026-01-18T14:30:00.000000",
"message": "Job submitted successfully"
}
Results Structure
When the job completes, results include:
Business Information
dataobjectExtracted Facebook page data.
Metadata
metadataobjectProcessing metadata.
Complete Results Example
{
"success": true,
"job_id": "ef89341d-1a55-401f-8eb0-ebce5b565f0a",
"type": "spiderFacebookPage",
"status": "completed",
"processing_time_seconds": 18.5,
"data": {
"data": {
"name": "McDonald's",
"facebook_id": "50245567013",
"facebook_url": "https://www.facebook.com/McDonalds",
"profile_picture_url": "https://scontent.xx.fbcdn.net/...",
"profile_picture_stored": "https://media.spideriq.ai/client-cli_xxx/facebook-profiles/50245567013.jpg",
"email": null,
"phone": "(806) 445-0333",
"address": null,
"website": null,
"category": "Page · Burger Restaurant",
"followers": "82M followers",
"likes": null,
"rating": "32% recommend (38,574 Reviews)",
"business_hours": null,
"price_range": "Price Range · $",
"services": null,
"social_accounts": null,
"is_business_page": true
},
"metadata": {
"url": "https://www.facebook.com/McDonalds",
"proxy_used": true,
"profile_picture_stored": true
}
}
}
Data Extracted
| Field | Description | Example |
|---|---|---|
name | Page/business name | "McDonald's" |
facebook_id | Numeric page ID | "50245567013" |
phone | Contact phone | "(806) 445-0333" |
email | Business email | "contact@example.com" |
website | External website | "https://mcdonalds.com" |
address | Physical location | "123 Main St, City" |
category | Business category | "Burger Restaurant" |
followers | Follower count | "82M followers" |
rating | Rating with reviews | "32% recommend (38K Reviews)" |
price_range | Price level | "$", "$$", "$$$" |
business_hours | Operating hours | {"Monday": "9AM-9PM", ...} |
profile_picture_stored | Hosted image URL | SpiderMedia URL |
SpiderMedia Integration
Profile pictures are automatically uploaded to your client's SpiderMedia bucket:
- Original URL: Facebook CDN (may expire)
- Stored URL:
https://media.spideriq.ai/client-{client_id}/facebook-profiles/{facebook_id}.jpg
The stored URL is permanent and won't expire, making it suitable for long-term storage and display.
SpiderProxy Integration
SpiderFacebookPage uses mobile proxies from the SpiderProxy pool for IP rotation:
- Job submitted with proxy assignment from available pool
- Worker attempts scraping with assigned proxy
- If proxy fails, worker retries without proxy as fallback
metadata.proxy_usedindicates which method succeeded
Processing Time
| Scenario | Typical Time |
|---|---|
| Public business page | 10-20 seconds |
| With SpiderMedia upload | 15-25 seconds |
| Proxy fallback needed | 25-40 seconds |
Error Cases
Invalid URL
{
"detail": "Facebook page URL is required in payload"
}
Page Not Found / Private
{
"success": false,
"status": "failed",
"error": "Library exited with code 1"
}
Private Pages: Some Facebook pages have privacy settings that prevent data extraction. These will return an error with "Library exited with code 1". This commonly occurs with:
- Personal profiles (not business pages)
- Pages with restricted visibility
- Newly created pages
- Region-restricted pages
Limitations
- Public pages only: Private or restricted pages cannot be scraped
- Rate limiting: Facebook may block requests if too many jobs are submitted rapidly
- Data availability: Not all pages have all fields (email, phone, hours, etc.)
- Single URL: One Facebook page per job (no bulk submission)