Skip to main content

Integrations

Preview

Integration status, Slack notifications and the Jira configuration. Reference for API version next.

On this page
PreviewDownload OpenAPI (JSON)Versioning

Get integration status

GET /api/v1/integrations/status

Connection state and health for the organization's integrations. Requires integrations:read.

Authentication

  • API key in X-API-Key
  • API key or session token in Authorization: Bearer

Responses

  • 200 Status.

    application/json

    Body (application/json)

  • 401 Missing, invalid, expired or revoked credentials.Error envelope
  • 403 The credential is valid but lacks a required scope or permission.Error envelope
  • 429 A per-user limit was exceeded (the Platform API, embeddings or rerank). This response does not use the error envelope. Wait for Retry-After seconds.

    application/json

    Headers

    • X-Request-ID string

      The request's correlation id (yours, or one BreachLine generated). Quote it to support.

    • Retry-After integer

      Seconds to wait before retrying.

    Body (application/json)

    • detail string Required
    • retry_after integer Required
      Always
      60

Example

cURL
curl "https://api.breachline.io/api/v1/integrations/status" \
  -H "Authorization: Bearer $BREACHLINE_API_KEY"
Example 200 response
{}

Get the Slack configuration summary

GET /api/v1/integrations/config

Which Slack method is configured. Secrets are write-only and never returned (has_webhook, has_bot_token are booleans). Requires integrations:read.

Authentication

  • API key in X-API-Key
  • API key or session token in Authorization: Bearer

Responses

  • 200 Configuration summary.

    application/json

    Body (application/json)

    • method string or null
    • has_webhook boolean
    • has_bot_token boolean
    • default_channel string or null
    • team_id string or null
  • 401 Missing, invalid, expired or revoked credentials.Error envelope
  • 403 The credential is valid but lacks a required scope or permission.Error envelope
  • 429 A per-user limit was exceeded (the Platform API, embeddings or rerank). This response does not use the error envelope. Wait for Retry-After seconds.

    application/json

    Headers

    • X-Request-ID string

      The request's correlation id (yours, or one BreachLine generated). Quote it to support.

    • Retry-After integer

      Seconds to wait before retrying.

    Body (application/json)

    • detail string Required
    • retry_after integer Required
      Always
      60

Example

cURL
curl "https://api.breachline.io/api/v1/integrations/config" \
  -H "Authorization: Bearer $BREACHLINE_API_KEY"
Example 200 response
{
  "method": "string",
  "has_webhook": true,
  "has_bot_token": true,
  "default_channel": "string",
  "team_id": "string"
}

Send a Slack message

POST /api/v1/integrations/slack/notify

Posts to the organization's connected Slack. Requires integrations:notify.

Authentication

  • API key in X-API-Key
  • API key or session token in Authorization: Bearer

Request body

application/json Required

  • message string Required
    Maximum length
    4000
  • channel string or null

    Accepted but has no effect: messages go to the channel the Slack incoming webhook was created for. The response echoes the value you sent.

  • context object or null

    Optional key-value fields shown with the message.

Responses

  • 200 Sent.

    application/json

    Body (application/json)

    • success boolean
    • channel string or null
    • ts string or null
  • 400 The request was malformed or failed a server-side check.Error envelope
  • 401 Missing, invalid, expired or revoked credentials.Error envelope
  • 403 The credential is valid but lacks a required scope or permission.Error envelope
  • 409 Slack is not connected for this organization. Connect it in the console under Settings, Integrations.Error envelope
  • 429 A per-user limit was exceeded (the Platform API, embeddings or rerank). This response does not use the error envelope. Wait for Retry-After seconds.

    application/json

    Headers

    • X-Request-ID string

      The request's correlation id (yours, or one BreachLine generated). Quote it to support.

    • Retry-After integer

      Seconds to wait before retrying.

    Body (application/json)

    • detail string Required
    • retry_after integer Required
      Always
      60

Example

cURL
curl -X POST "https://api.breachline.io/api/v1/integrations/slack/notify" \
  -H "Authorization: Bearer $BREACHLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "message": "string"
  }'
Example 200 response
{
  "success": true,
  "channel": "string",
  "ts": "string"
}

Send a findings alert to Slack

POST /api/v1/integrations/slack/findings

A formatted alert listing findings for one target. Requires integrations:notify.

Authentication

  • API key in X-API-Key
  • API key or session token in Authorization: Bearer

Request body

application/json Required

  • scan_target string Required
  • findings array of objects
    8 fields in findings
    • title string Required
    • severity string Required
      Examples
      critical high medium low info
    • category string or null
    • target string or null
    • description string or null
    • evidence_summary string or null
    • remediation string or null
    • jira_ticket string or null
  • channel string or null

    Accepted but has no effect; the webhook's own channel is used.

  • thread_ts string or null

Responses

  • 200 Sent.

    application/json

    Body (application/json)

    • success boolean
    • channel string or null
    • ts string or null
  • 400 The request was malformed or failed a server-side check.Error envelope
  • 401 Missing, invalid, expired or revoked credentials.Error envelope
  • 403 The credential is valid but lacks a required scope or permission.Error envelope
  • 409 Slack is not connected for this organization. Connect it in the console under Settings, Integrations.Error envelope
  • 429 A per-user limit was exceeded (the Platform API, embeddings or rerank). This response does not use the error envelope. Wait for Retry-After seconds.

    application/json

    Headers

    • X-Request-ID string

      The request's correlation id (yours, or one BreachLine generated). Quote it to support.

    • Retry-After integer

      Seconds to wait before retrying.

    Body (application/json)

    • detail string Required
    • retry_after integer Required
      Always
      60

Example

cURL
curl -X POST "https://api.breachline.io/api/v1/integrations/slack/findings" \
  -H "Authorization: Bearer $BREACHLINE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "scan_target": "string"
  }'
Example 200 response
{
  "success": true,
  "channel": "string",
  "ts": "string"
}

Get the Jira configuration

GET /api/v1/integrations/jira

The legacy Jira configuration for this organization. The API token is never returned (has_token is a boolean). Nothing files Jira issues automatically; AI engineers use a Jira connection from the integration catalog when you ask them to. Requires integrations:read.

Authentication

  • API key in X-API-Key
  • API key or session token in Authorization: Bearer

Responses

  • 200 Configuration.

    application/json

    Body (application/json)

    • configured boolean
    • enabled boolean
    • base_url string or null
    • email string or null
    • project_key string or null
    • auto_ticket_severity string or null

      Stored with this legacy configuration but not used: nothing files Jira issues automatically.

    • has_token boolean
  • 401 Missing, invalid, expired or revoked credentials.Error envelope
  • 403 The credential is valid but lacks a required scope or permission.Error envelope
  • 429 A per-user limit was exceeded (the Platform API, embeddings or rerank). This response does not use the error envelope. Wait for Retry-After seconds.

    application/json

    Headers

    • X-Request-ID string

      The request's correlation id (yours, or one BreachLine generated). Quote it to support.

    • Retry-After integer

      Seconds to wait before retrying.

    Body (application/json)

    • detail string Required
    • retry_after integer Required
      Always
      60

Example

cURL
curl "https://api.breachline.io/api/v1/integrations/jira" \
  -H "Authorization: Bearer $BREACHLINE_API_KEY"
Example 200 response
{
  "configured": true,
  "enabled": true,
  "base_url": "string",
  "email": "string",
  "project_key": "string",
  "auto_ticket_severity": "string",
  "has_token": true
}

Search documentation

Type to search guides, the API reference, the CLI and the console guide.

    Enter open↑ ↓ moveEsc close