SecurityHive API Documentation

Postman collection → OpenAPI spec →

Introduction

This documentation aims to provide all the information you need to work with our API.

Authenticating requests

To authenticate requests, include an Authorization header with the value "Bearer {YOUR_PERSONAL_ACCESS_TOKEN}".

All authenticated endpoints are marked with a requires authentication badge in the documentation below.

You can retrieve your token by visiting the dashboard and clicking Generate new token at your profile.

Applications

Manage the applications that have been discovered on your assets.

List applications.

GET
https://api.securityhive.io
/v1/applications
requires authentication

Retrieve all applications for the current company. Look at the 'Retrieve an application' endpoint for more details on the application object.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

filter[vendor]
Filter applications by vendor.
Example:
microsoft
filter[product]
Filter applications by product.
Example:
windows
filter[version]
Filter applications by version.
Example:
1.2.0
sort
The column(s) to sort by. Prefix with - for descending order. Eg sort=-vendor
Must be one of:
  • cpe
  • vendor
  • product
  • version
Example:
version
include
Include additional relationships (comma separated).
Must be one of:
  • assets
Example:
assets
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/applications?filter%5Bvendor%5D=microsoft&filter%5Bproduct%5D=windows&filter%5Bversion%5D=1.2.0&sort=version&include=assets" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": [
        {
            "id": "a1db2512-a7cc-4544-9511-574bd5bc07af",
            "cpe": "cpe:2.3:a:oracle:weblogic:*:*:*:*:*:*:*:*",
            "vendor": "Oracle",
            "product": "WebLogic",
            "version": "16.83.9957",
            "update": "hotfix1",
            "created_at": "2026-05-24T12:31:58.000000Z",
            "updated_at": "2026-05-24T12:31:58.000000Z"
        },
        {
            "id": "a1db2512-a94b-4636-897b-93a345b5ba9e",
            "cpe": "cpe:2.3:a:oracle:solaris:*:*:*:*:*:*:*:*",
            "vendor": "Oracle",
            "product": "Solaris",
            "version": "9.84.2368",
            "update": "sp1",
            "created_at": "2026-05-24T12:31:58.000000Z",
            "updated_at": "2026-05-24T12:31:58.000000Z"
        }
    ],
    "links": {
        "first": "/?page=1",
        "last": "/?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [
            {
                "url": null,
                "label": "« Previous",
                "page": null,
                "active": false
            },
            {
                "url": "/?page=1",
                "label": "1",
                "page": 1,
                "active": true
            },
            {
                "url": null,
                "label": "Next »",
                "page": null,
                "active": false
            }
        ],
        "path": "/",
        "per_page": 10,
        "to": 2,
        "total": 2
    }
}

Export applications.

GET
https://api.securityhive.io
/v1/applications/export
requires authentication

Export all applications for the current company in CSV or XLSX format.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

type
The type of export to generate
required
Must be one of:
  • csv
  • xlsx
Example:
csv
filter[vendor]
Filter applications by vendor.
Example:
microsoft
filter[product]
Filter applications by product.
Example:
windows
filter[version]
Filter applications by version.
Example:
1.2.0
sort
The column(s) to sort by. Prefix with - for descending order. Eg sort=-vendor
Must be one of:
  • cpe
  • vendor
  • product
  • version
Example:
version

Body Parameters

Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/applications/export?type=csv&filter%5Bvendor%5D=microsoft&filter%5Bproduct%5D=windows&filter%5Bversion%5D=1.2.0&sort=version" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"type\": \"csv\"
}"
Example response:
Headers
cache-control: no-cache, private
content-type: application/json
content-security-policy-report-only: default-src 'self'; script-src 'self' 'nonce-w24HLGhuIeYdTBflVnOw2pXdGS7Sm9dO9ez0BGcI' https://js.chargebee.com https://*.intercom.io https://*.intercomcdn.com https://static.cloudflareinsights.com https://unpkg.com https://cdn.jsdelivr.net https://medv.io https://assets.calendly.com; script-src-elem 'self' 'nonce-w24HLGhuIeYdTBflVnOw2pXdGS7Sm9dO9ez0BGcI' https://js.chargebee.com https://*.intercom.io https://*.intercomcdn.com https://static.cloudflareinsights.com https://unpkg.com https://cdn.jsdelivr.net https://medv.io https://assets.calendly.com; script-src-attr 'none'; style-src 'self' 'unsafe-inline' https://fonts.bunny.net https://*.intercomcdn.com https://unpkg.com; style-src-elem 'self' 'unsafe-inline' https://fonts.bunny.net https://*.intercomcdn.com https://unpkg.com; img-src 'self' data: blob: https://*.intercomcdn.com https://*.intercomcdn.eu https://*.intercomassets.eu https://*.intercom-attachments.eu https://www.gravatar.com https://*.tile.openstreetmap.org; font-src 'self' https://fonts.bunny.net https://*.intercomcdn.com; connect-src 'self' https://um.securityhive.io https://app.securityhive.io https://*.intercom.io wss://*.intercom.io wss://localhost:8090; frame-src 'self' https://um.securityhive.io https://js.chargebee.com https://securityhive.chargebee.com https://intercom-sheets.com https://calendly.com; frame-ancestors 'none'; form-action 'self'; base-uri 'self'; object-src 'none'; worker-src 'self'; manifest-src 'self'; media-src 'self' data: https://*.intercomcdn.com; upgrade-insecure-requests
content-security-policy: frame-src 'self' https://um.securityhive.io https://js.chargebee.com https://securityhive.chargebee.com https://intercom-sheets.com https://calendly.com; frame-ancestors 'none';
permissions-policy: geolocation=(), microphone=(), camera=(), fullscreen=()
x-content-type-options: nosniff
cross-origin-resource-policy: same-site
referrer-policy: strict-origin-when-cross-origin
vary: Origin
{
    "message": "Unauthenticated."
}

Retrieve an application.

GET
https://api.securityhive.io
/v1/applications/{id}
requires authentication

Retrieves an by its ID.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
string
required

The ID of the application.

Example:
amet

Query Parameters

include
Include additional relationships (comma separated).
Must be one of:
  • assets
Example:
assets
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/applications/amet?include=assets" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": {
        "id": "a1db2512-ad83-4246-b250-7ac664084cbb",
        "cpe": "cpe:2.3:a:cisco:anyconnect:*:*:*:*:*:*:*:*",
        "vendor": "Cisco",
        "product": "AnyConnect",
        "version": "11.2.5019",
        "update": "update1",
        "created_at": "2026-05-24T12:31:58.000000Z",
        "updated_at": "2026-05-24T12:31:58.000000Z"
    }
}

Assets

Manage assets that have been discovered on your network.

List assets.

GET
https://api.securityhive.io
/v1/assets
requires authentication

Retrieve all assets for the current company. Look at the 'Retrieve an asset' endpoint for more details on the asset object.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

filter[name]
Filter assets by name.
Example:
Laptop-1
filter[host]
Filter assets by their IP-address.
Example:
192.168.1.1
filter[mac_address]
Filter assets by their MAC-address.
Example:
3A:5E:D6:95:BF
filter[hostname]
Filter assets by their hostname.
Example:
laptop-1.local
filter[tags][]
Filter assets by their tags.
Example:
New,Old
filter[licensed]
Filter assets by licensed status.
Example:
true,false
sort
The column(s) to sort by. Prefix with - for descending order. Eg sort=-name
Must be one of:
  • name
  • host
  • last_seen
  • licensed
Example:
licensed
include
Include additional relationships (comma separated).
Must be one of:
  • certificates
  • software
  • tags
  • scans
Example:
scans
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/assets?filter%5Bname%5D=Laptop-1&filter%5Bhost%5D=192.168.1.1&filter%5Bmac_address%5D=3A%3A5E%3AD6%3A95%3ABF&filter%5Bhostname%5D=laptop-1.local&filter%5Btags%5D%5B%5D=New%2COld&filter%5Blicensed%5D=true%2Cfalse&sort=licensed&include=scans" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": [
        {
            "id": "a1db2512-610f-4382-bceb-7406b875fc70",
            "company_id": "3503884",
            "name": "Dr. Alisha Carter DDS",
            "identifier": "13.219.121.106",
            "host": "13.219.121.106",
            "mac_address": null,
            "hostname": "schultz.com",
            "operating_system": "quam",
            "operating_system_name": "sit",
            "first_seen": "1992-07-02T23:19:03.000000Z",
            "last_seen": "2006-07-15T01:37:15.000000Z",
            "open_tcp_ports": "80,443",
            "open_udp_ports": "53,123",
            "traceroute": [],
            "ssh_key": null,
            "average_scan_duration": 0,
            "licensed": false,
            "change_license_at": "2026-06-06T11:16:41.000000Z"
        },
        {
            "id": "a1db2512-643a-4565-8fc5-76eeabc3364d",
            "company_id": "769379",
            "name": "Prof. Rubie Satterfield MD",
            "identifier": "EF:E3:E1:85:76:20",
            "host": "146.177.229.253",
            "mac_address": "EF:E3:E1:85:76:20",
            "hostname": "brakus.org",
            "operating_system": "beatae",
            "operating_system_name": "sunt",
            "first_seen": "1980-02-29T05:13:56.000000Z",
            "last_seen": "2026-01-12T08:10:47.000000Z",
            "open_tcp_ports": "80,443",
            "open_udp_ports": "53,123",
            "traceroute": [],
            "ssh_key": null,
            "average_scan_duration": 0,
            "licensed": false,
            "change_license_at": "2026-06-18T00:39:39.000000Z"
        }
    ],
    "links": {
        "first": "/?page=1",
        "last": "/?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [
            {
                "url": null,
                "label": "« Previous",
                "page": null,
                "active": false
            },
            {
                "url": "/?page=1",
                "label": "1",
                "page": 1,
                "active": true
            },
            {
                "url": null,
                "label": "Next »",
                "page": null,
                "active": false
            }
        ],
        "path": "/",
        "per_page": 10,
        "to": 2,
        "total": 2
    }
}

Bulk asset action.

PATCH
https://api.securityhive.io
/v1/assets/actions
requires authentication

Will perform a bulk action on assets (Add Tags, Remove Tags or delete).

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request PATCH \
    "https://api.securityhive.io/v1/assets/actions" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"data\": [
        {
            \"action\": \"assignLicense\",
            \"id\": \"dolorem\",
            \"data\": []
        }
    ]
}"
Example response:
[Empty response]

Create asset.

POST
https://api.securityhive.io
/v1/assets
requires authentication

Will create a new asset for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://api.securityhive.io/v1/assets" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"q\",
    \"host\": \"sed\",
    \"licensed\": false
}"
Example response:
{
    "data": {
        "id": "a1db2512-6d15-44e9-aea4-03056dbc7618",
        "company_id": "5424660",
        "name": "Mr. Holden Smitham",
        "identifier": "AC:EA:F4:C0:BD:8E",
        "host": "196.107.201.45",
        "mac_address": "AC:EA:F4:C0:BD:8E",
        "hostname": "gleason.com",
        "operating_system": "quia",
        "operating_system_name": "sed",
        "first_seen": "1976-10-04T14:25:58.000000Z",
        "last_seen": "1987-02-17T21:23:59.000000Z",
        "open_tcp_ports": "80,443",
        "open_udp_ports": "53,123",
        "traceroute": [],
        "ssh_key": null,
        "average_scan_duration": 0,
        "licensed": true,
        "change_license_at": "2026-06-18T13:55:36.000000Z"
    }
}
{
    "message": "host must be unique"
}

Retrieve an asset.

GET
https://api.securityhive.io
/v1/assets/{id}
requires authentication

Retrieves an asset by its ID.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
string
required

The ID of the asset.

Example:
voluptates

Query Parameters

include
Include additional relationships (comma separated).
Must be one of:
  • certificates
  • software
  • tags
  • scans
Example:
tags
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/assets/voluptates?include=tags" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": {
        "id": "a1db2512-71d2-42c4-95a1-e39e62e83e7c",
        "company_id": "3203904",
        "name": "Jules Kilback",
        "identifier": "CE:6A:EF:12:AE:6F",
        "host": "227.11.98.186",
        "mac_address": "CE:6A:EF:12:AE:6F",
        "hostname": "trantow.com",
        "operating_system": "voluptatum",
        "operating_system_name": "et",
        "first_seen": "1972-04-28T17:16:05.000000Z",
        "last_seen": "1992-05-09T18:30:17.000000Z",
        "open_tcp_ports": "80,443",
        "open_udp_ports": "53,123",
        "traceroute": [],
        "ssh_key": null,
        "average_scan_duration": 0,
        "licensed": true,
        "change_license_at": "2026-06-19T04:47:05.000000Z"
    }
}

Update asset.

PATCH
https://api.securityhive.io
/v1/assets/{id}
requires authentication

Will update an existing asset

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
string
required

The ID of the asset.

Example:
id

Body Parameters

Example request:
curl --request PATCH \
    "https://api.securityhive.io/v1/assets/id" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"bvdrjmqy\",
    \"licensed\": true
}"
Example response:
{
    "data": {
        "id": "a1db2512-7694-4eb9-abe7-e24bd2f149bb",
        "company_id": "2734870",
        "name": "Dortha Ziemann",
        "identifier": "7C:D6:FE:14:D8:1F",
        "host": "163.140.156.249",
        "mac_address": "7C:D6:FE:14:D8:1F",
        "hostname": "dach.com",
        "operating_system": "nihil",
        "operating_system_name": "velit",
        "first_seen": "2012-12-19T21:51:35.000000Z",
        "last_seen": "1970-07-22T11:01:27.000000Z",
        "open_tcp_ports": "80,443",
        "open_udp_ports": "53,123",
        "traceroute": [],
        "ssh_key": null,
        "average_scan_duration": 0,
        "licensed": false,
        "change_license_at": "2026-06-21T02:26:24.000000Z"
    }
}
{
    "message": "name is required"
}

Delete asset.

DELETE
https://api.securityhive.io
/v1/assets/{id}
requires authentication

Will delete an existing asset

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
string
required

The ID of the asset.

Example:
repellat
Example request:
curl --request DELETE \
    "https://api.securityhive.io/v1/assets/repellat" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[Empty response]

Certificates

Manage certificates that have been discovered on your network.

List certificates.

GET
https://api.securityhive.io
/v1/certificates
requires authentication

Retrieve all certificates for the current company. Look at the 'Retrieve a certificate' endpoint for more details on the certificate object.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

filter[common_name]
Filter certificates by their common name.
Example:
test.nl
filter[organization]
Filter certificates by their organization name.
Example:
Test B.V.
sort
The column(s) to sort by. Prefix with - for descending order. Eg sort=-not_valid_before
Must be one of:
  • not_valid_after
Example:
not_valid_after
include
Include additional relationships (comma separated).
Must be one of:
  • certificates
  • applications
  • tags
  • scans
Example:
certificates
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/certificates?filter%5Bcommon_name%5D=test.nl&filter%5Borganization%5D=Test+B.V.&sort=not_valid_after&include=certificates" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": [
        {
            "id": "a1db2512-7e69-46be-9521-0b5e6654e263",
            "company_id": "9673683",
            "common_name": "rowe.com",
            "organization": null,
            "organizational_unit": "Group",
            "locality": null,
            "state": null,
            "country": "IQ",
            "serial": "56FU6KHJBAOADOOJN856RNS6HIVC0MDR",
            "not_valid_before": "20260328T214036Z",
            "not_valid_after": "20260608T005356Z",
            "value": "-----BEGIN CERTIFICATE-----\n65KbOivQ3g2SPh97lj1U9F3XIT6S9ffAocPje55FhakPIf2XA6vhXY90ON9o5qHO\n3MDuqJjPaR8oFLXHdt8g0IZ84vNSosKsi0jxT5ZG5LJNXoliz/S6Chr3/jfr5eXJ\nbLmztcEEXMErxhZiAHygpYdoerJKL0GRkDmcQae7calZIWQ7OsbDDmLwZilwmPdV\np2EXprysknaFBxxex0kelvJHqUksJJK+tqeLttb9LjYf5b753KssRvekyP0xgDe9\nVwMpJ6UGnDE6JHc/vmzoKBLEKQnrIpl9g+C7dWZhIgLC+gtfoWR1lG4sEmqqs0Fn\n2dPr2hqTtvlkIHJhDpgz61DaldXagEM5ij57XvcsvwtVJQLNkPoKAngILUGq2fUc\n3OGkPBmnZdCd8jQAmi+SvBlLHNZ59tII8Kl0okzYjrRz+LLrVZ8DHfzGywK1GSlA\nlcqnWe1DCT9k0aS8uYVq6BacORnvN+RWFvvoF2KACKZTQCOvig8z9qbtSVF5L8PN\nhlIa7A77YtguQLKenSRxbtk2p/V3Jyg1KNTZdOnsI4lURJe0xDZ0XK4Z2gg74o6+\nOiHH2Sih8ouc+6+sXdcqgZ9O206wAbsqR4gLDkrW5opYeQOxiXkf0UdNhc3ipT5K\nQYmJtZQAUjIUxEQYf0eh27AtoQ9pnYuwmWICs50wSuFwAJRTMynfCkbjR5h2Lgmo\nUx+Zs947e/ldERk/PVo3av8nYCmIP2Qxx3y8jiB2kCV9jXNlsQ2wNfthqam+vj9l\nWJ3Wkap+CQCJcVVHpJAqs5uNV6RREj3J+C0LsDEKi8k2dN70NyI0gTm2JuuUV6Ut\nRso/Elq+GtvhYTsq5Ukc9kZVYxS5fdEjAN8EWrh32CrS5P5kmdnvGmyFmv5gyuM2\nrhOhlObf8lNe3hKswbklg9daFmjPB/1qFNZsbuzISayX2O3AyBSushBeW33gUbc3\nsHQv2tOpIJbHj7q+5T/YoOZD1Glh0vrjtxEcoc5yiolN6JJxS43QpeqlrcHGDIwG\nIlrvLBSFD0vzlQeG94b6fYteKUN96JIMY9/WjqsS6coVLDIa5vJzA+fGwDH1NBFs\n4MXIAYOcboZNeIIifVIgMkmtv6FiuwePFHh0d0F0ANNw96BTPCACEV+eCjiUSeKL\nBkMU3nQ9Il6xqcAuxik3p9+9te/tBRQj2phR407sXyFxKHtkW/s912/wzyZBADE1\ntB3TFTZmLc2bCzK5Y0uzQ/6GBX4I/CxrIK+kXI5z+2it7VJZk0uEF9q3zlzga/r8\nkWCojwORASpB8mSc0NmGGLqyrD1uDuDwKtRIhlpvwrPBI9ODN6P8Y4X+879DiAg5\n7fi1Gtf2rmbVdIsrmRRFDA==\n\n-----END CERTIFICATE-----",
            "first_seen": "2026-04-02T22:48:24.000000Z",
            "last_seen": "2026-05-05T05:49:27.000000Z",
            "created_at": "2026-05-24T12:31:58.000000Z",
            "updated_at": "2026-05-24T12:31:58.000000Z"
        },
        {
            "id": "a1db2512-8156-4ec4-a815-2732e94a4bd6",
            "company_id": "932056",
            "common_name": "erdman.com",
            "organization": "Streich Inc",
            "organizational_unit": "Inc",
            "locality": null,
            "state": "Arizona",
            "country": "VG",
            "serial": "UHWGRYT4RSPE1EAVLH27DXAI51TE4XEY",
            "not_valid_before": "20250223T060219Z",
            "not_valid_after": "20270611T025652Z",
            "value": "-----BEGIN CERTIFICATE-----\nemweCGUvbQZvzZfX6PFCSLUdMKKvV/QaaBTNrSJrDKzS95aPKg+8vqfhjy0ZjaU1\ntOcOs0Uu9ND77VTqDKkECaVEA1odgHGPfrBfm85n90WQYjgplq2zq0qdWxpmrS9W\nxmavvzrKZZCkDptqt1+YYGaD3Yin/KFL16R/oLAU1jpcNKXUzVgz6N9LhwDJ33WL\n6ju24UEhZ2Uc/zomUetw70IoTThcDqW+TTbngGtK5dU9O2SWUGcdW3LOd8iL5tPo\n5L9MUDCvO1Ac1xkbnvSK0OSPM3i7SM9RvPpJeK+WQ0ZzkxI048f0xTyctt3+8HyO\nGaEcG55fSO7FSuYi4GDx5hWGiq4AH0csftasRH+cxNP2demAaZ/5iHccufuSetPJ\nes3zKCLYrAJGvrPfMmSmaU0jN0Z4aAunk1OL2syvL0nxVXF4Oq4wypoeI0f6m7/n\nF1352CqgRWUSAHI7ATHU+9kNmvFrin8w/9yWvsDhDML/JMph1SETExJlqWUO6Iyv\nv9by4l2t7MD+Kg+TkhRIUqSDcEMLNrUoObvqT93b3PCHfcBn4kqQ1FFmUcgVZSCV\nktjKZ0Hh9fF/vl8hAckmJ/KD75AiH9otrSQBTAKfnTb+K8ACw4tgMU301Up1ISI4\n30Pg+EsqdI87w8A8is8qYUJhpU3YYno1JzTkbfd6HARzAQrCXBp/Dg/SxPxuzZg7\nAM2uF+WiXRFx5lwfOoGfqfC099Nypq/XMbUq3kmAQRBmWY/KQGSc3dwQiX9CGWHR\nAiB6iqF8eUU5w0/OpmuivRp3MPrwQkDjmOTP4K4vMuPoLQXYa2mXdbGr2JA4vxqB\nCVN/89Mh037+rQ+IN3BygCMffJ1r8Ikgqs3eeVDxVBZQcsN3zf4kncnlFu/K9Shf\n/5HyQtuPff57Z5cjhHC1OZnkuu4CcFOW7S/wIVR7yWI5KYTKi88NYp3nQ6vj4dJw\nymFhr5Uw1GLRfIFYKLe6nqpfZt3zePNKArOzRewhmM4l4YZei0ZM9rzAj8XIWAnA\nTHJbIf+LPKUf/QetBvUA6ski9FB3/IA8pZgyPb7x6vgqbLkqSGlXlr556YEvRUbS\ntS91ntQpMCaOjKZv1U8ogUz+Jbo2qaOI73P9T3unpPMGiaSeXPvSe6023F6LnSZI\nOEwkxA2cwjnJsfLg17BCQxjcdyP8LIbPyAwemC+0yawa8uL18uBmhHmTm6rBu5QE\nPGMbeJkspNSRkjmUen5CO560cH+H8Ca3GGzgHpVqEcRQC31d8vN4zDqJ4ILh4Pmy\n5mI/wplN45Gkh4V/u7DL6OhcUU2OlGWh+Vqcv7K/UV7HK9MFhUZ9aXcEt7ww3ceD\nCmpS879Ewf1M5hXLMEbG5w==\n\n-----END CERTIFICATE-----",
            "first_seen": "2025-07-13T07:13:24.000000Z",
            "last_seen": "2025-07-20T09:53:48.000000Z",
            "created_at": "2026-05-24T12:31:58.000000Z",
            "updated_at": "2026-05-24T12:31:58.000000Z"
        }
    ],
    "links": {
        "first": "/?page=1",
        "last": "/?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [
            {
                "url": null,
                "label": "« Previous",
                "page": null,
                "active": false
            },
            {
                "url": "/?page=1",
                "label": "1",
                "page": 1,
                "active": true
            },
            {
                "url": null,
                "label": "Next »",
                "page": null,
                "active": false
            }
        ],
        "path": "/",
        "per_page": 10,
        "to": 2,
        "total": 2
    }
}

Export certificates.

GET
https://api.securityhive.io
/v1/certificates/export
requires authentication

Export all certificates for the current company in CSV or XLSX format.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

type
The type of export to generate
required
Must be one of:
  • csv
  • xlsx
Example:
xlsx
filter[common_name]
Filter certificates by their common name.
Example:
test.nl
filter[organization]
Filter certificates by their organization name.
Example:
Test B.V.
sort
The column(s) to sort by. Prefix with - for descending order. Eg sort=-not_valid_before
Must be one of:
  • not_valid_after
Example:
not_valid_after
filter
The column(s) to filter by. Eg filter=common_name:test.nl
Must be one of:
  • common_name
  • organization
Example:
common_name
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/certificates/export?type=xlsx&filter%5Bcommon_name%5D=test.nl&filter%5Borganization%5D=Test+B.V.&sort=not_valid_after&filter=common_name" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
Headers
cache-control: no-cache, private
content-type: application/json
content-security-policy-report-only: default-src 'self'; script-src 'self' 'nonce-Lfku4LwlPDd4N8NYuD5XOCQG5ZWz7cwfXgV1NPrg' https://js.chargebee.com https://*.intercom.io https://*.intercomcdn.com https://static.cloudflareinsights.com https://unpkg.com https://cdn.jsdelivr.net https://medv.io https://assets.calendly.com; script-src-elem 'self' 'nonce-Lfku4LwlPDd4N8NYuD5XOCQG5ZWz7cwfXgV1NPrg' https://js.chargebee.com https://*.intercom.io https://*.intercomcdn.com https://static.cloudflareinsights.com https://unpkg.com https://cdn.jsdelivr.net https://medv.io https://assets.calendly.com; script-src-attr 'none'; style-src 'self' 'unsafe-inline' https://fonts.bunny.net https://*.intercomcdn.com https://unpkg.com; style-src-elem 'self' 'unsafe-inline' https://fonts.bunny.net https://*.intercomcdn.com https://unpkg.com; img-src 'self' data: blob: https://*.intercomcdn.com https://*.intercomcdn.eu https://*.intercomassets.eu https://*.intercom-attachments.eu https://www.gravatar.com https://*.tile.openstreetmap.org; font-src 'self' https://fonts.bunny.net https://*.intercomcdn.com; connect-src 'self' https://um.securityhive.io https://app.securityhive.io https://*.intercom.io wss://*.intercom.io wss://localhost:8090; frame-src 'self' https://um.securityhive.io https://js.chargebee.com https://securityhive.chargebee.com https://intercom-sheets.com https://calendly.com; frame-ancestors 'none'; form-action 'self'; base-uri 'self'; object-src 'none'; worker-src 'self'; manifest-src 'self'; media-src 'self' data: https://*.intercomcdn.com; upgrade-insecure-requests
content-security-policy: frame-src 'self' https://um.securityhive.io https://js.chargebee.com https://securityhive.chargebee.com https://intercom-sheets.com https://calendly.com; frame-ancestors 'none';
permissions-policy: geolocation=(), microphone=(), camera=(), fullscreen=()
x-content-type-options: nosniff
cross-origin-resource-policy: same-site
referrer-policy: strict-origin-when-cross-origin
vary: Origin
{
    "message": "Unauthenticated."
}

Retrieve a certificate.

GET
https://api.securityhive.io
/v1/certificates/{id}
requires authentication

Retrieves an by its ID.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
string
required

The ID of the certificate.

Example:
nisi

Query Parameters

include
Include additional relationships (comma separated).
Must be one of:
  • certificates
  • applications
  • tags
  • scans
Example:
tags
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/certificates/nisi?include=tags" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": {
        "id": "a1db2512-87f9-4d32-8012-c41415bdae9f",
        "company_id": "4521759",
        "common_name": "skiles.com",
        "organization": "Dickens Ltd",
        "organizational_unit": null,
        "locality": null,
        "state": "New York",
        "country": "AF",
        "serial": "4QH8LT42AAJRXDLJJYFA1Y4UCOMV1WHG",
        "not_valid_before": "20251104T015202Z",
        "not_valid_after": "20261228T205401Z",
        "value": "-----BEGIN CERTIFICATE-----\nfvJFcMOvrP3vq9qv6JI4j1/jJcvVyNEJavpfyWcGHkethgLxe5tz2eflRJ7ehY06\nztfsQfOs96c2W5dcsfUfgkuLMC3rTY8jEmW73JYILXh+7lq7bikrDg7dpwzEjGzv\noB+rPZ22CCn0mgeDIG1zt7QC+wKULq9CZs2UIvetikg1dufaKLjpU3ljfhQ1ombE\nnv49cdVP+gQWAP9X0+Xo9KjYmfgb5wxw5NrIl+imhNPnkEl68wc4L+a/dv5aEJae\nQ2/nJU20/7NyjvCneImgice6ut96vliRunJ9rWNCBLzPbYKqGHPsqYp0ZWhOqOJX\n9fej+Pmses/fHvRqexxfhbpCg5IANIrNcpiL405FY+JbAvk4XBRprIMN5fwQOjHw\n0JknRQUj3w9m7WNXZo0R379+A2TwJy0vnzDWraOuvLJXKkhHwlcjRP+xxYWBQw2k\ndZUIoxj1CLaGGuA8K6Z3UQKmD6mFooc5NB9oziWE6ktm3lriph6qJfzu99g7x05X\nJSVkgmbdIj6txs19Ie17epWoQRbxOXLYfPpillQsEM8MoR04NtqQVzZHRwtxe7dI\nAZmqy/D+SwAIT2rPNoN6LRsaQWO3tTsdRJV3BV24Yxb0wEwHBD7aVTWtsteecux+\nstGQHvTW7XSKEyMT7VjK/+3A21tGq3kpwxosy9vy0hpIjUZ7RWJf5KI40LhYqJvS\n5Eae1yU3OdvsK61dT93Synxeba2zsFHidXeCkymoRCRhLowe3pkwk48/X9Zi6/Rk\nZlgrLAAX2LG0vChL1fThrDJhyLCvfKaS3mBvi+09RYdkQNIT9rmBflX7IFkvNU8g\nEhejcXuoM7Kp7VPDeSmcy5dl/y3UJtXgppRArpxBuC3w/hwb4b7BaNph7ThY43ad\nvUerIWi8BNfeq0U2r5ZyzqQjU7oGjqEyfS0q3iaXBfCIb4Dsu2OPqlcil4NFyOjr\nY/iCmclt0tMnBDXFJBDY4gturmsrj/o37JM+NIxXXCZeABY8IIxb/C5F9k3S762s\nV4BNuHfPRjVgJ6PYU07srVoU1b2MuffZ9blX2G6srT7RfcifRc79Z0zd2NWDfxFu\nhNVGwFTzU0wwx3M1naQONmmPIy7cycceQQY/8tkOVsR/CUOITvqT8BXIOAJ7H/ly\n+fZykojIyaXkrESg/xOEgNNRRSd0T7B4GINJ0zJnubCQYYVnfLjPkx71Z6br474v\nqySHNzYzKmwfKjc1sVRBYAuBiXZo+lSHDH76jyRdra1fBYm+BwRf1hlhmIlDY2Y4\nP8r4+G9ta9FLnyzrvCE9cUXJZe8sDanSEuBlurCTk1fEqZv5wB96t3zghi3qIAlg\n2RkzNga2uQ9l9GDuoD8q5Q==\n\n-----END CERTIFICATE-----",
        "first_seen": "2025-12-18T12:33:02.000000Z",
        "last_seen": "2026-05-06T21:30:11.000000Z",
        "created_at": "2026-05-24T12:31:58.000000Z",
        "updated_at": "2026-05-24T12:31:58.000000Z"
    }
}

Delete certificate.

DELETE
https://api.securityhive.io
/v1/certificates/{id}
requires authentication

Will delete an existing certificate

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
string
required

The ID of the certificate.

Example:
molestias
Example request:
curl --request DELETE \
    "https://api.securityhive.io/v1/certificates/molestias" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[Empty response]

Detections

Manage your honeypot detections

List detections.

GET
https://api.securityhive.io
/v1/detections
requires authentication

Retrieve all detections for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

filter[search]
string

Search across multiple fields (src_ip, src_hostname, src_mac, dst_ip, sensor, honeypot alias)

Example:
192.168
filter[sensor]
string

Filter by sensor type

Must be one of:
  • SSH
  • MSSQL
  • Blackhole
  • MySQL
  • SMB
  • FTP
  • UPnP
  • HTTP
  • Ping
  • Portscan
  • Modbus
Example:
Portscan
filter[honeypot_id]
string

Filter by honeypot UUID

Example:
550e8400-e29b-41d4-a716-446655440000
filter[honeypot_alias]
string

Filter by honeypot alias (partial match)

Example:
Production
filter[src_ip]
string

Filter by source IP (partial match)

Example:
192.168
filter[src_hostname]
string

Filter by reverse DNS hostname (partial match)

Example:
attacker.example.com
filter[marked_as_seen]
string

Filter by seen status

Must be one of:
  • true
  • false
Example:
true
include
string

Include related resources

Must be one of:
  • events
Example:
events
sort
string

Sort by field (prefix with - for descending)

Must be one of:
  • timestamp
  • -timestamp
Example:
-timestamp
page
integer

Page number

Example:
1
per_page
integer

Results per page (max 20)

Example:
10

Body Parameters

Response Fields

Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/detections?filter%5Bsearch%5D=192.168&filter%5Bsensor%5D=Portscan&filter%5Bhoneypot_id%5D=550e8400-e29b-41d4-a716-446655440000&filter%5Bhoneypot_alias%5D=Production&filter%5Bsrc_ip%5D=192.168&filter%5Bsrc_hostname%5D=attacker.example.com&filter%5Bmarked_as_seen%5D=true&include=events&sort=-timestamp&page=1&per_page=10" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"filter\": {
        \"search\": \"bruuvwhrunln\",
        \"sensor\": \"MySQL\",
        \"honeypot_id\": \"99bf4c53-963d-3d83-b2bc-be1de8e1e4a9\",
        \"honeypot_alias\": \"nhhroxtevdi\",
        \"src_ip\": \"hjvxfqanxccykzimcltujvxo\",
        \"src_hostname\": \"zcfqeycopwxszuwgfuppzwmhe\",
        \"marked_as_seen\": \"true\"
    },
    \"include\": \"events\",
    \"page\": 82,
    \"per_page\": 15,
    \"sort\": \"-timestamp\"
}"
Example response:
{
    "data": [
        {
            "id": "a1db2512-1bc4-4773-a522-ad4cfe93a015",
            "company_id": "ba9bfb8a-8f7b-42b1-ab13-8e8986c2e402",
            "src_ip": "236.134.59.10",
            "dst_ip": "34.133.135.3",
            "sensor": "Modbus",
            "timestamp": "2025-01-06T00:46:06.000000Z",
            "marked_as_seen": false,
            "honeypot_id": "d8243cc5-98e5-4e94-9061-c40544e50fe4",
            "honeypot_alias": "Honeypot-Office-27",
            "src_port": null,
            "src_hostname": null,
            "src_mac": null,
            "dst_port": 47727
        },
        {
            "id": "a1db2512-2294-4aa4-aef7-d473c362a293",
            "company_id": "5d959ecc-b0b2-45d9-8c43-0673ef184335",
            "src_ip": "164.85.66.21",
            "dst_ip": "76.37.34.251",
            "sensor": "Modbus",
            "timestamp": "2024-11-08T12:10:06.000000Z",
            "marked_as_seen": true,
            "honeypot_id": "cc4a962c-6268-483d-8b4f-3f85193a99b9",
            "honeypot_alias": "Honeypot-Office-19",
            "src_port": null,
            "src_hostname": null,
            "src_mac": "89:C6:F4:95:EA:E3",
            "dst_port": 29350
        }
    ],
    "links": {
        "first": "/?page=1",
        "last": "/?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [
            {
                "url": null,
                "label": "« Previous",
                "page": null,
                "active": false
            },
            {
                "url": "/?page=1",
                "label": "1",
                "page": 1,
                "active": true
            },
            {
                "url": null,
                "label": "Next »",
                "page": null,
                "active": false
            }
        ],
        "path": "/",
        "per_page": 10,
        "to": 2,
        "total": 2
    }
}

Mark a detection as seen.

PATCH
https://api.securityhive.io
/v1/detections/{detection_id}/seen
requires authentication

Mark a single detection as seen. Idempotent - marking an already seen detection will succeed without side effects.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

detection_id
string
required

The ID of the detection.

Example:
a1db2512-1bc4-4773-a522-ad4cfe93a015
detection
string
required

The UUID of the detection to mark as seen

Example:
550e8400-e29b-41d4-a716-446655440000
Example request:
curl --request PATCH \
    "https://api.securityhive.io/v1/detections/a1db2512-1bc4-4773-a522-ad4cfe93a015/seen" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[Empty response]

Mark multiple detections as seen.

POST
https://api.securityhive.io
/v1/detections/mark-multiple-seen
requires authentication

Mark multiple detections as seen in a single request. If no detection IDs are provided, all unseen detections for the company will be marked as seen.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://api.securityhive.io/v1/detections/mark-multiple-seen" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"detection_ids\": \"[\\\"550e8400-e29b-41d4-a716-446655440000\\\", \\\"550e8400-e29b-41d4-a716-446655440001\\\"]\"
}"
Example response:
[Empty response]

Endpoints

List integration logs

GET
https://api.securityhive.io
/v1/integrations/{integration_id}/logs
requires authentication

Retrieves all logs for a specific integration.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

integration_id
string
required

The ID of the integration.

Example:
suscipit
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/integrations/suscipit/logs" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
Headers
cache-control: no-cache, private
content-type: application/json
content-security-policy-report-only: default-src 'self'; script-src 'self' 'nonce-TPwCR9KOrgAbYxKghrxDnVBuTR10neE6ZDPoJ5BK' https://js.chargebee.com https://*.intercom.io https://*.intercomcdn.com https://static.cloudflareinsights.com https://unpkg.com https://cdn.jsdelivr.net https://medv.io https://assets.calendly.com; script-src-elem 'self' 'nonce-TPwCR9KOrgAbYxKghrxDnVBuTR10neE6ZDPoJ5BK' https://js.chargebee.com https://*.intercom.io https://*.intercomcdn.com https://static.cloudflareinsights.com https://unpkg.com https://cdn.jsdelivr.net https://medv.io https://assets.calendly.com; script-src-attr 'none'; style-src 'self' 'unsafe-inline' https://fonts.bunny.net https://*.intercomcdn.com https://unpkg.com; style-src-elem 'self' 'unsafe-inline' https://fonts.bunny.net https://*.intercomcdn.com https://unpkg.com; img-src 'self' data: blob: https://*.intercomcdn.com https://*.intercomcdn.eu https://*.intercomassets.eu https://*.intercom-attachments.eu https://www.gravatar.com https://*.tile.openstreetmap.org; font-src 'self' https://fonts.bunny.net https://*.intercomcdn.com; connect-src 'self' https://um.securityhive.io https://app.securityhive.io https://*.intercom.io wss://*.intercom.io wss://localhost:8090; frame-src 'self' https://um.securityhive.io https://js.chargebee.com https://securityhive.chargebee.com https://intercom-sheets.com https://calendly.com; frame-ancestors 'none'; form-action 'self'; base-uri 'self'; object-src 'none'; worker-src 'self'; manifest-src 'self'; media-src 'self' data: https://*.intercomcdn.com; upgrade-insecure-requests
content-security-policy: frame-src 'self' https://um.securityhive.io https://js.chargebee.com https://securityhive.chargebee.com https://intercom-sheets.com https://calendly.com; frame-ancestors 'none';
permissions-policy: geolocation=(), microphone=(), camera=(), fullscreen=()
x-content-type-options: nosniff
cross-origin-resource-policy: same-site
referrer-policy: strict-origin-when-cross-origin
vary: Origin
{
    "message": "Unauthenticated."
}

Honeypots

Manage your honeypots.

Create honeypot.

POST
https://api.securityhive.io
/v1/honeypots
requires authentication

Will create a new honeypot for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Response Fields

Example request:
curl --request POST \
    "https://api.securityhive.io/v1/honeypots" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"alias\": \"Internal Honeypot\"
}"
Example response:
{
    "data": {
        "id": "78d84b32-d6f1-46ee-8569-b2ea147ab125",
        "alias": "Honeypot-Branch-82",
        "status": 5,
        "activation_status": 1,
        "hostname": "honeypot-ipol-120.example.com",
        "slane_enabled": true,
        "slane_connected": false,
        "paired": true,
        "provisioned": true,
        "dns1": "60.155.129.230",
        "dns2": "187.250.232.210",
        "configured_as": null,
        "notes": null,
        "checked_at": "2026-02-26T23:57:09.000000Z",
        "created_at": "2026-05-24T12:31:58.000000Z",
        "updated_at": "2026-05-24T12:31:58.000000Z"
    }
}

Integrations

APIs for managing integrations

List Integrations

GET
https://api.securityhive.io
/v1/integrations
requires authentication

Retrieve all enabled integrations for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/integrations" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[{"autotask": {...}, "another_integration": {...}}]

Enable Integration

POST
https://api.securityhive.io
/v1/integrations/{integration}
requires authentication

Enable a new integration for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

integration
string
required

The name of the integration to enable.

Example:
autotask
Example request:
curl --request POST \
    "https://api.securityhive.io/v1/integrations/autotask" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "message": "Integration enabled successfully"
}
{
    "error": "Failed to enable integration"
}
{
    "error": "Integration not found"
}
{
    "message": "The given data was invalid."
}

Show Integration

GET
https://api.securityhive.io
/v1/integrations/{integration}
requires authentication

Retrieve details of a specific enabled integration for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

integration
string
required

The name of the integration to retrieve.

Example:
autotask
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/integrations/autotask" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{"id": 1, "company_id": "uuid", "name": "autotask", "config": {...}}
{
    "error": "Integration not found"
}
{
    "error": "Integration not enabled"
}

Update Integration

PATCH
https://api.securityhive.io
/v1/integrations/{integration}
requires authentication

Update the configuration of an enabled integration for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

integration
string
required

The name of the integration to update.

Example:
autotask
Example request:
curl --request PATCH \
    "https://api.securityhive.io/v1/integrations/autotask" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "message": "Integration updated successfully"
}
{
    "error": "Failed to update integration"
}
{
    "error": "Integration not found"
}
{
    "message": "The given data was invalid."
}

Disable Integration

DELETE
https://api.securityhive.io
/v1/integrations/{integration}
requires authentication

Disable a specific integration for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

integration
string
required

The name of the integration to disable.

Example:
autotask
Example request:
curl --request DELETE \
    "https://api.securityhive.io/v1/integrations/autotask" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[Empty response]
{
    "error": "Failed to disable integration"
}

Me

APIs for managing the authenticated user

Retrieve the authenticated user

GET
https://api.securityhive.io
/v1/me
requires authentication

Retrieves the authenticated user and its metadata.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

include
string

Include additional relationships (comma separated).

Must be one of:
  • company
  • company.type
  • company.partner
  • managingCompany
  • managingCompany.type
  • managingCompany.partner
Example:
company.type
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/me?include=company.type" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": {
        "id": "b7f41a10-fb33-4832-a8ce-87392eeb950c",
        "company_id": "5978728",
        "managing_company_id": "5978728",
        "first_name": "Frederic",
        "last_name": "Lang",
        "two_factor_enabled": false,
        "two_factor_configured": false,
        "email": "[email protected]",
        "email_verified_at": "2026-05-24T12:31:57Z",
        "phonenumber": "1-803-863-9546",
        "phonenumber_verified_at": "2026-05-24T12:31:57Z",
        "report_interval": "weekly",
        "manageable_companies": [
            {
                "id": "5978728",
                "uuid": "1d6f98d8-bcf0-4eb5-8d5f-3c62b113c22d",
                "name": "Bailey, Lakin and Willms"
            }
        ],
        "role": {
            "name": "norole",
            "title": "No role assigned"
        },
        "abilities": [],
        "need_to_configure_2fa": false,
        "terms_agreed_at": "2026-05-24T12:31:57Z",
        "sso_provider": null,
        "created_at": "2026-05-24T12:31:57Z",
        "updated_at": "2026-05-24T12:31:58Z"
    },
    "links": {
        "self": "http://api.securityhive.io/v1/me"
    }
}

Update the authenticated user

PATCH
https://api.securityhive.io
/v1/me
requires authentication

Updates the authenticated user

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request PATCH \
    "https://api.securityhive.io/v1/me" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"first_name\": \"John\",
    \"last_name\": \"Doe\",
    \"phonenumber\": \"+31612345678\",
    \"managing_company_id\": \"1\",
    \"report_interval\": \"weekly\",
    \"terms_agreed_at\": \"2026-05-24T12:31:58\",
    \"role\": \"admin\"
}"
Example response:
[Empty response]
{
    "message": "phonenumber field contains invalid characters"
}

Tags

Tags can be used to categorize assets.

List tags.

GET
https://api.securityhive.io
/v1/tags
requires authentication

Retrieve all tags for the current company. Look at the 'Retrieve a tag' endpoint for more details on the tag object.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

filter[name]
Filter by tag name.
Example:
id
filter[business_impact]
Filter by business impact.
Example:
high
filter[system_tag]
Filter tags that are default.
Example:
true
sort
The column(s) to sort by. Prefix with - for descending order. Eg sort=business_impact
Must be one of:
  • business_impact
  • name
  • created_at
Example:
business_impact
include
Include additional relationships (comma separated).
Must be one of:
  • assets
Example:
assets
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/tags?filter%5Bname%5D=id&filter%5Bbusiness_impact%5D=high&filter%5Bsystem_tag%5D=1&sort=business_impact&include=assets" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": [
        {
            "id": "a1db2512-8fb1-436a-9b91-830f559bac55",
            "company_id": "4954366",
            "name": "61eb6efa-4824-3ea6-abd8-06dc79fcb407",
            "description": "Atque fugiat id animi qui est. Laboriosam animi dicta tempore reprehenderit ipsum cupiditate. Nobis fuga repudiandae qui veritatis et et nemo. Dolor dolorum autem dolorum rem quibusdam voluptas.",
            "business_impact": "high",
            "system_tag": false,
            "asset_count": 0,
            "created_at": "2026-05-24T12:31:58.000000Z",
            "updated_at": "2026-05-24T12:31:58.000000Z"
        },
        {
            "id": "a1db2512-9282-4916-9e5b-cb0638948711",
            "company_id": "5981906",
            "name": "46a2d532-9c5e-3794-9baf-943f0c81e30b",
            "description": "Quo ipsa omnis et et numquam. Nihil suscipit vero quia repellat inventore molestiae quo. Voluptas quaerat nobis praesentium dolorem quam eum incidunt. Consequatur quaerat corporis id numquam qui.",
            "business_impact": "medium",
            "system_tag": true,
            "asset_count": 0,
            "created_at": "2026-05-24T12:31:58.000000Z",
            "updated_at": "2026-05-24T12:31:58.000000Z"
        }
    ],
    "links": {
        "first": "/?page=1",
        "last": "/?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [
            {
                "url": null,
                "label": "« Previous",
                "page": null,
                "active": false
            },
            {
                "url": "/?page=1",
                "label": "1",
                "page": 1,
                "active": true
            },
            {
                "url": null,
                "label": "Next »",
                "page": null,
                "active": false
            }
        ],
        "path": "/",
        "per_page": 10,
        "to": 2,
        "total": 2
    }
}

Create tag.

POST
https://api.securityhive.io
/v1/tags
requires authentication

Will create a new tag for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://api.securityhive.io/v1/tags" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"ookfuoxbxpsuu\",
    \"description\": \"Quia et animi atque amet velit qui.\",
    \"business_impact\": \"low\"
}"
Example response:
{
    "data": {
        "id": "a1db2512-97c8-4c7d-85f6-cc013ec883e3",
        "company_id": "6793132",
        "name": "2f21a88a-9e32-3218-a8c2-1f3245436321",
        "description": "Quisquam aliquam voluptatem quae odio iste. Molestiae similique et odio suscipit voluptatem. Sed sequi dolores eos est ut ipsa.",
        "business_impact": "critical",
        "system_tag": true,
        "asset_count": 0,
        "created_at": "2026-05-24T12:31:58.000000Z",
        "updated_at": "2026-05-24T12:31:58.000000Z"
    }
}
{
    "message": "name is required"
}

Retrieve a tag.

GET
https://api.securityhive.io
/v1/tags/{id}
requires authentication

Retrieves an tag by its ID.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
string
required

The ID of the tag.

Example:
sit

Query Parameters

include
Include additional relationships (comma separated).
Must be one of:
  • assets
Example:
assets
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/tags/sit?include=assets" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": {
        "id": "a1db2512-9c0d-4037-bbca-254923a10a8a",
        "company_id": "3156539",
        "name": "12bfcdf1-b8b6-395b-a758-c1b10cbb4c46",
        "description": "Eos vitae et quis sunt libero laboriosam quam. Animi quia impedit rem quas molestiae et eum. Minima quae sit non unde praesentium occaecati eum. Et aliquid culpa accusantium et aperiam possimus.",
        "business_impact": "medium",
        "system_tag": false,
        "asset_count": 0,
        "created_at": "2026-05-24T12:31:58.000000Z",
        "updated_at": "2026-05-24T12:31:58.000000Z"
    }
}

Update tag.

PATCH
https://api.securityhive.io
/v1/tags/{id}
requires authentication

Will update an existing tag

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
string
required

The ID of the tag.

Example:
porro

Body Parameters

Example request:
curl --request PATCH \
    "https://api.securityhive.io/v1/tags/porro" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"cedhdrhphbu\",
    \"description\": \"Occaecati possimus provident in perspiciatis aut quia.\",
    \"business_impact\": \"high\"
}"
Example response:
{
    "data": {
        "id": "a1db2512-a07a-4b21-a739-27e07e2e3be2",
        "company_id": "2134304",
        "name": "e2e37b1c-723f-349b-b36f-94e3c70e4b6c",
        "description": "Voluptatum perferendis vitae animi et. Amet dolor dolores dolor distinctio. Illo corporis eos autem. Et rerum illo placeat dolorem deleniti est perspiciatis unde.",
        "business_impact": "medium",
        "system_tag": true,
        "asset_count": 0,
        "created_at": "2026-05-24T12:31:58.000000Z",
        "updated_at": "2026-05-24T12:31:58.000000Z"
    }
}
{
    "message": "name is required"
}

Delete tag.

DELETE
https://api.securityhive.io
/v1/tags/{id}
requires authentication

Will delete an existing tag

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
string
required

The ID of the tag.

Example:
saepe
Example request:
curl --request DELETE \
    "https://api.securityhive.io/v1/tags/saepe" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[Empty response]

Users

APIs for managing users

List Users

GET
https://api.securityhive.io
/v1/users
requires authentication

Retrieve all users for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

include
string

Include additional relationships (comma separated).

Must be one of:
  • company
  • company.type
  • company.partner
  • managingCompany
  • managingCompany.type
  • managingCompany.partner
Example:
company
sort
string

Sort the results by column(s) (comma separated).

Must be one of:
  • first_name
  • last_name
  • email
  • phonenumber
  • report_interval
  • created_at
  • two_factor_enabled
  • role.title
Example:
first_name,-last_name
filter
string

Filter the results by column(s) (comma separated).

Must be one of:
  • first_name
  • last_name
  • email
  • phonenumber
  • report_interval
Example:
first_name:John,last_name:Doe
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/users?include=company&sort=first_name%2C-last_name&filter=first_name%3AJohn%2Clast_name%3ADoe" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": [
        {
            "id": "bc34448f-a26c-484d-b6ea-caec7e61e01c",
            "company_id": "9075634",
            "managing_company_id": "9075634",
            "first_name": "Zachary",
            "last_name": "Aufderhar",
            "two_factor_enabled": false,
            "email": "[email protected]",
            "email_verified_at": "2026-05-24T12:31:58.000000Z",
            "phonenumber": "413-230-4014",
            "phonenumber_verified_at": "2026-05-24T12:31:58.000000Z",
            "report_interval": "weekly",
            "manageable_companies": [
                {
                    "id": "9075634",
                    "uuid": "28c6720a-e037-4caf-80ed-b154c19dbc4a",
                    "name": "Beahan-Kunze"
                }
            ],
            "role": {
                "name": "norole",
                "title": "No role assigned"
            },
            "terms_agreed_at": "2026-05-24T12:31:58.000000Z",
            "sso_provider": null,
            "created_at": "2026-05-24T12:31:58.000000Z",
            "updated_at": "2026-05-24T12:31:59.000000Z",
            "last_login_at": null
        },
        {
            "id": "932948ae-058b-4678-b5ea-dd3ac2091ea2",
            "company_id": "6842934",
            "managing_company_id": "6842934",
            "first_name": "Meggie",
            "last_name": "Hand",
            "two_factor_enabled": false,
            "email": "[email protected]",
            "email_verified_at": "2026-05-24T12:31:59.000000Z",
            "phonenumber": "(229) 207-5195",
            "phonenumber_verified_at": "2026-05-24T12:31:59.000000Z",
            "report_interval": "weekly",
            "manageable_companies": [
                {
                    "id": "6842934",
                    "uuid": "ec2ff2f7-c024-44ea-9f82-c8fbfb7c36bf",
                    "name": "Gusikowski and Sons"
                }
            ],
            "role": {
                "name": "norole",
                "title": "No role assigned"
            },
            "terms_agreed_at": "2026-05-24T12:31:59.000000Z",
            "sso_provider": null,
            "created_at": "2026-05-24T12:31:59.000000Z",
            "updated_at": "2026-05-24T12:31:59.000000Z",
            "last_login_at": null
        }
    ],
    "links": {
        "first": "/?page=1",
        "last": "/?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [
            {
                "url": null,
                "label": "« Previous",
                "page": null,
                "active": false
            },
            {
                "url": "/?page=1",
                "label": "1",
                "page": 1,
                "active": true
            },
            {
                "url": null,
                "label": "Next »",
                "page": null,
                "active": false
            }
        ],
        "path": "/",
        "per_page": 10,
        "to": 2,
        "total": 2
    }
}

Create User

POST
https://api.securityhive.io
/v1/users
requires authentication

Create a new user for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://api.securityhive.io/v1/users" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"first_name\": \"yrcliypuxpmcmraefwbobu\",
    \"last_name\": \"qpheklaniahavvjxwgjn\",
    \"email\": \"[email protected]\",
    \"phonenumber\": \"+31612345678\",
    \"report_interval\": \"disabled\",
    \"role\": \"admin\"
}"
Example response:
{
    "data": {
        "id": 1,
        "uuid": "00000000-0000-0000-0000-000000000000"
    }
}
{
    "message": "role not found"
}
{
    "message": "phonenumber field contains invalid characters"
}

Retrieve an user

GET
https://api.securityhive.io
/v1/users/{user_uuid}
requires authentication

Retrieves an user for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

user_uuid
string
required

string The id of the user

Example:
d5185592-a4a9-3a0a-bfcc-92d635711522

Query Parameters

include
string

Include additional relationships (comma separated).

Must be one of:
  • company
  • company.type
  • company.partner
  • managingCompany
  • managingCompany.type
  • managingCompany.partner
Example:
managingCompany.partner
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/users/d5185592-a4a9-3a0a-bfcc-92d635711522?include=managingCompany.partner" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": {
        "id": "fd92df49-24db-4654-b4e0-0fab90306faf",
        "company_id": "6723009",
        "managing_company_id": "6723009",
        "first_name": "Flossie",
        "last_name": "Lehner",
        "two_factor_enabled": false,
        "email": "[email protected]",
        "email_verified_at": "2026-05-24T12:31:59.000000Z",
        "phonenumber": "+1-360-498-8943",
        "phonenumber_verified_at": "2026-05-24T12:31:59.000000Z",
        "report_interval": "weekly",
        "manageable_companies": [
            {
                "id": "6723009",
                "uuid": "a8742d50-f933-45f5-a014-9e5ac5de87b9",
                "name": "Hansen, Stamm and Predovic"
            }
        ],
        "role": {
            "name": "norole",
            "title": "No role assigned"
        },
        "terms_agreed_at": "2026-05-24T12:31:59.000000Z",
        "sso_provider": null,
        "created_at": "2026-05-24T12:31:59.000000Z",
        "updated_at": "2026-05-24T12:31:59.000000Z",
        "last_login_at": null
    }
}
{
    "message": "user not found"
}

Update an user

PATCH
https://api.securityhive.io
/v1/users/{user_uuid}
requires authentication

Updates an user for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

user_uuid
string
required

string The id of the user

Example:
ffded2e0-4cdb-3298-9569-5b1f1b80e6b4

Body Parameters

Example request:
curl --request PATCH \
    "https://api.securityhive.io/v1/users/ffded2e0-4cdb-3298-9569-5b1f1b80e6b4" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"first_name\": \"John\",
    \"last_name\": \"Doe\",
    \"email\": \"[email protected]\",
    \"phonenumber\": \"+31612345678\",
    \"report_interval\": \"weekly\",
    \"role\": \"admin\"
}"
Example response:
[Empty response]
{
    "message": "The old password is incorrect."
}
{
    "message": "You are not allowed to change the password of another user."
}
{
    "message": "user not found"
}
{
    "message": "phonenumber field contains invalid characters"
}

Vulnerabilities

Manage vulnerabilities that have been discovered on your network.

List vulnerabilities.

GET
https://api.securityhive.io
/v1/vulnerabilities
requires authentication

Retrieve all vulnerabilities for the current company. Look at the 'Retrieve a vulnerability' endpoint for more details on the vulnerability object.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

filter[name]
Filter vulnerabilities by their name
Example:
SQL
filter[host]
Filter vulnerabilities found on host
Example:
192.168.1.1
filter[hostname]
Filter vulnerabilities found on hostname
Example:
laptop-1.local
filter[status]
Filter vulnerabilities by their status
Must be one of:
  • Resolved
  • Unresolved
  • Accepted
  • Detected
  • Expired
Example:
Unresolved
filter[threat]
Filter vulnerabilities by their threat level
Must be one of:
  • Log
  • Low
  • Medium
  • High
  • Critical
Example:
Log
filter[scan_id]
Filter vulnerabilities found by given scan_id
Example:
123
filter[family]
Filter vulnerabilities by their family
Example:
SQL Injection
sort
The column(s) to sort by. Prefix with - for descending order. Eg sort=-name
Must be one of:
  • name
  • port
  • cvss_base_score
  • epss_score
  • qod_type
  • last_seen
Example:
port

Body Parameters

Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/vulnerabilities?filter%5Bname%5D=SQL&filter%5Bhost%5D=192.168.1.1&filter%5Bhostname%5D=laptop-1.local&filter%5Bstatus%5D=Unresolved&filter%5Bthreat%5D=Log&filter%5Bscan_id%5D=123&filter%5Bfamily%5D=SQL+Injection&sort=port" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"filter\": {
        \"name\": \"neddqeryenwusbrnrtrei\",
        \"threat_level\": \"Low\",
        \"host\": \"xnskeohga\",
        \"hostname\": \"artagifdyxiymzktes\",
        \"status\": \"Detected\",
        \"scan_id\": \"7e988ccd-9ee3-35a7-a0ea-7882338e12da\"
    },
    \"per_page\": 17
}"
Example response:
{
    "data": [
        {
            "id": "a1db2512-3d43-468e-995a-e30e94028463",
            "asset_id": "a1db2512-322f-49f7-b7ef-a3a901d03b59",
            "company_id": "7149616",
            "vulnerability_definition_id": "a1db2512-3c66-4bb2-bad5-989b121a17a0",
            "vulnerability_definition": {
                "id": "a1db2512-3c66-4bb2-bad5-989b121a17a0",
                "name": "4 exploitable through enim manipulation",
                "description": "Quae eligendi eius voluptas ea sit perferendis nam. Ut iusto a et asperiores possimus aperiam. Quo et voluptatem quaerat deleniti.",
                "solution": "Et cupiditate omnis quia necessitatibus. Qui et rem illo excepturi eligendi. Libero ab odio est commodi reprehenderit. Voluptatum occaecati cupiditate vero voluptatum.",
                "category": "4",
                "threat_level": "Low",
                "definition_type": "openvas",
                "definition": {
                    "id": "a1db2512-39c7-4d1c-83ac-8ca9b3ea294c",
                    "o_id": "6db1b6a3-662e-3acb-af87-a5796f6a2e63",
                    "name": "4 exploitable through enim manipulation",
                    "family": "4",
                    "reference_urls": "http://www.toy.com/, http://wisozk.info/",
                    "reference_cves": "CVE-2023-2653, CVE-2021-4719",
                    "solution_type": "Configuration Change",
                    "solution_description": "Et cupiditate omnis quia necessitatibus. Qui et rem illo excepturi eligendi. Libero ab odio est commodi reprehenderit. Voluptatum occaecati cupiditate vero voluptatum.",
                    "summary": "Quae eligendi eius voluptas ea sit perferendis nam. Ut iusto a et asperiores possimus aperiam. Quo et voluptatem quaerat deleniti.",
                    "insight": "Expedita cupiditate a ut et commodi. Tempora assumenda quasi enim incidunt architecto rerum. Commodi ullam sunt perferendis. Laborum est beatae reprehenderit qui.",
                    "affected": "Et fugit beatae voluptatum. Sit amet iure sint similique id. Ullam in nobis est in commodi.",
                    "impact": "Ratione sunt officiis pariatur est ut. Incidunt placeat esse eum. Nesciunt sed perspiciatis voluptatem quos ut officiis labore.",
                    "vuldetect": "Nulla qui officia ex aspernatur. Quibusdam asperiores accusamus et praesentium. Eius officia optio minima est quo at. Qui aut aut omnis consectetur nisi nemo laborum. Voluptas autem exercitationem dolore ut.",
                    "priority": "High",
                    "qod_type": "registry",
                    "qod_value": 72
                },
                "cvss_base_score": 4.7,
                "cvss_base_vector": "AV:P/AC:H/Au:M/C:N/I:C/A:P",
                "epss": null,
                "created_at": "2026-05-24T12:31:58.000000Z",
                "updated_at": "2026-05-24T12:31:58.000000Z"
            },
            "host": "12.57.229.52",
            "hostname": "hahn.com",
            "port": "general/tcp",
            "details": "Quia modi est et dolore voluptate. Nisi repellat dolorem suscipit et autem ex molestiae. Repudiandae dolorem expedita eum.",
            "status": "Detected",
            "first_seen": "2025-07-28T03:19:26.000000Z",
            "last_seen": "2026-03-15T05:27:49.000000Z",
            "created_at": "2026-05-24T12:31:58.000000Z",
            "updated_at": "2026-05-24T12:31:58.000000Z",
            "name": "4 exploitable through enim manipulation",
            "description": "Quia modi est et dolore voluptate. Nisi repellat dolorem suscipit et autem ex molestiae. Repudiandae dolorem expedita eum.",
            "cvss_base_score": 4.7,
            "cvss_base_vector": "AV:P/AC:H/Au:M/C:N/I:C/A:P",
            "qod_type": "registry",
            "qod_value": 72,
            "threat": "Low",
            "scanner_id": null,
            "scanner_hostname": null,
            "plugin": {
                "id": "a1db2512-39c7-4d1c-83ac-8ca9b3ea294c",
                "o_id": "6db1b6a3-662e-3acb-af87-a5796f6a2e63",
                "name": "4 exploitable through enim manipulation",
                "family": "4",
                "reference_urls": "http://www.toy.com/, http://wisozk.info/",
                "reference_cves": "CVE-2023-2653, CVE-2021-4719",
                "solution_type": "Configuration Change",
                "solution_description": "Et cupiditate omnis quia necessitatibus. Qui et rem illo excepturi eligendi. Libero ab odio est commodi reprehenderit. Voluptatum occaecati cupiditate vero voluptatum.",
                "summary": "Quae eligendi eius voluptas ea sit perferendis nam. Ut iusto a et asperiores possimus aperiam. Quo et voluptatem quaerat deleniti.",
                "insight": "Expedita cupiditate a ut et commodi. Tempora assumenda quasi enim incidunt architecto rerum. Commodi ullam sunt perferendis. Laborum est beatae reprehenderit qui.",
                "affected": "Et fugit beatae voluptatum. Sit amet iure sint similique id. Ullam in nobis est in commodi.",
                "impact": "Ratione sunt officiis pariatur est ut. Incidunt placeat esse eum. Nesciunt sed perspiciatis voluptatem quos ut officiis labore.",
                "vuldetect": "Nulla qui officia ex aspernatur. Quibusdam asperiores accusamus et praesentium. Eius officia optio minima est quo at. Qui aut aut omnis consectetur nisi nemo laborum. Voluptas autem exercitationem dolore ut.",
                "priority": "High",
                "qod_type": "registry",
                "qod_value": 72
            }
        },
        {
            "id": "a1db2512-466e-4767-8fc9-b3e5bf6d62d4",
            "asset_id": "a1db2512-420c-4984-a696-f40e4dffb711",
            "company_id": "6354303",
            "vulnerability_definition_id": "a1db2512-45ea-4542-a1b7-c723257512cd",
            "vulnerability_definition": {
                "id": "a1db2512-45ea-4542-a1b7-c723257512cd",
                "name": "Unnecessary Services Enabled in earum",
                "description": "Quibusdam sed velit quis aut laboriosam aut autem laborum. Ut modi sit ut quia quas adipisci impedit. Voluptas et voluptatum reiciendis ut nisi recusandae.",
                "solution": "Vero pariatur harum dignissimos sequi neque autem fuga. Neque excepturi asperiores sit qui autem quia et. Provident repellat architecto tempore quae.",
                "category": "Unnecessary Services Enabled",
                "threat_level": "High",
                "definition_type": "openvas",
                "definition": {
                    "id": "a1db2512-44a6-4075-bfe0-403c00f161bc",
                    "o_id": "7a8507f6-16ab-36ec-96c0-eb2944b02237",
                    "name": "Unnecessary Services Enabled in earum",
                    "family": "Unnecessary Services Enabled",
                    "reference_urls": "http://turner.com/, http://mayert.net/molestias-cum-magnam-debitis-distinctio-rem-eum",
                    "reference_cves": "CVE-2020-1757, CVE-2018-4933",
                    "solution_type": "Mitigation",
                    "solution_description": "Vero pariatur harum dignissimos sequi neque autem fuga. Neque excepturi asperiores sit qui autem quia et. Provident repellat architecto tempore quae.",
                    "summary": "Quibusdam sed velit quis aut laboriosam aut autem laborum. Ut modi sit ut quia quas adipisci impedit. Voluptas et voluptatum reiciendis ut nisi recusandae.",
                    "insight": "Perferendis in enim placeat tempora iusto quo ad quisquam. Sequi numquam quos quasi deleniti nulla. Consequatur consequatur nam molestiae hic.",
                    "affected": "Magnam quia ut totam. Autem est quidem voluptatum aliquam ut et. Culpa doloremque et deleniti voluptas qui in. Est in maxime voluptatem earum et explicabo.",
                    "impact": "Blanditiis aut voluptas ullam atque. Provident pariatur eius asperiores non ipsa autem. Accusantium eveniet eligendi illo.",
                    "vuldetect": "Dolor laboriosam qui facilis. Esse velit voluptas quia error sapiente voluptatem. Inventore illum aut id ad tempore quia. Quos aspernatur omnis qui eum asperiores et praesentium.",
                    "priority": "Log",
                    "qod_type": "exploit",
                    "qod_value": 5
                },
                "cvss_base_score": 1.5,
                "cvss_base_vector": "AV:N/AC:L/Au:M/C:C/I:C/A:C",
                "epss": null,
                "created_at": "2026-05-24T12:31:58.000000Z",
                "updated_at": "2026-05-24T12:31:58.000000Z"
            },
            "host": "123.207.166.196",
            "hostname": "cormier.net",
            "port": "5432/tcp",
            "details": "Repellat necessitatibus ea ut et dolor reiciendis deserunt. Et sint sed et officia. Dolores enim animi a porro magni commodi. Dolorum minima cum aut et placeat dolorum aut.",
            "status": "Accepted",
            "first_seen": "2026-05-15T16:27:35.000000Z",
            "last_seen": "2026-05-23T22:59:22.000000Z",
            "created_at": "2026-05-24T12:31:58.000000Z",
            "updated_at": "2026-05-24T12:31:58.000000Z",
            "name": "Unnecessary Services Enabled in earum",
            "description": "Repellat necessitatibus ea ut et dolor reiciendis deserunt. Et sint sed et officia. Dolores enim animi a porro magni commodi. Dolorum minima cum aut et placeat dolorum aut.",
            "cvss_base_score": 1.5,
            "cvss_base_vector": "AV:N/AC:L/Au:M/C:C/I:C/A:C",
            "qod_type": "exploit",
            "qod_value": 5,
            "threat": "High",
            "scanner_id": null,
            "scanner_hostname": null,
            "plugin": {
                "id": "a1db2512-44a6-4075-bfe0-403c00f161bc",
                "o_id": "7a8507f6-16ab-36ec-96c0-eb2944b02237",
                "name": "Unnecessary Services Enabled in earum",
                "family": "Unnecessary Services Enabled",
                "reference_urls": "http://turner.com/, http://mayert.net/molestias-cum-magnam-debitis-distinctio-rem-eum",
                "reference_cves": "CVE-2020-1757, CVE-2018-4933",
                "solution_type": "Mitigation",
                "solution_description": "Vero pariatur harum dignissimos sequi neque autem fuga. Neque excepturi asperiores sit qui autem quia et. Provident repellat architecto tempore quae.",
                "summary": "Quibusdam sed velit quis aut laboriosam aut autem laborum. Ut modi sit ut quia quas adipisci impedit. Voluptas et voluptatum reiciendis ut nisi recusandae.",
                "insight": "Perferendis in enim placeat tempora iusto quo ad quisquam. Sequi numquam quos quasi deleniti nulla. Consequatur consequatur nam molestiae hic.",
                "affected": "Magnam quia ut totam. Autem est quidem voluptatum aliquam ut et. Culpa doloremque et deleniti voluptas qui in. Est in maxime voluptatem earum et explicabo.",
                "impact": "Blanditiis aut voluptas ullam atque. Provident pariatur eius asperiores non ipsa autem. Accusantium eveniet eligendi illo.",
                "vuldetect": "Dolor laboriosam qui facilis. Esse velit voluptas quia error sapiente voluptatem. Inventore illum aut id ad tempore quia. Quos aspernatur omnis qui eum asperiores et praesentium.",
                "priority": "Log",
                "qod_type": "exploit",
                "qod_value": 5
            }
        }
    ],
    "links": {
        "first": "/?page=1",
        "last": "/?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [
            {
                "url": null,
                "label": "« Previous",
                "page": null,
                "active": false
            },
            {
                "url": "/?page=1",
                "label": "1",
                "page": 1,
                "active": true
            },
            {
                "url": null,
                "label": "Next »",
                "page": null,
                "active": false
            }
        ],
        "path": "/",
        "per_page": 10,
        "to": 2,
        "total": 2
    }
}

Retrieve a vulnerability.

GET
https://api.securityhive.io
/v1/vulnerabilities/{id}
requires authentication

Retrieves a vulnerability by its ID.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

id
string
required

The ID of the vulnerability.

Example:
laborum
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/vulnerabilities/laborum" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": {
        "id": "a1db2512-555a-4b8f-9efb-fc9d5040960e",
        "asset_id": "a1db2512-50b4-4a20-9082-8c971d47247b",
        "company_id": "1265717",
        "vulnerability_definition_id": "a1db2512-54da-4119-b57d-b2157b93ab31",
        "vulnerability_definition": {
            "id": "a1db2512-54da-4119-b57d-b2157b93ab31",
            "name": "Weak Passwords via eius input",
            "description": "Earum perferendis voluptatum odio perferendis delectus ut asperiores. Eum iusto laborum iste. Autem vero labore inventore nemo ex quae.",
            "solution": "Nesciunt provident non numquam eos recusandae rem id. Ut dolorem corporis qui corrupti est consectetur. Et sit nisi laborum laudantium minima occaecati amet. Aut architecto deleniti eos quasi optio unde eaque. Sed aut et quod officiis.",
            "category": "Weak Passwords",
            "threat_level": "Medium",
            "definition_type": "openvas",
            "definition": {
                "id": "a1db2512-537a-4ec5-9232-8ae07615d918",
                "o_id": "fe4dc678-86c5-3628-ae75-e575576e4fa8",
                "name": "Weak Passwords via eius input",
                "family": "Weak Passwords",
                "reference_urls": "http://denesik.org/, https://schiller.info/ut-officia-omnis-a-est-necessitatibus-quibusdam.html",
                "reference_cves": "CVE-2022-4708, CVE-2015-8958",
                "solution_type": "Configuration Change",
                "solution_description": "Nesciunt provident non numquam eos recusandae rem id. Ut dolorem corporis qui corrupti est consectetur. Et sit nisi laborum laudantium minima occaecati amet. Aut architecto deleniti eos quasi optio unde eaque. Sed aut et quod officiis.",
                "summary": "Earum perferendis voluptatum odio perferendis delectus ut asperiores. Eum iusto laborum iste. Autem vero labore inventore nemo ex quae.",
                "insight": "Sed error tenetur aut. Quibusdam in non velit ut voluptatem consequatur. Saepe culpa quia consequatur qui sed vel.",
                "affected": "Quia error eum deserunt. Quod rem fugit facilis temporibus dolore. Cumque quae quae quisquam. Rem distinctio quibusdam ullam quibusdam recusandae iure fugiat.",
                "impact": "Id eligendi consequatur quidem saepe pariatur temporibus qui. Ducimus ut maiores nostrum laborum id. In accusamus quas et et autem magnam et. Voluptas sit omnis nihil. Quis sed pariatur et. Rem id earum et praesentium.",
                "vuldetect": "Voluptatibus autem quis eos in. Eaque dolores asperiores autem quia vero sed. Eos soluta qui asperiores voluptas quae. Beatae et voluptates nobis.",
                "priority": "Log",
                "qod_type": "package",
                "qod_value": 64
            },
            "cvss_base_score": 3.2,
            "cvss_base_vector": "AV:L/AC:H/Au:N/C:C/I:C/A:P",
            "epss": null,
            "created_at": "2026-05-24T12:31:58.000000Z",
            "updated_at": "2026-05-24T12:31:58.000000Z"
        },
        "host": "19.105.218.158",
        "hostname": "weber.biz",
        "port": "3389/tcp",
        "details": "Aut est at et nemo eaque cumque ea. Qui quaerat quod voluptatum. Debitis autem non quia ducimus occaecati quasi fuga.",
        "status": "Detected",
        "first_seen": "2025-09-09T08:02:59.000000Z",
        "last_seen": "2026-04-11T23:00:13.000000Z",
        "created_at": "2026-05-24T12:31:58.000000Z",
        "updated_at": "2026-05-24T12:31:58.000000Z",
        "name": "Weak Passwords via eius input",
        "description": "Aut est at et nemo eaque cumque ea. Qui quaerat quod voluptatum. Debitis autem non quia ducimus occaecati quasi fuga.",
        "cvss_base_score": 3.2,
        "cvss_base_vector": "AV:L/AC:H/Au:N/C:C/I:C/A:P",
        "qod_type": "package",
        "qod_value": 64,
        "threat": "Medium",
        "scanner_id": null,
        "scanner_hostname": null,
        "plugin": {
            "id": "a1db2512-537a-4ec5-9232-8ae07615d918",
            "o_id": "fe4dc678-86c5-3628-ae75-e575576e4fa8",
            "name": "Weak Passwords via eius input",
            "family": "Weak Passwords",
            "reference_urls": "http://denesik.org/, https://schiller.info/ut-officia-omnis-a-est-necessitatibus-quibusdam.html",
            "reference_cves": "CVE-2022-4708, CVE-2015-8958",
            "solution_type": "Configuration Change",
            "solution_description": "Nesciunt provident non numquam eos recusandae rem id. Ut dolorem corporis qui corrupti est consectetur. Et sit nisi laborum laudantium minima occaecati amet. Aut architecto deleniti eos quasi optio unde eaque. Sed aut et quod officiis.",
            "summary": "Earum perferendis voluptatum odio perferendis delectus ut asperiores. Eum iusto laborum iste. Autem vero labore inventore nemo ex quae.",
            "insight": "Sed error tenetur aut. Quibusdam in non velit ut voluptatem consequatur. Saepe culpa quia consequatur qui sed vel.",
            "affected": "Quia error eum deserunt. Quod rem fugit facilis temporibus dolore. Cumque quae quae quisquam. Rem distinctio quibusdam ullam quibusdam recusandae iure fugiat.",
            "impact": "Id eligendi consequatur quidem saepe pariatur temporibus qui. Ducimus ut maiores nostrum laborum id. In accusamus quas et et autem magnam et. Voluptas sit omnis nihil. Quis sed pariatur et. Rem id earum et praesentium.",
            "vuldetect": "Voluptatibus autem quis eos in. Eaque dolores asperiores autem quia vero sed. Eos soluta qui asperiores voluptas quae. Beatae et voluptates nobis.",
            "priority": "Log",
            "qod_type": "package",
            "qod_value": 64
        }
    }
}

Webhook Events

APIs for managing webhook events

List all webhook events

GET
https://api.securityhive.io
/v1/webhook-events
requires authentication

Lists all webhook events for the authenticated user's company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Query Parameters

sort
string

Sort the results by column(s) (comma separated).

Must be one of:
  • webhook_id
  • event
  • status
  • next_retry_at
Example:
event
filter
string

Filter the results by column(s) (comma separated).

Must be one of:
  • webhook_id
  • event
  • status
Example:
status
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/webhook-events?sort=event&filter=status" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": [
        {
            "id": "a1db2511-f674-47cf-a951-2dc47d57a156",
            "webhook_id": "a1db2511-f59d-4fd8-acd3-f574155ef539",
            "event": "possimus",
            "payload": {
                "key": "value"
            },
            "status": "pending",
            "retries": 0,
            "next_retry_at": null,
            "last_sent_at": null,
            "created_at": "2026-05-24T12:31:58.000000Z",
            "updated_at": "2026-05-24T12:31:58.000000Z"
        },
        {
            "id": "a1db2511-fa0e-44c0-94bf-771375e3cd66",
            "webhook_id": "a1db2511-f978-4e6a-90dc-4d8c4213f045",
            "event": "itaque",
            "payload": {
                "key": "value"
            },
            "status": "pending",
            "retries": 0,
            "next_retry_at": null,
            "last_sent_at": null,
            "created_at": "2026-05-24T12:31:58.000000Z",
            "updated_at": "2026-05-24T12:31:58.000000Z"
        }
    ],
    "links": {
        "first": "/?page=1",
        "last": "/?page=1",
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [
            {
                "url": null,
                "label": "« Previous",
                "page": null,
                "active": false
            },
            {
                "url": "/?page=1",
                "label": "1",
                "page": 1,
                "active": true
            },
            {
                "url": null,
                "label": "Next »",
                "page": null,
                "active": false
            }
        ],
        "path": "/",
        "per_page": 10,
        "to": 2,
        "total": 2
    }
}

List all available webhook event types

GET
https://api.securityhive.io
/v1/webhook-events/types
requires authentication

Lists all webhook event types that can be used.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/webhook-events/types" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
Headers
cache-control: no-cache, private
content-type: application/json
content-security-policy-report-only: default-src 'self'; script-src 'self' 'nonce-GzMyDmQ1lzk7TVoSIDWm0QmG29Dis7xdhgAetNHx' https://js.chargebee.com https://*.intercom.io https://*.intercomcdn.com https://static.cloudflareinsights.com https://unpkg.com https://cdn.jsdelivr.net https://medv.io https://assets.calendly.com; script-src-elem 'self' 'nonce-GzMyDmQ1lzk7TVoSIDWm0QmG29Dis7xdhgAetNHx' https://js.chargebee.com https://*.intercom.io https://*.intercomcdn.com https://static.cloudflareinsights.com https://unpkg.com https://cdn.jsdelivr.net https://medv.io https://assets.calendly.com; script-src-attr 'none'; style-src 'self' 'unsafe-inline' https://fonts.bunny.net https://*.intercomcdn.com https://unpkg.com; style-src-elem 'self' 'unsafe-inline' https://fonts.bunny.net https://*.intercomcdn.com https://unpkg.com; img-src 'self' data: blob: https://*.intercomcdn.com https://*.intercomcdn.eu https://*.intercomassets.eu https://*.intercom-attachments.eu https://www.gravatar.com https://*.tile.openstreetmap.org; font-src 'self' https://fonts.bunny.net https://*.intercomcdn.com; connect-src 'self' https://um.securityhive.io https://app.securityhive.io https://*.intercom.io wss://*.intercom.io wss://localhost:8090; frame-src 'self' https://um.securityhive.io https://js.chargebee.com https://securityhive.chargebee.com https://intercom-sheets.com https://calendly.com; frame-ancestors 'none'; form-action 'self'; base-uri 'self'; object-src 'none'; worker-src 'self'; manifest-src 'self'; media-src 'self' data: https://*.intercomcdn.com; upgrade-insecure-requests
content-security-policy: frame-src 'self' https://um.securityhive.io https://js.chargebee.com https://securityhive.chargebee.com https://intercom-sheets.com https://calendly.com; frame-ancestors 'none';
permissions-policy: geolocation=(), microphone=(), camera=(), fullscreen=()
x-content-type-options: nosniff
cross-origin-resource-policy: same-site
referrer-policy: strict-origin-when-cross-origin
vary: Origin
{
    "message": "Unauthenticated."
}

Retrieve an webhook event

GET
https://api.securityhive.io
/v1/webhook-events/{webhookEvent_id}
requires authentication

Retrieves an webhook event for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

webhookEvent_id
string
required

The ID of the webhookEvent.

Example:
a1db2511-f674-47cf-a951-2dc47d57a156
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/webhook-events/a1db2511-f674-47cf-a951-2dc47d57a156" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": {
        "id": "a1db2512-0599-4c86-ab73-50059d976318",
        "webhook_id": "a1db2512-04f0-4191-b921-b3cfd115ea5e",
        "event": "nulla",
        "payload": {
            "key": "value"
        },
        "status": "pending",
        "retries": 0,
        "next_retry_at": null,
        "last_sent_at": null,
        "created_at": "2026-05-24T12:31:58.000000Z",
        "updated_at": "2026-05-24T12:31:58.000000Z"
    }
}
{
    "message": "webhook event not found"
}

Webhooks

APIs for managing webhooks

List all webhooks

GET
https://api.securityhive.io
/v1/webhooks
requires authentication

Lists all webhooks for the authenticated user's company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/webhooks" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": [
        {
            "id": "a1db2511-c1f3-492a-9294-940a7a4f8bc8",
            "company_id": "6fa47559-ed23-4ff7-8fda-2803597f1340",
            "url": "https://wunsch.com",
            "description": null,
            "events": [],
            "secret": "3e9ba4e92353e42d465213823842c8651e2105f0cf2ae8d5b103fe5a67947904",
            "last_sent_at": null,
            "created_at": "2026-05-24T12:31:58.000000Z",
            "updated_at": "2026-05-24T12:31:58.000000Z"
        },
        {
            "id": "a1db2511-deed-41fa-a92e-f3b3069b00a4",
            "company_id": "c0d2d469-170d-4b0c-91a7-e2da9a0851f3",
            "url": "https://oconner.com",
            "description": null,
            "events": [],
            "secret": "7c574dbe85bc620b102ce97893b01c1552ea025eb6c5916f493cdd484377cc1e",
            "last_sent_at": null,
            "created_at": "2026-05-24T12:31:58.000000Z",
            "updated_at": "2026-05-24T12:31:58.000000Z"
        }
    ]
}

Create Webhook

POST
https://api.securityhive.io
/v1/webhooks
requires authentication

Create a new webhook for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Example request:
curl --request POST \
    "https://api.securityhive.io/v1/webhooks" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"url\": \"http:\\/\\/www.bednar.info\\/\",
    \"description\": \"Odio est voluptatem explicabo expedita.\"
}"
Example response:
{
    "data": {
        "id": "00000000-0000-0000-0000-000000000000"
    }
}
{
    "message": "The url has already been taken."
}
{
    "message": "invalid url"
}

Retrieve a webhook

GET
https://api.securityhive.io
/v1/webhooks/{webhook_id}
requires authentication

Retrieves a webhook for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

webhook_id
string
required

The ID of the webhook.

Example:
a1db2511-c1f3-492a-9294-940a7a4f8bc8
Example request:
curl --request GET \
    --get "https://api.securityhive.io/v1/webhooks/a1db2511-c1f3-492a-9294-940a7a4f8bc8" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": {
        "id": "a1db2511-e75e-437a-9db1-a61aa44d0e0d",
        "company_id": "8d4d178d-573e-4000-8b01-6fc32da92088",
        "url": "https://feest.com",
        "description": null,
        "events": [],
        "secret": "e7d49f524aae36c07c855d5454c178087a82e551f45d4129109a27889ce2e0e5",
        "last_sent_at": null,
        "created_at": "2026-05-24T12:31:58.000000Z",
        "updated_at": "2026-05-24T12:31:58.000000Z"
    }
}
{
    "message": "webhook not found"
}

Rotate webhook secret

POST
https://api.securityhive.io
/v1/webhooks/{webhook_id}/rotate-secret
requires authentication

Rotates the secret for the webhook.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

webhook_id
string
required

The ID of the webhook.

Example:
a1db2511-c1f3-492a-9294-940a7a4f8bc8
Example request:
curl --request POST \
    "https://api.securityhive.io/v1/webhooks/a1db2511-c1f3-492a-9294-940a7a4f8bc8/rotate-secret" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
{
    "data": {
        "id": "a1db2511-ebb6-417b-8da0-abfb5f581108",
        "company_id": "ff402a7e-2bca-4760-b960-a740c036211f",
        "url": "https://buckridge.com",
        "description": null,
        "events": [],
        "secret": "11603aaaf9b7668c944fbc6b48154b3f33947da2cf24ca34bd094a9f50e5dcdf",
        "last_sent_at": null,
        "created_at": "2026-05-24T12:31:58.000000Z",
        "updated_at": "2026-05-24T12:31:58.000000Z"
    }
}
{
    "message": "webhook not found"
}

Test a webhook

POST
https://api.securityhive.io
/v1/webhooks/{webhook_id}/test
requires authentication

Tests the webhook by sending a test event.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

webhook_id
string
required

The ID of the webhook.

Example:
a1db2511-c1f3-492a-9294-940a7a4f8bc8
Example request:
curl --request POST \
    "https://api.securityhive.io/v1/webhooks/a1db2511-c1f3-492a-9294-940a7a4f8bc8/test" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[Empty response]
{
    "message": "webhook not found"
}

Update a webhook

PATCH
https://api.securityhive.io
/v1/webhooks/{webhook_id}
requires authentication

Updates a webhook for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

webhook_id
string
required

The ID of the webhook.

Example:
a1db2511-c1f3-492a-9294-940a7a4f8bc8

Body Parameters

Example request:
curl --request PATCH \
    "https://api.securityhive.io/v1/webhooks/a1db2511-c1f3-492a-9294-940a7a4f8bc8" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"url\": \"http:\\/\\/rutherford.biz\\/\",
    \"description\": \"Aut doloribus consequatur quae nihil rerum mollitia sit.\"
}"
Example response:
{
    "message": "webhook not found"
}
{
    "message": "The url has already been taken."
}
{
    "message": "invalid url"
}

Delete an webhook

DELETE
https://api.securityhive.io
/v1/webhooks/{webhook_id}
requires authentication

Deletes an webhook for the current company.

Headers

Authorization
Example:
Bearer {YOUR_PERSONAL_ACCESS_TOKEN}
Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

webhook_id
string
required

The ID of the webhook.

Example:
a1db2511-c1f3-492a-9294-940a7a4f8bc8
Example request:
curl --request DELETE \
    "https://api.securityhive.io/v1/webhooks/a1db2511-c1f3-492a-9294-940a7a4f8bc8" \
    --header "Authorization: Bearer {YOUR_PERSONAL_ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Example response:
[Empty response]
{
    "message": "webhook not found"
}