Skip to content

Create output config

POST
/api/v1/integrations/outputs
Code sample: cURL
curl -X POST 'https://dashboard.justcrawl.io/api/v1/integrations/outputs' \
-H 'Authorization: Bearer $JUSTCRAWL_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"name":"Webhook to data team","outputType":"webhook","credentials":{"hmacSecret":"<32-byte-secret>"},"destination":"https://data.example.com/justcrawl-events"}'

Provisions a new downstream output destination. Two outputType paths: s3 writes job results to a customer-owned bucket (requires credentials.accessKeyId + secretAccessKey + region and a destination bucket name); webhook POSTs results to a customer URL (requires credentials.hmacSecret for signature verification, and the destination must be a public URL — SSRF defense blocks localhost / private IPs / .internal / .local hostnames / the AWS metadata IP). Credentials are AES-256-GCM encrypted at rest. The system-managed internal outputType is provisioned automatically per-org by migration V096 and cannot be created via this endpoint. Requires the org:manage permission.

Media type application/json
object
name
required
string
outputType
required
string
Allowed values: s3 webhook
credentials
required

For s3, requires accessKeyId + secretAccessKey + region. For webhook, requires hmacSecret. Encrypted at rest.

object
destination
required

For s3, the bucket name. For webhook, the public POST URL. SSRF-protected on submit.

string

Created output configuration.

Media type application/json
object
id
string format: uuid
name
string
outputType
string
Allowed values: s3 webhook
destination
string
isEnabled
boolean
lastDeliveredAt
string format: date-time
nullable
lastError
string
nullable
createdAt
string format: date-time
Example
{
"outputType": "s3"
}

Validation failed — request body or query is missing/invalid

Media type application/json
object
error
string
Example
{
"error": "Missing or invalid \"url\" field"
}

Missing or invalid authentication token

Media type application/json
object
error
string
Example
{
"error": "Missing or invalid authentication token"
}

Insufficient permissions for this operation

Media type application/json
object
error
string
Example
{
"error": "No organization. Complete onboarding first."
}

Unexpected server error. Logs and PostHog $exception capture

Media type application/json
object
error
string
Example
{
"error": "Something went wrong"
}