Endpoints de agente
Agente
POST
/
agent
Inicia una tarea de agente para la extracción de datos mediante agentes
curl --request POST \
--url https://api.firecrawl.dev/v2/agent \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"prompt": "<string>",
"urls": [
"<string>"
],
"schema": {},
"maxCredits": 123,
"strictConstrainToURLs": true,
"model": "spark-1-mini"
}
'import requests
url = "https://api.firecrawl.dev/v2/agent"
payload = {
"prompt": "<string>",
"urls": ["<string>"],
"schema": {},
"maxCredits": 123,
"strictConstrainToURLs": True,
"model": "spark-1-mini"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
prompt: '<string>',
urls: ['<string>'],
schema: {},
maxCredits: 123,
strictConstrainToURLs: true,
model: 'spark-1-mini'
})
};
fetch('https://api.firecrawl.dev/v2/agent', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.firecrawl.dev/v2/agent",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'prompt' => '<string>',
'urls' => [
'<string>'
],
'schema' => [
],
'maxCredits' => 123,
'strictConstrainToURLs' => true,
'model' => 'spark-1-mini'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.firecrawl.dev/v2/agent"
payload := strings.NewReader("{\n \"prompt\": \"<string>\",\n \"urls\": [\n \"<string>\"\n ],\n \"schema\": {},\n \"maxCredits\": 123,\n \"strictConstrainToURLs\": true,\n \"model\": \"spark-1-mini\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.firecrawl.dev/v2/agent")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"prompt\": \"<string>\",\n \"urls\": [\n \"<string>\"\n ],\n \"schema\": {},\n \"maxCredits\": 123,\n \"strictConstrainToURLs\": true,\n \"model\": \"spark-1-mini\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.firecrawl.dev/v2/agent")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"prompt\": \"<string>\",\n \"urls\": [\n \"<string>\"\n ],\n \"schema\": {},\n \"maxCredits\": 123,\n \"strictConstrainToURLs\": true,\n \"model\": \"spark-1-mini\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}{
"error": "Payment required to access this resource."
}{
"error": "Rate limit exceeded."
}Autorizaciones
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Cuerpo
application/json
El prompt que describe los datos que se van a extraer
Maximum string length:
10000Lista opcional de URLs a las que se limitará el agente
Esquema JSON opcional para estructurar los datos extraídos
Número máximo de créditos que puede consumir esta tarea del agente. Si no se especifica, el valor predeterminado es 2500.
Si es true, el agente solo visitará las URL proporcionadas en el array urls
El modelo que utilizará el agente para la tarea. spark-1-mini (predeterminado) es un 60 % más barato; spark-1-pro ofrece mayor precisión para tareas complejas.
Opciones disponibles:
spark-1-mini, spark-1-pro ⌘I
Inicia una tarea de agente para la extracción de datos mediante agentes
curl --request POST \
--url https://api.firecrawl.dev/v2/agent \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"prompt": "<string>",
"urls": [
"<string>"
],
"schema": {},
"maxCredits": 123,
"strictConstrainToURLs": true,
"model": "spark-1-mini"
}
'import requests
url = "https://api.firecrawl.dev/v2/agent"
payload = {
"prompt": "<string>",
"urls": ["<string>"],
"schema": {},
"maxCredits": 123,
"strictConstrainToURLs": True,
"model": "spark-1-mini"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
prompt: '<string>',
urls: ['<string>'],
schema: {},
maxCredits: 123,
strictConstrainToURLs: true,
model: 'spark-1-mini'
})
};
fetch('https://api.firecrawl.dev/v2/agent', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.firecrawl.dev/v2/agent",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'prompt' => '<string>',
'urls' => [
'<string>'
],
'schema' => [
],
'maxCredits' => 123,
'strictConstrainToURLs' => true,
'model' => 'spark-1-mini'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.firecrawl.dev/v2/agent"
payload := strings.NewReader("{\n \"prompt\": \"<string>\",\n \"urls\": [\n \"<string>\"\n ],\n \"schema\": {},\n \"maxCredits\": 123,\n \"strictConstrainToURLs\": true,\n \"model\": \"spark-1-mini\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.firecrawl.dev/v2/agent")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"prompt\": \"<string>\",\n \"urls\": [\n \"<string>\"\n ],\n \"schema\": {},\n \"maxCredits\": 123,\n \"strictConstrainToURLs\": true,\n \"model\": \"spark-1-mini\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.firecrawl.dev/v2/agent")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"prompt\": \"<string>\",\n \"urls\": [\n \"<string>\"\n ],\n \"schema\": {},\n \"maxCredits\": 123,\n \"strictConstrainToURLs\": true,\n \"model\": \"spark-1-mini\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}{
"error": "Payment required to access this resource."
}{
"error": "Rate limit exceeded."
}