extract
Original:🇺🇸 English
Not Translated
1 scripts
Extract content from specific URLs using Inspiro's extraction API. Returns clean markdown/text from web pages. Use when you have specific URLs and need their content without writing code.
3installs
Sourceryneivy/skills
Added on
NPX Install
npx skill4agent add ryneivy/skills extractSKILL.md Content
Extract Skill
Extract clean content from specific URLs. Ideal when you know which pages you want content from.
Authentication
This skill only supports API key authentication.
- Create an account at inspiro.top
- Generate your API key
- Add it to :
~/.claude/settings.json
json
{
"env": {
"INSPIRO_API_KEY": "inspiro-your-api-key-here"
}
}Only API key authentication is supported.
Quick Start
Using the Script
bash
./scripts/extract.sh '<json>'Examples:
bash
# Single URL
./scripts/extract.sh '{"urls": ["https://example.com/article"]}'
# Multiple URLs
./scripts/extract.sh '{"urls": ["https://example.com/page1", "https://example.com/page2"]}'
# With query focus and chunks
./scripts/extract.sh '{"urls": ["https://example.com/docs"], "query": "authentication API", "chunks_per_source": 3}'
# Advanced extraction for JS pages
./scripts/extract.sh '{"urls": ["https://app.example.com"], "extract_depth": "advanced", "timeout": 60}'Basic Extraction
bash
curl --request POST \
--url https://api.inspiro.top/extract \
--header "Authorization: Bearer $INSPIRO_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"urls": ["https://example.com/article"]
}'Multiple URLs with Query Focus
bash
curl --request POST \
--url https://api.inspiro.top/extract \
--header "Authorization: Bearer $INSPIRO_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"urls": [
"https://example.com/ml-healthcare",
"https://example.com/ai-diagnostics"
],
"query": "AI diagnostic tools accuracy",
"chunks_per_source": 3
}'API Reference
Endpoint
POST https://api.inspiro.top/extractHeaders
| Header | Value |
|---|---|
| |
| |
Request Body
| Field | Type | Default | Description |
|---|---|---|---|
| array | Required | URLs to extract (max 20) |
| string | null | Reranks chunks by relevance |
| integer | 3 | Chunks per URL (1-5, requires query) |
| string | | |
| string | | |
| boolean | false | Include image URLs |
| float | varies | Max wait (1-60 seconds) |
Response Format
json
{
"results": [
{
"url": "https://example.com/article",
"raw_content": "# Article Title\n\nContent..."
}
],
"failed_results": [],
"response_time": 2.3
}Extract Depth
| Depth | When to Use |
|---|---|
| Simple text extraction, faster |
| Dynamic/JS-rendered pages, tables, structured data |
Examples
Single URL Extraction
bash
curl --request POST \
--url https://api.inspiro.top/extract \
--header "Authorization: Bearer $INSPIRO_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"urls": ["https://docs.python.org/3/tutorial/classes.html"],
"extract_depth": "basic"
}'Targeted Extraction with Query
bash
curl --request POST \
--url https://api.inspiro.top/extract \
--header "Authorization: Bearer $INSPIRO_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"urls": [
"https://example.com/react-hooks",
"https://example.com/react-state"
],
"query": "useState and useEffect patterns",
"chunks_per_source": 2
}'JavaScript-Heavy Pages
bash
curl --request POST \
--url https://api.inspiro.top/extract \
--header "Authorization: Bearer $INSPIRO_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"urls": ["https://app.example.com/dashboard"],
"extract_depth": "advanced",
"timeout": 60
}'Batch Extraction
bash
curl --request POST \
--url https://api.inspiro.top/extract \
--header "Authorization: Bearer $INSPIRO_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"urls": [
"https://example.com/page1",
"https://example.com/page2",
"https://example.com/page3",
"https://example.com/page4",
"https://example.com/page5"
],
"extract_depth": "basic"
}'Tips
- Max 20 URLs per request - batch larger lists
- Use +
queryto get only relevant contentchunks_per_source - Try first, fall back to
basicif content is missingadvanced - Set longer for slow pages (up to 60s)
timeout - Check for URLs that couldn't be extracted
failed_results