openapi: 3.0.3 info: title: 'SecurityHive API Documentation' description: '' version: 1.0.0 servers: - url: 'https://api.securityhive.io' tags: - name: Applications description: 'Manage the applications that have been discovered on your assets.' - name: Assets description: 'Manage assets that have been discovered on your network.' - name: Certificates description: 'Manage certificates that have been discovered on your network.' - name: Detections description: 'Manage your honeypot detections' - name: Endpoints description: '' - name: Honeypots description: 'Manage your honeypots.' - name: Integrations description: "\nAPIs for managing integrations" - name: Me description: "\nAPIs for managing the authenticated user" - name: Tags description: 'Tags can be used to categorize assets.' - name: Users description: "\nAPIs for managing users" - name: Vulnerabilities description: 'Manage vulnerabilities that have been discovered on your network.' - name: 'Webhook Events' description: "\nAPIs for managing webhook events" - name: Webhooks description: "\nAPIs for managing webhooks" components: securitySchemes: default: type: http scheme: bearer description: 'You can retrieve your token by visiting the dashboard and clicking Generate new token at your profile.' security: - default: [] paths: /v1/applications: get: summary: 'List applications.' operationId: listApplications description: " Retrieve all applications for the current company. Look at the 'Retrieve an application' endpoint for more details on the application object.\n " parameters: - in: query name: 'filter[vendor]' description: '' example: microsoft required: false schema: type: 'Filter applications by vendor.' description: '' example: microsoft - in: query name: 'filter[product]' description: '' example: windows required: false schema: type: 'Filter applications by product.' description: '' example: windows - in: query name: 'filter[version]' description: '' example: 1.2.0 required: false schema: type: 'Filter applications by version.' description: '' example: 1.2.0 - in: query name: sort description: '' example: version required: false schema: type: 'The column(s) to sort by. Prefix with - for descending order. Eg sort=-vendor' description: '' example: version enum: - cpe - vendor - product - version - in: query name: include description: '' example: assets required: false schema: type: 'Include additional relationships (comma separated).' description: '' example: assets enum: - assets responses: 200: description: '' content: application/json: schema: type: object example: data: - id: a2e63db6-dd0a-4af9-bd12-c4a14fce358c cpe: 'cpe:2.3:a:apple:ios:*:*:*:*:*:*:*:*' vendor: Apple product: iOS version: 17.71.2357 update: build5099 created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' - id: a2e63db6-dea8-471b-8002-95a2a54ba341 cpe: 'cpe:2.3:a:adobe:acrobat:*:*:*:*:*:*:*:*' vendor: Adobe product: Acrobat version: 14.28.1431 update: patch1 created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.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 properties: data: type: array example: - id: a2e63db6-dd0a-4af9-bd12-c4a14fce358c cpe: 'cpe:2.3:a:apple:ios:*:*:*:*:*:*:*:*' vendor: Apple product: iOS version: 17.71.2357 update: build5099 created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' - id: a2e63db6-dea8-471b-8002-95a2a54ba341 cpe: 'cpe:2.3:a:adobe:acrobat:*:*:*:*:*:*:*:*' vendor: Adobe product: Acrobat version: 14.28.1431 update: patch1 created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' items: type: object properties: id: type: string example: a2e63db6-dd0a-4af9-bd12-c4a14fce358c cpe: type: string example: 'cpe:2.3:a:apple:ios:*:*:*:*:*:*:*:*' vendor: type: string example: Apple product: type: string example: iOS version: type: string example: 17.71.2357 update: type: string example: build5099 created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' links: type: object properties: first: type: string example: '/?page=1' last: type: string example: '/?page=1' prev: type: string example: null nullable: true next: type: string example: null nullable: true meta: type: object properties: current_page: type: integer example: 1 from: type: integer example: 1 last_page: type: integer example: 1 links: type: array example: - 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 items: type: object properties: url: type: string example: null nullable: true label: type: string example: '« Previous' page: type: string example: null nullable: true active: type: boolean example: false path: type: string example: / per_page: type: integer example: 10 to: type: integer example: 2 total: type: integer example: 2 tags: - Applications /v1/applications/export: get: summary: 'Export applications.' operationId: exportApplications description: " Export all applications for the current company in CSV or XLSX format.\n " parameters: - in: query name: type description: '' example: csv required: true schema: type: 'The type of export to generate' description: '' example: csv enum: - csv - xlsx - in: query name: 'filter[vendor]' description: '' example: microsoft required: false schema: type: 'Filter applications by vendor.' description: '' example: microsoft - in: query name: 'filter[product]' description: '' example: windows required: false schema: type: 'Filter applications by product.' description: '' example: windows - in: query name: 'filter[version]' description: '' example: 1.2.0 required: false schema: type: 'Filter applications by version.' description: '' example: 1.2.0 - in: query name: sort description: '' example: version required: false schema: type: 'The column(s) to sort by. Prefix with - for descending order. Eg sort=-vendor' description: '' example: version enum: - cpe - vendor - product - version responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Applications requestBody: required: true content: application/json: schema: type: object properties: type: type: string description: '' example: xlsx enum: - csv - xlsx required: - type '/v1/applications/{id}': get: summary: 'Retrieve an application.' operationId: retrieveAnApplication description: " Retrieves an by its ID.\n " parameters: - in: query name: include description: '' example: assets required: false schema: type: 'Include additional relationships (comma separated).' description: '' example: assets enum: - assets responses: 200: description: 'Successfully retrieved application' content: application/json: schema: type: object example: data: id: a2e63db6-e364-4739-8763-a5a8a4b1f70e cpe: 'cpe:2.3:a:ibm:spss:*:*:*:*:*:*:*:*' vendor: IBM product: SPSS version: 16.35.8908 update: patch1 created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' properties: data: type: object properties: id: type: string example: a2e63db6-e364-4739-8763-a5a8a4b1f70e cpe: type: string example: 'cpe:2.3:a:ibm:spss:*:*:*:*:*:*:*:*' vendor: type: string example: IBM product: type: string example: SPSS version: type: string example: 16.35.8908 update: type: string example: patch1 created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' tags: - Applications parameters: - in: path name: id description: 'The ID of the application.' example: DDbefadf-ddbF-DECc-fdef-FFFBfefFfFdE required: true schema: type: string /v1/assets: get: summary: 'List assets.' operationId: listAssets description: " Retrieve all assets for the current company. Look at the 'Retrieve an asset' endpoint for more details on the asset object.\n " parameters: - in: query name: 'filter[name]' description: '' example: Laptop-1 required: false schema: type: 'Filter assets by name.' description: '' example: Laptop-1 - in: query name: 'filter[host]' description: '' example: 192.168.1.1 required: false schema: type: 'Filter assets by their IP-address.' description: '' example: 192.168.1.1 - in: query name: 'filter[mac_address]' description: '' example: '3A:5E:D6:95:BF' required: false schema: type: 'Filter assets by their MAC-address.' description: '' example: '3A:5E:D6:95:BF' - in: query name: 'filter[hostname]' description: '' example: laptop-1.local required: false schema: type: 'Filter assets by their hostname.' description: '' example: laptop-1.local - in: query name: 'filter[tags][]' description: '' example: 'New,Old' required: false schema: type: 'Filter assets by their tags.' description: '' example: 'New,Old' - in: query name: 'filter[licensed]' description: '' example: 'true,false' required: false schema: type: 'Filter assets by licensed status.' description: '' example: 'true,false' - in: query name: sort description: '' example: name required: false schema: type: 'The column(s) to sort by. Prefix with - for descending order. Eg sort=-name' description: '' example: name enum: - name - host - last_seen - licensed - in: query name: include description: '' example: certificates required: false schema: type: 'Include additional relationships (comma separated).' description: '' example: certificates enum: - certificates - software - tags - scans responses: 200: description: '' content: application/json: schema: type: object example: data: - id: a2e63db6-8739-4aee-b07d-121bf60629e6 company_id: '1668915' name: 'Mrs. Yazmin Harber' identifier: 6.7.111.66 host: 6.7.111.66 mac_address: null hostname: rogahn.info operating_system: est operating_system_name: doloribus first_seen: '1989-11-17T00:53:24.000000Z' last_seen: '1999-02-13T13:28:09.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-10-10T04:07:16.000000Z' - id: a2e63db6-8af7-469d-95f5-e8466e385fe5 company_id: '7076759' name: 'Florine Kertzmann' identifier: 254.131.252.51 host: 254.131.252.51 mac_address: null hostname: koss.com operating_system: nisi operating_system_name: est first_seen: '2023-10-31T23:43:58.000000Z' last_seen: '2018-04-05T05:03:21.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-10-22T05:00:24.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 properties: data: type: array example: - id: a2e63db6-8739-4aee-b07d-121bf60629e6 company_id: '1668915' name: 'Mrs. Yazmin Harber' identifier: 6.7.111.66 host: 6.7.111.66 mac_address: null hostname: rogahn.info operating_system: est operating_system_name: doloribus first_seen: '1989-11-17T00:53:24.000000Z' last_seen: '1999-02-13T13:28:09.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-10-10T04:07:16.000000Z' - id: a2e63db6-8af7-469d-95f5-e8466e385fe5 company_id: '7076759' name: 'Florine Kertzmann' identifier: 254.131.252.51 host: 254.131.252.51 mac_address: null hostname: koss.com operating_system: nisi operating_system_name: est first_seen: '2023-10-31T23:43:58.000000Z' last_seen: '2018-04-05T05:03:21.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-10-22T05:00:24.000000Z' items: type: object properties: id: type: string example: a2e63db6-8739-4aee-b07d-121bf60629e6 company_id: type: string example: '1668915' name: type: string example: 'Mrs. Yazmin Harber' identifier: type: string example: 6.7.111.66 host: type: string example: 6.7.111.66 mac_address: type: string example: null nullable: true hostname: type: string example: rogahn.info operating_system: type: string example: est operating_system_name: type: string example: doloribus first_seen: type: string example: '1989-11-17T00:53:24.000000Z' last_seen: type: string example: '1999-02-13T13:28:09.000000Z' open_tcp_ports: type: string example: '80,443' open_udp_ports: type: string example: '53,123' traceroute: type: array example: [] ssh_key: type: string example: null nullable: true average_scan_duration: type: integer example: 0 licensed: type: boolean example: true change_license_at: type: string example: '2026-10-10T04:07:16.000000Z' links: type: object properties: first: type: string example: '/?page=1' last: type: string example: '/?page=1' prev: type: string example: null nullable: true next: type: string example: null nullable: true meta: type: object properties: current_page: type: integer example: 1 from: type: integer example: 1 last_page: type: integer example: 1 links: type: array example: - 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 items: type: object properties: url: type: string example: null nullable: true label: type: string example: '« Previous' page: type: string example: null nullable: true active: type: boolean example: false path: type: string example: / per_page: type: integer example: 10 to: type: integer example: 2 total: type: integer example: 2 tags: - Assets post: summary: 'Create asset.' operationId: createAsset description: "Will create a new asset for the current company. \n " parameters: [] responses: 200: description: 'Successfully created asset' content: application/json: schema: type: object example: data: id: a2e63db6-9633-4c68-80e0-de4b13146fbe company_id: '214119' name: 'Liza Schultz' identifier: 48.193.216.75 host: 48.193.216.75 mac_address: null hostname: harris.info operating_system: non operating_system_name: rerum first_seen: '2011-12-01T01:53:35.000000Z' last_seen: '2014-07-19T15:00:46.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-10-28T06:04:52.000000Z' properties: data: type: object properties: id: type: string example: a2e63db6-9633-4c68-80e0-de4b13146fbe company_id: type: string example: '214119' name: type: string example: 'Liza Schultz' identifier: type: string example: 48.193.216.75 host: type: string example: 48.193.216.75 mac_address: type: string example: null nullable: true hostname: type: string example: harris.info operating_system: type: string example: non operating_system_name: type: string example: rerum first_seen: type: string example: '2011-12-01T01:53:35.000000Z' last_seen: type: string example: '2014-07-19T15:00:46.000000Z' open_tcp_ports: type: string example: '80,443' open_udp_ports: type: string example: '53,123' traceroute: type: array example: [] ssh_key: type: string example: null nullable: true average_scan_duration: type: integer example: 0 licensed: type: boolean example: true change_license_at: type: string example: '2026-10-28T06:04:52.000000Z' 422: description: 'duplicate host found' content: application/json: schema: type: object example: message: 'host must be unique' properties: message: type: string example: 'host must be unique' tags: - Assets requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'Must not be greater than 255 characters.' example: rxnpswslhnbckjfifv host: type: string description: 'A valid IPv4 or IPv6 address. Must be unique' example: dolores licensed: type: boolean description: '' example: false required: - name - host /v1/assets/actions: patch: summary: 'Bulk asset action.' operationId: bulkAssetAction description: "Will perform a bulk action on assets (Add Tags, Remove Tags or delete). \n " parameters: [] responses: 204: description: 'bulk action performed successfully' content: application/json: schema: type: array items: type: object example: [] tags: - Assets requestBody: required: true content: application/json: schema: type: object properties: data: type: array description: 'Must have at least 1 items.' example: - [] items: type: object properties: action: type: string description: '' example: removeLicense enum: - addTags - removeTags - delete - assignLicense - removeLicense id: type: string description: '' example: enim data: type: object description: '' example: [] properties: tags: type: object description: '' example: null properties: { } required: - action - id required: - data '/v1/assets/{id}': get: summary: 'Retrieve an asset.' operationId: retrieveAnAsset description: " Retrieves an asset by its ID.\n " parameters: - in: query name: include description: '' example: tags required: false schema: type: 'Include additional relationships (comma separated).' description: '' example: tags enum: - certificates - software - tags - scans responses: 200: description: 'Successfully retrieved asset' content: application/json: schema: type: object example: data: id: a2e63db6-9baf-4a2e-905e-018cc5959360 company_id: '1875504' name: 'Zackary Heaney' identifier: '20:23:39:25:48:BA' host: 86.178.170.58 mac_address: '20:23:39:25:48:BA' hostname: keebler.info operating_system: eos operating_system_name: ab first_seen: '2018-10-01T07:34:21.000000Z' last_seen: '2019-08-20T13:08:13.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-10-08T03:19:58.000000Z' properties: data: type: object properties: id: type: string example: a2e63db6-9baf-4a2e-905e-018cc5959360 company_id: type: string example: '1875504' name: type: string example: 'Zackary Heaney' identifier: type: string example: '20:23:39:25:48:BA' host: type: string example: 86.178.170.58 mac_address: type: string example: '20:23:39:25:48:BA' hostname: type: string example: keebler.info operating_system: type: string example: eos operating_system_name: type: string example: ab first_seen: type: string example: '2018-10-01T07:34:21.000000Z' last_seen: type: string example: '2019-08-20T13:08:13.000000Z' open_tcp_ports: type: string example: '80,443' open_udp_ports: type: string example: '53,123' traceroute: type: array example: [] ssh_key: type: string example: null nullable: true average_scan_duration: type: integer example: 0 licensed: type: boolean example: false change_license_at: type: string example: '2026-10-08T03:19:58.000000Z' tags: - Assets patch: summary: 'Update asset.' operationId: updateAsset description: "Will update an existing asset \n " parameters: [] responses: 200: description: 'Successfully updated asset' content: application/json: schema: type: object example: data: id: a2e63db6-a15e-464e-84c9-fc07b84eafb6 company_id: '9512035' name: 'Mrs. Verona Weber' identifier: 13.209.45.32 host: 13.209.45.32 mac_address: null hostname: welch.org operating_system: illo operating_system_name: sunt first_seen: '2008-01-09T15:08:06.000000Z' last_seen: '1986-03-17T22:15:24.000000Z' open_tcp_ports: '80,443' open_udp_ports: '53,123' traceroute: [] ssh_key: null average_scan_duration: 0 licensed: false change_license_at: null properties: data: type: object properties: id: type: string example: a2e63db6-a15e-464e-84c9-fc07b84eafb6 company_id: type: string example: '9512035' name: type: string example: 'Mrs. Verona Weber' identifier: type: string example: 13.209.45.32 host: type: string example: 13.209.45.32 mac_address: type: string example: null nullable: true hostname: type: string example: welch.org operating_system: type: string example: illo operating_system_name: type: string example: sunt first_seen: type: string example: '2008-01-09T15:08:06.000000Z' last_seen: type: string example: '1986-03-17T22:15:24.000000Z' open_tcp_ports: type: string example: '80,443' open_udp_ports: type: string example: '53,123' traceroute: type: array example: [] ssh_key: type: string example: null nullable: true average_scan_duration: type: integer example: 0 licensed: type: boolean example: false change_license_at: type: string example: null nullable: true 422: description: 'name field is empty' content: application/json: schema: type: object example: message: 'name is required' properties: message: type: string example: 'name is required' tags: - Assets requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'Must not be greater than 255 characters.' example: hahqahs licensed: type: boolean description: '' example: true delete: summary: 'Delete asset.' operationId: deleteAsset description: "Will delete an existing asset \n " parameters: [] responses: 204: description: 'asset deleted successfully' content: application/json: schema: type: array items: type: object example: [] tags: - Assets parameters: - in: path name: id description: 'The ID of the asset.' example: CBBfacdF-fDFB-acdd-cdEC-EEFDBEfeCDDF required: true schema: type: string /v1/certificates: get: summary: 'List certificates.' operationId: listCertificates description: " Retrieve all certificates for the current company. Look at the 'Retrieve a certificate' endpoint for more details on the certificate object.\n " parameters: - in: query name: 'filter[common_name]' description: '' example: test.nl required: false schema: type: 'Filter certificates by their common name.' description: '' example: test.nl - in: query name: 'filter[organization]' description: '' example: 'Test B.V.' required: false schema: type: 'Filter certificates by their organization name.' description: '' example: 'Test B.V.' - in: query name: sort description: '' example: not_valid_after required: false schema: type: 'The column(s) to sort by. Prefix with - for descending order. Eg sort=-not_valid_before' description: '' example: not_valid_after enum: - not_valid_after - in: query name: include description: '' example: certificates required: false schema: type: 'Include additional relationships (comma separated).' description: '' example: certificates enum: - certificates - applications - tags - scans responses: 200: description: '' content: application/json: schema: type: object example: data: - id: a2e63db6-ab41-4884-9bf8-ab38460b7a2f company_id: '989438' common_name: haag.com organization: Aufderhar-Batz organizational_unit: null locality: Bergstromchester state: Georgia country: BH serial: 0HM12RXWD3H4S4BGMLDQZDDETMRWPZ50 not_valid_before: 20250921T223031Z not_valid_after: 20271206T072027Z value: "-----BEGIN CERTIFICATE-----\n39WFHTMVHlHQNaOf6eb8/sXYOp2hCZ2FmKYFeemx98Slv3FGyH/lIzH9UDN/sphL\n47A/9/lHVdQA7dBQd+Sv4Af7rsdhi+IXBOerFdiRi33lrfUqCOUPWRWMbH0D4mOg\nAAdIma5Vr4b+xarIaAS4XpKFpNHD2goxsi4RZuT8NJCWVHFeCajEXGVuzU9u9IAz\nDq0yxR9MvBT+hInewGtvPu3rp+l7oam3VDPS2Jk3lRUBImKX8ppCWyoPTPrl3W0v\n5Oqau85kguKaUm9pxz1qdkNBGdA78mkF8VhTflLQ4cHK6vsK/Qfs8IBD52Aw3x2F\nmbf117z/V0xLAeCeZmlDjq2IQ3Jjj5if/CNyVnGThWxLoCDCmfcD0+eUX2MeC5rk\nohUzNI/t3dbBB9X6+ZhtFHjDARNstb3m75I9ZVRtJbfgBfaQJ7vnkQ6YvN0guxm1\ntc90MkhF+mh35ghfHK69VeXNN0s+fdkz0zMtyS5f9TJMvVcw9JbVb3PH2eBWSWXz\nMwcioyl7Oy/xtslVPg2mwXX/BnUK7C9NbMSJiTweRQTuQ3zdunFVxJA78QAJE6q+\ngm5VI3FI0nA8+pl1GF5UBg2MhWrrCV56DSi68sjqrTLKj5g1YGy6gD8GRvqQTGKl\naOnIWUHvPDxK4V5m0/Ix/Bmx5lSLWpk4ja1lkX5ue1Yh/khJoHiZSwja9NA9ztP9\nN6G67DJcy2HlDH2vK0Zc7QtztUEZFvIYXQpa8Wo1E8JR/3Sp9JpIMph5LHRnpJpF\nLliRuxh/p2zjh/zoZDRr1eTfgcMEQDinSbFPd4qQnJUCT0ll1qLb3CCfmz5ohFpY\nUNxbNkuNnVGmBNHs+BT8yufPzCgnIZNWQQCSBhVqq5wUqiOAEyClpX9Q3Nb9sW/B\nM43M9JyI/aIIx1x8fiadEoU0Q/W/m1cRg3qfvjRfo6/jOD8dDUMU+g91GSy5J94z\nzi3JDmuS+CxBm+Wk/25uP9xWBY1jhZPg9lckfGPbtxThBnLlp2Wo300NDqhA1ZGt\nFc7LOB34CTHnO9CoItgk2OXuMe6limx5HzhcBp5fo2y5kYyy80UjlB9D4yC4KJ70\nHxoLGfls5YsD7iIqa0jyqWAJPnthh4TuXEe/5vp0oEBODV/ExfFwnQjLLUpqGDmP\n6STdAN10ykXuqvhtFFBwWjPRf2E8R7iPwinwECId1A7fKom7ri175SXtQqkaCaoC\ngSwHPw+eftDW0laRmLk2kAQGaW8ibv0vl0cq+2HofHNdAxjtdHrb2uvgrgTYN9BZ\nBq9ByoBQNMKPZ10z3xrRdOhJAreJXcEJk3CbzPtO1WhTr2WTz+2n6/l3MZKXJJ/E\n1+sAvlHGLEkfK7optCnj8g==\n\n-----END CERTIFICATE-----" first_seen: '2025-11-16T01:22:30.000000Z' last_seen: '2026-06-01T00:07:09.000000Z' created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' - id: a2e63db6-aeca-4540-bf52-792cb01c0828 company_id: '1881915' common_name: schultz.com organization: 'Heller, Williamson and Renner' organizational_unit: 'and Sons' locality: null state: Delaware country: null serial: YJ7JFCHA8LHXUAI3YBMO4KQDG4VO1603 not_valid_before: 20260306T175203Z not_valid_after: 20270722T100158Z value: "-----BEGIN CERTIFICATE-----\nrsdNq9oZH68pHeH7QAMnYrSHUMtWStg5IlyNEfpIRIptS3axFXTBc0GJqSREtpPE\nRj4LNF2lMYcVW3RMV0LEI6A+Lpw4V2FgshWSvaXWeerZUdtWGhYxZzB6tsgkKAP0\nMtvgVCJ9MOrlfLkriJzhWj3OIlk7P6V9ZlH9z/oxah83gF27VsUFb/qLHOaMyBjA\noc7RH01P/MSkHq3IAnJSMoA/eysaeuwMcaZo3btdEyu4RY1z8dYdRVvQ5VKxM5Fa\nuBf0UyYEYYOn2r8IMMY199Gz3mIYflDPQsGT8pTrHNSaPnH5ISp5aO4VkQUz2HM4\nEfzgyp3ou4qof1NrtOj/y0JuGECub7eZWtC0HNZnHTAWYz6NizdRUPXYhDlIXzGi\nlMXTtD20wZM0I7F8fda3pXJzfjzyMQaa2b4bMHAcRXQYSEOjDY3fj5JZQKEpb+A6\nZ773jmethBUWis6hn4+4Qr4/W2oUI4hoSXhtb3jDinDewFKrVpXBDCtJzKBrgyZu\nL+0UZZ4Oy8s2DxEYIrrbZJaWoo5qjyRSoJh2fswELXvOGa2V4l4EPMr1hATVcZNa\nOu71ssWrDN3NVCJvN4WuyPObCeX0vp1oEzSqvjp7P9iUPsKK9Fwoevllmq/qckOf\nt/9Yg7/9sb3A0V/GEMwX+kvHiGFzQEKiETi0VBH6e3sBOMiLEQDF/eEmtiGPEAeB\ns0D9DoiHkSVJ95WewGbHVaL3APiCNLmisUZVoYFAM77NdSJa8MQn6Hn5YH27y1sS\nw3pjghx1XOYrCpAnNPoTQjSgFSMTZWLkdFVexdbCb8MqqCXRTDOnmV06aam2UuMz\nzhs0dluCdbHm2idh/QjT8P2/YP+49W62dGYXXVCU4JBkR2hfE2Ln5mYPC8GDMXwN\noTJhey7/CIAnwTIuG0H14K8o89/+QpNlOUPKtxOG50Y7bbUeWt+RY/JH8MJE8P6r\nxPkTepzpOY9GSVyf8AIFnWxIE/j6+vsR6fzernI7E8Dlnl+McsGpNY5eqnRtZQsU\nl/hH57WQOnM0ywaan+HeV9l5aq/JnUcrKTCYFC2sv6HvkJNr0/Xuyh8CpS2YLQQ2\nB0voCkKcptbzM0/K08MBO2tvWXo7zalZtFIiIAIMzDUM/PfjGwhVeALWjwGVFLAj\n5p4BJ7MA3Nn+t9XjkugzJYn4grgqJOZAy2+clKLUy23rmP9XPI0vVg9M/B+ikWud\nO8z3OLVZ3k/wfBgpD6k4NOr20TEm/6r4Pce5AEsBc1zo2NEXy31Vpkb5CZLr7oM/\n3cvLQO8PiNkep4a75Dw5fiE3Ebk0Kc8c3ZP/J7cgnO1n8f5BNxd34LrC/gzyr1WJ\nMituoqAXEySn4E3J9dwjKw==\n\n-----END CERTIFICATE-----" first_seen: '2026-03-13T08:37:38.000000Z' last_seen: '2026-04-28T23:14:38.000000Z' created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.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 properties: data: type: array example: - id: a2e63db6-ab41-4884-9bf8-ab38460b7a2f company_id: '989438' common_name: haag.com organization: Aufderhar-Batz organizational_unit: null locality: Bergstromchester state: Georgia country: BH serial: 0HM12RXWD3H4S4BGMLDQZDDETMRWPZ50 not_valid_before: 20250921T223031Z not_valid_after: 20271206T072027Z value: "-----BEGIN CERTIFICATE-----\n39WFHTMVHlHQNaOf6eb8/sXYOp2hCZ2FmKYFeemx98Slv3FGyH/lIzH9UDN/sphL\n47A/9/lHVdQA7dBQd+Sv4Af7rsdhi+IXBOerFdiRi33lrfUqCOUPWRWMbH0D4mOg\nAAdIma5Vr4b+xarIaAS4XpKFpNHD2goxsi4RZuT8NJCWVHFeCajEXGVuzU9u9IAz\nDq0yxR9MvBT+hInewGtvPu3rp+l7oam3VDPS2Jk3lRUBImKX8ppCWyoPTPrl3W0v\n5Oqau85kguKaUm9pxz1qdkNBGdA78mkF8VhTflLQ4cHK6vsK/Qfs8IBD52Aw3x2F\nmbf117z/V0xLAeCeZmlDjq2IQ3Jjj5if/CNyVnGThWxLoCDCmfcD0+eUX2MeC5rk\nohUzNI/t3dbBB9X6+ZhtFHjDARNstb3m75I9ZVRtJbfgBfaQJ7vnkQ6YvN0guxm1\ntc90MkhF+mh35ghfHK69VeXNN0s+fdkz0zMtyS5f9TJMvVcw9JbVb3PH2eBWSWXz\nMwcioyl7Oy/xtslVPg2mwXX/BnUK7C9NbMSJiTweRQTuQ3zdunFVxJA78QAJE6q+\ngm5VI3FI0nA8+pl1GF5UBg2MhWrrCV56DSi68sjqrTLKj5g1YGy6gD8GRvqQTGKl\naOnIWUHvPDxK4V5m0/Ix/Bmx5lSLWpk4ja1lkX5ue1Yh/khJoHiZSwja9NA9ztP9\nN6G67DJcy2HlDH2vK0Zc7QtztUEZFvIYXQpa8Wo1E8JR/3Sp9JpIMph5LHRnpJpF\nLliRuxh/p2zjh/zoZDRr1eTfgcMEQDinSbFPd4qQnJUCT0ll1qLb3CCfmz5ohFpY\nUNxbNkuNnVGmBNHs+BT8yufPzCgnIZNWQQCSBhVqq5wUqiOAEyClpX9Q3Nb9sW/B\nM43M9JyI/aIIx1x8fiadEoU0Q/W/m1cRg3qfvjRfo6/jOD8dDUMU+g91GSy5J94z\nzi3JDmuS+CxBm+Wk/25uP9xWBY1jhZPg9lckfGPbtxThBnLlp2Wo300NDqhA1ZGt\nFc7LOB34CTHnO9CoItgk2OXuMe6limx5HzhcBp5fo2y5kYyy80UjlB9D4yC4KJ70\nHxoLGfls5YsD7iIqa0jyqWAJPnthh4TuXEe/5vp0oEBODV/ExfFwnQjLLUpqGDmP\n6STdAN10ykXuqvhtFFBwWjPRf2E8R7iPwinwECId1A7fKom7ri175SXtQqkaCaoC\ngSwHPw+eftDW0laRmLk2kAQGaW8ibv0vl0cq+2HofHNdAxjtdHrb2uvgrgTYN9BZ\nBq9ByoBQNMKPZ10z3xrRdOhJAreJXcEJk3CbzPtO1WhTr2WTz+2n6/l3MZKXJJ/E\n1+sAvlHGLEkfK7optCnj8g==\n\n-----END CERTIFICATE-----" first_seen: '2025-11-16T01:22:30.000000Z' last_seen: '2026-06-01T00:07:09.000000Z' created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' - id: a2e63db6-aeca-4540-bf52-792cb01c0828 company_id: '1881915' common_name: schultz.com organization: 'Heller, Williamson and Renner' organizational_unit: 'and Sons' locality: null state: Delaware country: null serial: YJ7JFCHA8LHXUAI3YBMO4KQDG4VO1603 not_valid_before: 20260306T175203Z not_valid_after: 20270722T100158Z value: "-----BEGIN CERTIFICATE-----\nrsdNq9oZH68pHeH7QAMnYrSHUMtWStg5IlyNEfpIRIptS3axFXTBc0GJqSREtpPE\nRj4LNF2lMYcVW3RMV0LEI6A+Lpw4V2FgshWSvaXWeerZUdtWGhYxZzB6tsgkKAP0\nMtvgVCJ9MOrlfLkriJzhWj3OIlk7P6V9ZlH9z/oxah83gF27VsUFb/qLHOaMyBjA\noc7RH01P/MSkHq3IAnJSMoA/eysaeuwMcaZo3btdEyu4RY1z8dYdRVvQ5VKxM5Fa\nuBf0UyYEYYOn2r8IMMY199Gz3mIYflDPQsGT8pTrHNSaPnH5ISp5aO4VkQUz2HM4\nEfzgyp3ou4qof1NrtOj/y0JuGECub7eZWtC0HNZnHTAWYz6NizdRUPXYhDlIXzGi\nlMXTtD20wZM0I7F8fda3pXJzfjzyMQaa2b4bMHAcRXQYSEOjDY3fj5JZQKEpb+A6\nZ773jmethBUWis6hn4+4Qr4/W2oUI4hoSXhtb3jDinDewFKrVpXBDCtJzKBrgyZu\nL+0UZZ4Oy8s2DxEYIrrbZJaWoo5qjyRSoJh2fswELXvOGa2V4l4EPMr1hATVcZNa\nOu71ssWrDN3NVCJvN4WuyPObCeX0vp1oEzSqvjp7P9iUPsKK9Fwoevllmq/qckOf\nt/9Yg7/9sb3A0V/GEMwX+kvHiGFzQEKiETi0VBH6e3sBOMiLEQDF/eEmtiGPEAeB\ns0D9DoiHkSVJ95WewGbHVaL3APiCNLmisUZVoYFAM77NdSJa8MQn6Hn5YH27y1sS\nw3pjghx1XOYrCpAnNPoTQjSgFSMTZWLkdFVexdbCb8MqqCXRTDOnmV06aam2UuMz\nzhs0dluCdbHm2idh/QjT8P2/YP+49W62dGYXXVCU4JBkR2hfE2Ln5mYPC8GDMXwN\noTJhey7/CIAnwTIuG0H14K8o89/+QpNlOUPKtxOG50Y7bbUeWt+RY/JH8MJE8P6r\nxPkTepzpOY9GSVyf8AIFnWxIE/j6+vsR6fzernI7E8Dlnl+McsGpNY5eqnRtZQsU\nl/hH57WQOnM0ywaan+HeV9l5aq/JnUcrKTCYFC2sv6HvkJNr0/Xuyh8CpS2YLQQ2\nB0voCkKcptbzM0/K08MBO2tvWXo7zalZtFIiIAIMzDUM/PfjGwhVeALWjwGVFLAj\n5p4BJ7MA3Nn+t9XjkugzJYn4grgqJOZAy2+clKLUy23rmP9XPI0vVg9M/B+ikWud\nO8z3OLVZ3k/wfBgpD6k4NOr20TEm/6r4Pce5AEsBc1zo2NEXy31Vpkb5CZLr7oM/\n3cvLQO8PiNkep4a75Dw5fiE3Ebk0Kc8c3ZP/J7cgnO1n8f5BNxd34LrC/gzyr1WJ\nMituoqAXEySn4E3J9dwjKw==\n\n-----END CERTIFICATE-----" first_seen: '2026-03-13T08:37:38.000000Z' last_seen: '2026-04-28T23:14:38.000000Z' created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' items: type: object properties: id: type: string example: a2e63db6-ab41-4884-9bf8-ab38460b7a2f company_id: type: string example: '989438' common_name: type: string example: haag.com organization: type: string example: Aufderhar-Batz organizational_unit: type: string example: null nullable: true locality: type: string example: Bergstromchester state: type: string example: Georgia country: type: string example: BH serial: type: string example: 0HM12RXWD3H4S4BGMLDQZDDETMRWPZ50 not_valid_before: type: string example: 20250921T223031Z not_valid_after: type: string example: 20271206T072027Z value: type: string example: "-----BEGIN CERTIFICATE-----\n39WFHTMVHlHQNaOf6eb8/sXYOp2hCZ2FmKYFeemx98Slv3FGyH/lIzH9UDN/sphL\n47A/9/lHVdQA7dBQd+Sv4Af7rsdhi+IXBOerFdiRi33lrfUqCOUPWRWMbH0D4mOg\nAAdIma5Vr4b+xarIaAS4XpKFpNHD2goxsi4RZuT8NJCWVHFeCajEXGVuzU9u9IAz\nDq0yxR9MvBT+hInewGtvPu3rp+l7oam3VDPS2Jk3lRUBImKX8ppCWyoPTPrl3W0v\n5Oqau85kguKaUm9pxz1qdkNBGdA78mkF8VhTflLQ4cHK6vsK/Qfs8IBD52Aw3x2F\nmbf117z/V0xLAeCeZmlDjq2IQ3Jjj5if/CNyVnGThWxLoCDCmfcD0+eUX2MeC5rk\nohUzNI/t3dbBB9X6+ZhtFHjDARNstb3m75I9ZVRtJbfgBfaQJ7vnkQ6YvN0guxm1\ntc90MkhF+mh35ghfHK69VeXNN0s+fdkz0zMtyS5f9TJMvVcw9JbVb3PH2eBWSWXz\nMwcioyl7Oy/xtslVPg2mwXX/BnUK7C9NbMSJiTweRQTuQ3zdunFVxJA78QAJE6q+\ngm5VI3FI0nA8+pl1GF5UBg2MhWrrCV56DSi68sjqrTLKj5g1YGy6gD8GRvqQTGKl\naOnIWUHvPDxK4V5m0/Ix/Bmx5lSLWpk4ja1lkX5ue1Yh/khJoHiZSwja9NA9ztP9\nN6G67DJcy2HlDH2vK0Zc7QtztUEZFvIYXQpa8Wo1E8JR/3Sp9JpIMph5LHRnpJpF\nLliRuxh/p2zjh/zoZDRr1eTfgcMEQDinSbFPd4qQnJUCT0ll1qLb3CCfmz5ohFpY\nUNxbNkuNnVGmBNHs+BT8yufPzCgnIZNWQQCSBhVqq5wUqiOAEyClpX9Q3Nb9sW/B\nM43M9JyI/aIIx1x8fiadEoU0Q/W/m1cRg3qfvjRfo6/jOD8dDUMU+g91GSy5J94z\nzi3JDmuS+CxBm+Wk/25uP9xWBY1jhZPg9lckfGPbtxThBnLlp2Wo300NDqhA1ZGt\nFc7LOB34CTHnO9CoItgk2OXuMe6limx5HzhcBp5fo2y5kYyy80UjlB9D4yC4KJ70\nHxoLGfls5YsD7iIqa0jyqWAJPnthh4TuXEe/5vp0oEBODV/ExfFwnQjLLUpqGDmP\n6STdAN10ykXuqvhtFFBwWjPRf2E8R7iPwinwECId1A7fKom7ri175SXtQqkaCaoC\ngSwHPw+eftDW0laRmLk2kAQGaW8ibv0vl0cq+2HofHNdAxjtdHrb2uvgrgTYN9BZ\nBq9ByoBQNMKPZ10z3xrRdOhJAreJXcEJk3CbzPtO1WhTr2WTz+2n6/l3MZKXJJ/E\n1+sAvlHGLEkfK7optCnj8g==\n\n-----END CERTIFICATE-----" first_seen: type: string example: '2025-11-16T01:22:30.000000Z' last_seen: type: string example: '2026-06-01T00:07:09.000000Z' created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' links: type: object properties: first: type: string example: '/?page=1' last: type: string example: '/?page=1' prev: type: string example: null nullable: true next: type: string example: null nullable: true meta: type: object properties: current_page: type: integer example: 1 from: type: integer example: 1 last_page: type: integer example: 1 links: type: array example: - 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 items: type: object properties: url: type: string example: null nullable: true label: type: string example: '« Previous' page: type: string example: null nullable: true active: type: boolean example: false path: type: string example: / per_page: type: integer example: 10 to: type: integer example: 2 total: type: integer example: 2 tags: - Certificates /v1/certificates/export: get: summary: 'Export certificates.' operationId: exportCertificates description: " Export all certificates for the current company in CSV or XLSX format.\n " parameters: - in: query name: type description: '' example: csv required: true schema: type: 'The type of export to generate' description: '' example: csv enum: - csv - xlsx - in: query name: 'filter[common_name]' description: '' example: test.nl required: false schema: type: 'Filter certificates by their common name.' description: '' example: test.nl - in: query name: 'filter[organization]' description: '' example: 'Test B.V.' required: false schema: type: 'Filter certificates by their organization name.' description: '' example: 'Test B.V.' - in: query name: sort description: '' example: not_valid_after required: false schema: type: 'The column(s) to sort by. Prefix with - for descending order. Eg sort=-not_valid_before' description: '' example: not_valid_after enum: - not_valid_after - in: query name: filter description: '' example: organization required: false schema: type: 'The column(s) to filter by. Eg filter=common_name:test.nl' description: '' example: organization enum: - common_name - organization responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Certificates '/v1/certificates/{id}': get: summary: 'Retrieve a certificate.' operationId: retrieveACertificate description: " Retrieves an by its ID.\n " parameters: - in: query name: include description: '' example: certificates required: false schema: type: 'Include additional relationships (comma separated).' description: '' example: certificates enum: - certificates - applications - tags - scans responses: 200: description: 'Successfully retrieved certificate' content: application/json: schema: type: object example: data: id: a2e63db6-b5f8-4dd2-bd13-b6a949444690 company_id: '6728927' common_name: rath.info organization: 'Kshlerin LLC' organizational_unit: null locality: null state: 'West Virginia' country: SG serial: GTWUVBZLYOXMPR7MAYZVYD1TCZAZZOLL not_valid_before: 20251212T013903Z not_valid_after: 20260627T062341Z value: "-----BEGIN CERTIFICATE-----\n/AxgexQgEt4UGaoKoNXWoY68g096eGLvY3teFvtmT9YlKT06czRl4hPaC4rFzJD1\nPOjmx7s4eHe9ikyX2Ef+Z2E/7RNxHwENJ7B9s+iVWfASU238QpOO8/Ec8F7SLyj/\nb23uihqHXOqb34ANK9T+urEmIkQZvud7v+iDSWmTt0sGOkgywi83hxL6eEDDaVjr\nYAJhBEZUAy3ShM2AI9zKRZoB282dcz3ELQ5q5CPquE32vZ5tgQUFpVCmrHLlD/HO\n1uSbte0i2A2n/mObkcH4B9P/rrV7JRdBe4OTt6SGpnejEaBpHC+22dGgGyLymZYb\nh0x0pxJDkPLoFHoYVHKIx/mRWfOBqjCw0fjgAod1SYTahgrpgqJMwPcQa5NqaqQ7\n38ls9DtyVA/4ewL66Wnw1EFTKc9pfsMmF7KvjTrZyWgSfulq1r1v0I17bqHk1QR1\nfGnOo3YUFifOZcB3kaM0m4CnIEov/8i0gGH2XnaNjWJGrnuLVC5m1NIMqZRd28hV\n3vuBPA0FB6stdjAG9vxz4S5MJAWpKkzK079KOQWr4p9HqpizMM6sg3WKT8Wtbi4U\nezB+Ame3SGLCWIQRNJfu8TWPG0oORAcqYl0/waIs+YWajzHjMI9t6BjrCA73Q6vw\nRX9nziPVRvq2bdjX6B+DkfKxL3KgA106wq7ppdUwKOAO/CxExBKIrYoBa3CwegyY\nc9Q7MkQAzlIUjj6x7jcqDNmVXkeAUn+TDTUsyrvg57eiBquVSb9YkZdQ3anuiH45\ntPNTmXG87sqkkimY5S2e8gzXx8WtW/IqPm6+FFzxyFvfqBQh9yDN2x3Degckv0BU\nJZg+bGsjC4DUu/Jfg+5XXM31PUnmetggFmO/RsvCzfgQIEtNlMTlSA3fB6/k5i+r\nC3V0w4tVL4Em1Iu963Q0eXuYceRojvDLgpEK/5rI6lAE+vHHpxRFYSyVRwxBndUP\n2dsbSLZopXoeq6SipVnFzh9pwSl2K+eExhdN68NvMLZRV89ElrBfCDCMjJWZuPtF\nxw5ebChaSD/m3JcupqVC+VnMsw58PIoQNyTxlMwzv7bejv6v+ZCT/yajWSD+2tZY\nbzDH4e17f1Ny4IBGK/aHRqMSAjPJCVE/J7ehhG54MlN4NaeiSxRCgB1lTJHfr0p2\nZNVL+5/tjVZaQklyxqxFXvTs+/vAcUjFVqqOeWDkMEZXpUuggFGW2Nnnabdx63w9\nkIVNtbjAx4iMBBSCXAU+9LzzWSC3kd188oV6PzJDQiVBDbjK5utkznxmfNUigeQO\n4dtq4ZdfL8wbRuobNHv6IqgdONAgf+QwNnlOCBeC/sSs5aaFiBrJgev+/TnDMVQG\nvm+vMG6CfLa8knQD+sgIXQ==\n\n-----END CERTIFICATE-----" first_seen: '2026-03-03T11:49:15.000000Z' last_seen: '2026-12-17T16:49:47.000000Z' created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' properties: data: type: object properties: id: type: string example: a2e63db6-b5f8-4dd2-bd13-b6a949444690 company_id: type: string example: '6728927' common_name: type: string example: rath.info organization: type: string example: 'Kshlerin LLC' organizational_unit: type: string example: null nullable: true locality: type: string example: null nullable: true state: type: string example: 'West Virginia' country: type: string example: SG serial: type: string example: GTWUVBZLYOXMPR7MAYZVYD1TCZAZZOLL not_valid_before: type: string example: 20251212T013903Z not_valid_after: type: string example: 20260627T062341Z value: type: string example: "-----BEGIN CERTIFICATE-----\n/AxgexQgEt4UGaoKoNXWoY68g096eGLvY3teFvtmT9YlKT06czRl4hPaC4rFzJD1\nPOjmx7s4eHe9ikyX2Ef+Z2E/7RNxHwENJ7B9s+iVWfASU238QpOO8/Ec8F7SLyj/\nb23uihqHXOqb34ANK9T+urEmIkQZvud7v+iDSWmTt0sGOkgywi83hxL6eEDDaVjr\nYAJhBEZUAy3ShM2AI9zKRZoB282dcz3ELQ5q5CPquE32vZ5tgQUFpVCmrHLlD/HO\n1uSbte0i2A2n/mObkcH4B9P/rrV7JRdBe4OTt6SGpnejEaBpHC+22dGgGyLymZYb\nh0x0pxJDkPLoFHoYVHKIx/mRWfOBqjCw0fjgAod1SYTahgrpgqJMwPcQa5NqaqQ7\n38ls9DtyVA/4ewL66Wnw1EFTKc9pfsMmF7KvjTrZyWgSfulq1r1v0I17bqHk1QR1\nfGnOo3YUFifOZcB3kaM0m4CnIEov/8i0gGH2XnaNjWJGrnuLVC5m1NIMqZRd28hV\n3vuBPA0FB6stdjAG9vxz4S5MJAWpKkzK079KOQWr4p9HqpizMM6sg3WKT8Wtbi4U\nezB+Ame3SGLCWIQRNJfu8TWPG0oORAcqYl0/waIs+YWajzHjMI9t6BjrCA73Q6vw\nRX9nziPVRvq2bdjX6B+DkfKxL3KgA106wq7ppdUwKOAO/CxExBKIrYoBa3CwegyY\nc9Q7MkQAzlIUjj6x7jcqDNmVXkeAUn+TDTUsyrvg57eiBquVSb9YkZdQ3anuiH45\ntPNTmXG87sqkkimY5S2e8gzXx8WtW/IqPm6+FFzxyFvfqBQh9yDN2x3Degckv0BU\nJZg+bGsjC4DUu/Jfg+5XXM31PUnmetggFmO/RsvCzfgQIEtNlMTlSA3fB6/k5i+r\nC3V0w4tVL4Em1Iu963Q0eXuYceRojvDLgpEK/5rI6lAE+vHHpxRFYSyVRwxBndUP\n2dsbSLZopXoeq6SipVnFzh9pwSl2K+eExhdN68NvMLZRV89ElrBfCDCMjJWZuPtF\nxw5ebChaSD/m3JcupqVC+VnMsw58PIoQNyTxlMwzv7bejv6v+ZCT/yajWSD+2tZY\nbzDH4e17f1Ny4IBGK/aHRqMSAjPJCVE/J7ehhG54MlN4NaeiSxRCgB1lTJHfr0p2\nZNVL+5/tjVZaQklyxqxFXvTs+/vAcUjFVqqOeWDkMEZXpUuggFGW2Nnnabdx63w9\nkIVNtbjAx4iMBBSCXAU+9LzzWSC3kd188oV6PzJDQiVBDbjK5utkznxmfNUigeQO\n4dtq4ZdfL8wbRuobNHv6IqgdONAgf+QwNnlOCBeC/sSs5aaFiBrJgev+/TnDMVQG\nvm+vMG6CfLa8knQD+sgIXQ==\n\n-----END CERTIFICATE-----" first_seen: type: string example: '2026-03-03T11:49:15.000000Z' last_seen: type: string example: '2026-12-17T16:49:47.000000Z' created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' tags: - Certificates delete: summary: 'Delete certificate.' operationId: deleteCertificate description: " Will delete an existing certificate \n " parameters: [] responses: 204: description: 'certificate deleted successfully' content: application/json: schema: type: array items: type: object example: [] tags: - Certificates parameters: - in: path name: id description: 'The ID of the certificate.' example: cbEcCafe-cdad-aDEa-bdac-dcFDdDFeafbA required: true schema: type: string /v1/detections: get: summary: 'List detections.' operationId: listDetections description: " Retrieve all detections for the current company. \n " parameters: - in: query name: 'filter[search]' description: 'Search across multiple fields (src_ip, src_hostname, src_mac, dst_ip, sensor, honeypot alias)' example: '192.168' required: false schema: type: string description: 'Search across multiple fields (src_ip, src_hostname, src_mac, dst_ip, sensor, honeypot alias)' example: '192.168' - in: query name: 'filter[sensor]' description: 'Filter by sensor type' example: Modbus required: false schema: type: string description: 'Filter by sensor type' example: Modbus enum: - SSH - MSSQL - Blackhole - MySQL - SMB - FTP - UPnP - HTTP - Ping - Portscan - Modbus - in: query name: 'filter[honeypot_id]' description: 'Filter by honeypot UUID' example: 550e8400-e29b-41d4-a716-446655440000 required: false schema: type: string description: 'Filter by honeypot UUID' example: 550e8400-e29b-41d4-a716-446655440000 - in: query name: 'filter[honeypot_alias]' description: 'Filter by honeypot alias (partial match)' example: Production required: false schema: type: string description: 'Filter by honeypot alias (partial match)' example: Production - in: query name: 'filter[src_ip]' description: 'Filter by source IP (partial match)' example: '192.168' required: false schema: type: string description: 'Filter by source IP (partial match)' example: '192.168' - in: query name: 'filter[src_hostname]' description: 'Filter by reverse DNS hostname (partial match)' example: attacker.example.com required: false schema: type: string description: 'Filter by reverse DNS hostname (partial match)' example: attacker.example.com - in: query name: 'filter[marked_as_seen]' description: 'Filter by seen status' example: 'true' required: false schema: type: string description: 'Filter by seen status' example: 'true' enum: - 'true' - 'false' - in: query name: include description: 'Include related resources' example: events required: false schema: type: string description: 'Include related resources' example: events enum: - events - in: query name: sort description: 'Sort by field (prefix with - for descending)' example: '-timestamp' required: false schema: type: string description: 'Sort by field (prefix with - for descending)' example: '-timestamp' enum: - timestamp - '-timestamp' - in: query name: page description: 'Page number' example: 1 required: false schema: type: integer description: 'Page number' example: 1 - in: query name: per_page description: 'Results per page (max 20)' example: 10 required: false schema: type: integer description: 'Results per page (max 20)' example: 10 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: a2e63db6-3037-4d3c-b934-acf72c264494 company_id: c4f934d6-293f-4ebe-a01b-8d91375c6c35 src_ip: 136.73.188.121 dst_ip: 170.43.33.34 sensor: Modbus timestamp: '2026-09-14T13:18:47.000000Z' marked_as_seen: true honeypot_id: 4024efeb-5bef-4872-a00e-403455672b48 honeypot_alias: Honeypot-HQ-28 src_port: null src_hostname: null src_mac: '80:B9:CE:8B:D1:12' dst_port: 36715 - id: a2e63db6-36c7-4ab7-8f7a-487c444e8b3b company_id: 245bf448-cebc-42fb-b61f-61f3e0516fff src_ip: 94.200.40.219 dst_ip: 226.187.174.201 sensor: Modbus timestamp: '2025-02-20T18:11:34.000000Z' marked_as_seen: true honeypot_id: 4a54e54c-86ff-457c-b460-46818664eb47 honeypot_alias: Honeypot-Office-90 src_port: null src_hostname: null src_mac: '95:00:CE:16:11:25' dst_port: 47088 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 properties: data: type: array example: - id: a2e63db6-3037-4d3c-b934-acf72c264494 company_id: c4f934d6-293f-4ebe-a01b-8d91375c6c35 src_ip: 136.73.188.121 dst_ip: 170.43.33.34 sensor: Modbus timestamp: '2026-09-14T13:18:47.000000Z' marked_as_seen: true honeypot_id: 4024efeb-5bef-4872-a00e-403455672b48 honeypot_alias: Honeypot-HQ-28 src_port: null src_hostname: null src_mac: '80:B9:CE:8B:D1:12' dst_port: 36715 - id: a2e63db6-36c7-4ab7-8f7a-487c444e8b3b company_id: 245bf448-cebc-42fb-b61f-61f3e0516fff src_ip: 94.200.40.219 dst_ip: 226.187.174.201 sensor: Modbus timestamp: '2025-02-20T18:11:34.000000Z' marked_as_seen: true honeypot_id: 4a54e54c-86ff-457c-b460-46818664eb47 honeypot_alias: Honeypot-Office-90 src_port: null src_hostname: null src_mac: '95:00:CE:16:11:25' dst_port: 47088 items: type: object properties: id: type: string example: a2e63db6-3037-4d3c-b934-acf72c264494 description: 'The unique identifier (UUID) of the detection' company_id: type: string example: c4f934d6-293f-4ebe-a01b-8d91375c6c35 description: 'The company UUID this detection belongs to' src_ip: type: string example: 136.73.188.121 description: 'Source IP address of the attacker' dst_ip: type: string example: 170.43.33.34 description: 'Destination IP address (honeypot)' sensor: type: string example: Modbus description: 'The sensor type that triggered the detection' enum: - SSH - MSSQL - Blackhole - MySQL - SMB - FTP - UPnP - HTTP - Ping - Portscan - Modbus timestamp: type: string example: '2026-09-14T13:18:47.000000Z' description: 'When the detection occurred' marked_as_seen: type: boolean example: true description: 'Whether the detection has been marked as seen' honeypot_id: type: string example: 4024efeb-5bef-4872-a00e-403455672b48 description: 'The honeypot UUID that captured this detection' nullable: true honeypot_alias: type: string example: Honeypot-HQ-28 description: 'The alias of the honeypot' nullable: true src_port: type: string example: null description: 'Source port number' nullable: true src_hostname: type: string example: null description: 'Reverse DNS hostname of source IP' nullable: true src_mac: type: string example: '80:B9:CE:8B:D1:12' description: 'Source MAC address' nullable: true dst_port: type: integer example: 36715 description: 'Destination port number' nullable: true required: - id - company_id - src_ip - dst_ip - sensor - timestamp - marked_as_seen - honeypot_id - honeypot_alias - src_port - src_hostname - src_mac - dst_port links: type: object properties: first: type: string example: '/?page=1' last: type: string example: '/?page=1' prev: type: string example: null nullable: true next: type: string example: null nullable: true meta: type: object properties: current_page: type: integer example: 1 from: type: integer example: 1 last_page: type: integer example: 1 links: type: array example: - 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 items: type: object properties: url: type: string example: null nullable: true label: type: string example: '« Previous' page: type: string example: null nullable: true active: type: boolean example: false path: type: string example: / per_page: type: integer example: 10 to: type: integer example: 2 total: type: integer example: 2 tags: - Detections requestBody: required: false content: application/json: schema: type: object properties: filter: type: object description: '' example: [] properties: search: type: string description: 'Must not be greater than 255 characters.' example: vgeryfys sensor: type: string description: '' example: SSH enum: - SSH - MSSQL - Blackhole - MySQL - SMB - FTP - UPnP - HTTP - Ping - Portscan - Modbus honeypot_id: type: string description: 'Must be a valid UUID.' example: 2b248f51-4681-3018-b1bd-ea5793c94dbb honeypot_alias: type: string description: 'Must not be greater than 255 characters.' example: cgkjeznasmayybsrn src_ip: type: string description: 'Must not be greater than 255 characters.' example: vlcnenisp src_hostname: type: string description: 'Must not be greater than 255 characters.' example: vhfntgsgfhsfdudjukmd marked_as_seen: type: string description: '' example: 'true' enum: - 'true' - 'false' include: type: string description: '' example: events enum: - events page: type: integer description: 'Must be at least 1.' example: 82 per_page: type: integer description: 'Must be at least 1. Must not be greater than 20.' example: 14 sort: type: string description: '' example: '-timestamp' enum: - timestamp - '-timestamp' '/v1/detections/{detection_id}/seen': patch: summary: 'Mark a detection as seen.' operationId: markADetectionAsSeen description: " Mark a single detection as seen. Idempotent - marking an already seen detection will succeed without side effects.\n " parameters: [] responses: 204: description: 'Detection marked as seen successfully' content: application/json: schema: type: object nullable: true 404: description: 'Detection not found or not accessible' content: application/json: schema: type: object nullable: true tags: - Detections parameters: - in: path name: detection_id description: 'The ID of the detection.' example: a2e63db6-3037-4d3c-b934-acf72c264494 required: true schema: type: string - in: path name: detection description: 'The UUID of the detection to mark as seen' example: 550e8400-e29b-41d4-a716-446655440000 required: true schema: type: string /v1/detections/mark-multiple-seen: post: summary: 'Mark multiple detections as seen.' operationId: markMultipleDetectionsAsSeen description: " 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.\n " parameters: [] responses: 204: description: 'Detections marked as seen successfully' content: application/json: schema: type: object nullable: true 422: description: 'Validation error - invalid UUIDs or detections not found' content: application/json: schema: type: object nullable: true tags: - Detections requestBody: required: false content: application/json: schema: type: object properties: detection_ids: type: array description: 'Array of detection UUIDs to mark as seen. If omitted, all unseen detections will be marked.' example: '["550e8400-e29b-41d4-a716-446655440000", "550e8400-e29b-41d4-a716-446655440001"]' items: type: string '/v1/integrations/{integration_id}/logs': get: summary: 'List integration logs' operationId: listIntegrationLogs description: "Retrieves all logs for a specific integration.\n" parameters: [] responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - Endpoints parameters: - in: path name: integration_id description: 'The ID of the integration.' example: doloremque required: true schema: type: string /v1/honeypots: post: summary: 'Create honeypot.' operationId: createHoneypot description: "Will create a new honeypot for the current company. \n " parameters: [] responses: 200: description: 'Successfully created honeypot' content: application/json: schema: type: object example: data: id: a84b43c2-772d-493e-9739-51d82ac8110b alias: Honeypot-Branch-66 status: 5 activation_status: 1 hostname: honeypot-bmxo-217.example.com slane_enabled: true slane_connected: true paired: true provisioned: true dns1: 56.186.197.38 dns2: 176.64.242.25 configured_as: null notes: null checked_at: '2026-09-29T22:09:21.000000Z' created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' properties: data: type: object properties: id: type: string example: a84b43c2-772d-493e-9739-51d82ac8110b description: 'The id (uuid) of the Honeypot' alias: type: string example: Honeypot-Branch-66 description: 'The alias used to identify the Honeypot' status: type: integer example: 5 description: 'The status of the Honeypot (0 = Offline, 1 = Online, 5 = Rebooting, 6 = Testing)' enum: - 0 - 1 - 5 - 6 activation_status: type: integer example: 1 description: 'Whether the Honeypot has been activated' hostname: type: string example: honeypot-bmxo-217.example.com description: 'The hostname of the Honeypot' slane_enabled: type: boolean example: true description: 'Whether SLANE is enabled on the Honeypot' nullable: true slane_connected: type: boolean example: true description: 'Whether the Honeypot is connected using SLANE' nullable: true paired: type: boolean example: true description: 'Whether the Honeypot is successfully paired with your environment' provisioned: type: boolean example: true description: 'Whether the Honeypot is provisioned' dns1: type: string example: 56.186.197.38 description: 'The primary DNS server' dns2: type: string example: 176.64.242.25 description: 'The primary DNS server' configured_as: type: string example: null description: 'The identity that the Honeypot is configured as' nullable: true notes: type: string example: null description: 'Internal notes' nullable: true checked_at: type: string example: '2026-09-29T22:09:21.000000Z' description: 'When the Honeypot last connected to your environment' nullable: true created_at: type: string example: '2026-10-04T07:06:55.000000Z' description: 'When the Honeypot was created' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' description: 'When the Honeypot was last updated' required: - id - alias - status - activation_status - hostname - slane_enabled - slane_connected - paired - provisioned - dns1 - dns2 - configured_as - notes - checked_at - created_at - updated_at tags: - Honeypots requestBody: required: true content: application/json: schema: type: object properties: alias: type: string description: 'Alias is used to identify the Honeypot (not visible to the attacker).' example: 'Internal Honeypot' required: - alias /v1/integrations: get: summary: 'List Integrations' operationId: listIntegrations description: "Retrieve all enabled integrations for the current company.\n" parameters: [] responses: 200: description: success content: text/plain: schema: type: string example: '[{"autotask": {...}, "another_integration": {...}}]' tags: - Integrations '/v1/integrations/{integration}': post: summary: 'Enable Integration' operationId: enableIntegration description: "Enable a new integration for the current company.\n" parameters: [] responses: 201: description: 'integration enabled' content: application/json: schema: type: object example: message: 'Integration enabled successfully' properties: message: type: string example: 'Integration enabled successfully' 400: description: 'enable failed' content: application/json: schema: type: object example: error: 'Failed to enable integration' properties: error: type: string example: 'Failed to enable integration' 404: description: 'integration not found' content: application/json: schema: type: object example: error: 'Integration not found' properties: error: type: string example: 'Integration not found' 422: description: 'validation error' content: application/json: schema: type: object example: message: 'The given data was invalid.' properties: message: type: string example: 'The given data was invalid.' tags: - Integrations get: summary: 'Show Integration' operationId: showIntegration description: "Retrieve details of a specific enabled integration for the current company.\n" parameters: [] responses: 200: description: success content: text/plain: schema: type: string example: '{"id": 1, "company_id": "uuid", "name": "autotask", "config": {...}}' 404: description: '' content: application/json: schema: oneOf: - description: 'integration not found' type: object example: error: 'Integration not found' properties: error: type: string example: 'Integration not found' - description: 'integration not enabled' type: object example: error: 'Integration not enabled' properties: error: type: string example: 'Integration not enabled' tags: - Integrations patch: summary: 'Update Integration' operationId: updateIntegration description: "Update the configuration of an enabled integration for the current company.\n" parameters: [] responses: 200: description: success content: application/json: schema: type: object example: message: 'Integration updated successfully' properties: message: type: string example: 'Integration updated successfully' 400: description: 'update failed' content: application/json: schema: type: object example: error: 'Failed to update integration' properties: error: type: string example: 'Failed to update integration' 404: description: 'integration not found' content: application/json: schema: type: object example: error: 'Integration not found' properties: error: type: string example: 'Integration not found' 422: description: 'validation error' content: application/json: schema: type: object example: message: 'The given data was invalid.' properties: message: type: string example: 'The given data was invalid.' tags: - Integrations delete: summary: 'Disable Integration' operationId: disableIntegration description: "Disable a specific integration for the current company.\n" parameters: [] responses: 204: description: 'disable successful' content: text/plain: schema: type: string example: '' 400: description: 'disable failed' content: application/json: schema: type: object example: error: 'Failed to disable integration' properties: error: type: string example: 'Failed to disable integration' tags: - Integrations parameters: - in: path name: integration description: 'The name of the integration to enable.' example: autotask required: true schema: type: string '/v1/integrations/{integration}/test': post: summary: 'Test Integration Connection' operationId: testIntegrationConnection description: "Verify the stored configuration of an enabled integration against the remote system.\n" parameters: [] responses: 200: description: success content: application/json: schema: type: object example: message: 'Connection successful' properties: message: type: string example: 'Connection successful' 404: description: 'integration not enabled' content: application/json: schema: type: object example: error: 'Integration not enabled' properties: error: type: string example: 'Integration not enabled' 422: description: '' content: application/json: schema: oneOf: - description: 'not supported' type: object example: error: 'This integration does not support connection tests' properties: error: type: string example: 'This integration does not support connection tests' - description: 'connection failed' type: object example: error: 'Connection failed. Please verify the configuration.' properties: error: type: string example: 'Connection failed. Please verify the configuration.' - description: 'unknown ticket type' type: object example: error: 'Connected, but the ticket type "Incidnt" does not exist in HaloPSA.' properties: error: type: string example: 'Connected, but the ticket type "Incidnt" does not exist in HaloPSA.' tags: - Integrations parameters: - in: path name: integration description: 'The ID of the enabled integration to test.' example: autem required: true schema: type: string /v1/integrations/halopsa/options: post: summary: 'Preview HaloPSA Options' operationId: previewHaloPSAOptions description: "Load the HaloPSA ticket types, categories and clients with connection settings that have not been saved yet. Nothing is stored.\n" parameters: [] responses: 200: description: success content: application/json: schema: type: object example: ticket_types: - id: 20 name: Task categories: - id: 219 name: 'Security>Phishing>Email Report' clients: - id: 12 name: Acme properties: ticket_types: type: array example: - id: 20 name: Task items: type: object properties: id: type: integer example: 20 name: type: string example: Task categories: type: array example: - id: 219 name: 'Security>Phishing>Email Report' items: type: object properties: id: type: integer example: 219 name: type: string example: 'Security>Phishing>Email Report' clients: type: array example: - id: 12 name: Acme items: type: object properties: id: type: integer example: 12 name: type: string example: Acme 422: description: 'invalid credentials' content: application/json: schema: type: object example: error: 'HaloPSA rejected the client ID or client secret. Please check the API application credentials.' properties: error: type: string example: 'HaloPSA rejected the client ID or client secret. Please check the API application credentials.' tags: - Integrations requestBody: required: true content: application/json: schema: type: object properties: base_url: type: string description: 'Must be a valid URL.' example: 'http://www.kuhic.com/' auth_url: type: string description: 'Must be a valid URL.' example: 'http://www.quigley.com/voluptatibus-nobis-non-sed-excepturi.html' nullable: true tenant: type: string description: 'Must not be greater than 255 characters.' example: ijpsmnecybwlcv nullable: true client_id: type: string description: 'Must not be greater than 255 characters.' example: nldjhyyvfgj client_secret: type: string description: '' example: at required: - base_url - client_id - client_secret /v1/integrations/halopsa/options/sites: post: summary: 'Preview HaloPSA Sites' operationId: previewHaloPSASites description: "Load the sites of a HaloPSA client with connection settings that have not been saved yet. Nothing is stored.\n" parameters: [] responses: 200: description: success content: application/json: schema: type: object example: sites: - id: 18 name: EMEA properties: sites: type: array example: - id: 18 name: EMEA items: type: object properties: id: type: integer example: 18 name: type: string example: EMEA tags: - Integrations requestBody: required: true content: application/json: schema: type: object properties: base_url: type: string description: 'Must be a valid URL.' example: 'http://halvorson.com/' auth_url: type: string description: 'Must be a valid URL.' example: 'http://www.kerluke.biz/ipsum-ducimus-impedit-error-ipsa-et-totam-fugit' nullable: true tenant: type: string description: 'Must not be greater than 255 characters.' example: qatmkgveheuwfcffup nullable: true client_id: type: string description: 'Must not be greater than 255 characters.' example: qcaiwvpxcna client_secret: type: string description: '' example: consequatur halopsa_client_id: type: integer description: 'Must be at least 1.' example: 47 required: - base_url - client_id - client_secret - halopsa_client_id '/v1/integrations/{integration}/options': get: summary: 'List HaloPSA Options' operationId: listHaloPSAOptions description: "Load the HaloPSA ticket types, categories and clients with the saved credentials of an enabled HaloPSA integration.\n" parameters: [] responses: 200: description: success content: application/json: schema: type: object example: ticket_types: - id: 20 name: Task categories: [] clients: - id: 12 name: Acme properties: ticket_types: type: array example: - id: 20 name: Task items: type: object properties: id: type: integer example: 20 name: type: string example: Task categories: type: array example: [] clients: type: array example: - id: 12 name: Acme items: type: object properties: id: type: integer example: 12 name: type: string example: Acme 404: description: 'integration not enabled' content: application/json: schema: type: object example: error: 'Integration not enabled' properties: error: type: string example: 'Integration not enabled' tags: - Integrations parameters: - in: path name: integration description: 'The ID of the enabled HaloPSA integration.' example: perspiciatis required: true schema: type: string '/v1/integrations/{integration}/options/sites': get: summary: 'List HaloPSA Sites' operationId: listHaloPSASites description: "Load the sites of a HaloPSA client with the saved credentials of an enabled HaloPSA integration.\n" parameters: - in: query name: halopsa_client_id description: 'The HaloPSA client ID.' example: 12 required: true schema: type: integer description: 'The HaloPSA client ID.' example: 12 responses: 200: description: success content: application/json: schema: type: object example: sites: - id: 18 name: EMEA properties: sites: type: array example: - id: 18 name: EMEA items: type: object properties: id: type: integer example: 18 name: type: string example: EMEA tags: - Integrations requestBody: required: true content: application/json: schema: type: object properties: halopsa_client_id: type: integer description: 'Must be at least 1.' example: 49 required: - halopsa_client_id parameters: - in: path name: integration description: 'The ID of the enabled HaloPSA integration.' example: et required: true schema: type: string /v1/integrations/halopsa/options/ticket-type-requirements: post: summary: 'Preview HaloPSA Ticket Type Requirements' operationId: previewHaloPSATicketTypeRequirements description: "Report which of impact, urgency and category a HaloPSA ticket type makes mandatory, plus other mandatory fields SecurityHive cannot fill, with connection settings that have not been saved yet. Nothing is stored.\n" parameters: [] responses: 200: description: success content: application/json: schema: type: object example: ticket_type_id: 1 ticket_type_name: Incident requires_impact: true requires_urgency: true requires_category: true unsupported_mandatory_fields: [] properties: ticket_type_id: type: integer example: 1 ticket_type_name: type: string example: Incident requires_impact: type: boolean example: true requires_urgency: type: boolean example: true requires_category: type: boolean example: true unsupported_mandatory_fields: type: array example: [] tags: - Integrations requestBody: required: true content: application/json: schema: type: object properties: base_url: type: string description: 'Must be a valid URL.' example: 'http://www.larson.com/natus-tenetur-qui-dolore-itaque-aliquid-quia-nobis' auth_url: type: string description: 'Must be a valid URL.' example: 'https://www.murazik.info/quam-sint-deleniti-ipsum-in-consectetur' nullable: true tenant: type: string description: 'Must not be greater than 255 characters.' example: dpweogewrcigshwec nullable: true client_id: type: string description: 'Must not be greater than 255 characters.' example: mvbeaxrifx client_secret: type: string description: '' example: sunt ticket_type_id: type: integer description: 'Must be at least 1.' example: 39 required: - base_url - client_id - client_secret - ticket_type_id '/v1/integrations/{integration}/options/ticket-type-requirements': get: summary: 'List HaloPSA Ticket Type Requirements' operationId: listHaloPSATicketTypeRequirements description: "Report which of impact, urgency and category a HaloPSA ticket type makes mandatory, using the saved credentials of an enabled HaloPSA integration.\n" parameters: - in: query name: ticket_type_id description: 'The HaloPSA ticket type ID.' example: 1 required: true schema: type: integer description: 'The HaloPSA ticket type ID.' example: 1 responses: 200: description: success content: application/json: schema: type: object example: ticket_type_id: 1 ticket_type_name: Incident requires_impact: true requires_urgency: true requires_category: true unsupported_mandatory_fields: [] properties: ticket_type_id: type: integer example: 1 ticket_type_name: type: string example: Incident requires_impact: type: boolean example: true requires_urgency: type: boolean example: true requires_category: type: boolean example: true unsupported_mandatory_fields: type: array example: [] tags: - Integrations requestBody: required: true content: application/json: schema: type: object properties: ticket_type_id: type: integer description: 'Must be at least 1.' example: 87 required: - ticket_type_id parameters: - in: path name: integration description: 'The ID of the enabled HaloPSA integration.' example: aspernatur required: true schema: type: string /v1/me: get: summary: 'Retrieve the authenticated user' operationId: retrieveTheAuthenticatedUser description: 'Retrieves the authenticated user and its metadata.' parameters: - in: query name: include description: 'Include additional relationships (comma separated).' example: managingCompany.type required: false schema: type: string description: 'Include additional relationships (comma separated).' example: managingCompany.type enum: - company - company.type - company.partner - managingCompany - managingCompany.type - managingCompany.partner responses: 200: description: '' content: application/json: schema: type: object example: data: id: b71f91f3-cd33-41c1-a1c4-21ff8a503f99 company_id: '2202532' managing_company_id: '2202532' first_name: Haleigh last_name: Bergnaum two_factor_enabled: false two_factor_configured: false email: legros.shyann@hotmail.com email_verified_at: '2026-10-04T07:06:54Z' phonenumber: 260-604-8974 phonenumber_verified_at: '2026-10-04T07:06:54Z' report_interval: weekly manageable_companies: - id: '2202532' uuid: e99f24a4-dcd1-4b14-a7f6-27dd483c80bf name: Effertz-Kuvalis role: name: norole title: 'No role assigned' abilities: [] need_to_configure_2fa: false terms_agreed_at: '2026-10-04T07:06:54Z' sso_provider: null created_at: '2026-10-04T07:06:54Z' updated_at: '2026-10-04T07:06:55Z' links: self: 'http://api.securityhive.io/v1/me' properties: data: type: object properties: id: type: string example: b71f91f3-cd33-41c1-a1c4-21ff8a503f99 company_id: type: string example: '2202532' managing_company_id: type: string example: '2202532' first_name: type: string example: Haleigh last_name: type: string example: Bergnaum two_factor_enabled: type: boolean example: false two_factor_configured: type: boolean example: false email: type: string example: legros.shyann@hotmail.com email_verified_at: type: string example: '2026-10-04T07:06:54Z' phonenumber: type: string example: 260-604-8974 phonenumber_verified_at: type: string example: '2026-10-04T07:06:54Z' report_interval: type: string example: weekly manageable_companies: type: array example: - id: '2202532' uuid: e99f24a4-dcd1-4b14-a7f6-27dd483c80bf name: Effertz-Kuvalis items: type: object properties: id: type: string example: '2202532' uuid: type: string example: e99f24a4-dcd1-4b14-a7f6-27dd483c80bf name: type: string example: Effertz-Kuvalis role: type: object properties: name: type: string example: norole title: type: string example: 'No role assigned' abilities: type: array example: [] need_to_configure_2fa: type: boolean example: false terms_agreed_at: type: string example: '2026-10-04T07:06:54Z' sso_provider: type: string example: null nullable: true created_at: type: string example: '2026-10-04T07:06:54Z' updated_at: type: string example: '2026-10-04T07:06:55Z' links: type: object properties: self: type: string example: 'http://api.securityhive.io/v1/me' tags: - Me patch: summary: 'Update the authenticated user' operationId: updateTheAuthenticatedUser description: 'Updates the authenticated user' parameters: [] responses: 204: description: 'update successful' content: text/plain: schema: type: string example: '' 422: description: 'validation error' content: application/json: schema: type: object example: message: 'phonenumber field contains invalid characters' properties: message: type: string example: 'phonenumber field contains invalid characters' tags: - Me requestBody: required: false content: application/json: schema: type: object properties: first_name: type: string description: 'Must not be greater than 100 characters.' example: John last_name: type: string description: 'Must not be greater than 100 characters.' example: Doe phonenumber: type: string description: 'Must be a valid phone number.' example: '+31612345678' nullable: true managing_company_id: type: string description: 'Must be a valid company id the user has access to.' example: '1' report_interval: type: string description: 'Must be one of the following values: disabled, weekly, monthly, quarterly.' example: weekly terms_agreed_at: type: string description: 'Must be a valid date.' example: '2026-10-04T07:06:55' role: type: string description: 'Must be a valid role name.' example: admin /v1/tags: get: summary: 'List tags.' operationId: listTags description: " Retrieve all tags for the current company. Look at the 'Retrieve a tag' endpoint for more details on the tag object.\n " parameters: - in: query name: 'filter[name]' description: '' example: sequi required: false schema: type: 'Filter by tag name.' description: '' example: sequi - in: query name: 'filter[business_impact]' description: '' example: high required: false schema: type: 'Filter by business impact.' description: '' example: high - in: query name: 'filter[system_tag]' description: '' example: true required: false schema: type: 'Filter tags that are default.' description: '' example: true - in: query name: sort description: '' example: business_impact required: false schema: type: 'The column(s) to sort by. Prefix with - for descending order. Eg sort=business_impact' description: '' example: business_impact enum: - business_impact - name - created_at - in: query name: include description: '' example: assets required: false schema: type: 'Include additional relationships (comma separated).' description: '' example: assets enum: - assets responses: 200: description: '' content: application/json: schema: type: object example: data: - id: a2e63db6-beab-4ee0-b85a-21ccdfcd367b company_id: '1813858' name: a98a4522-e0a7-366b-a4bd-fe7d1c59f91f description: 'Deleniti ut non quod aut libero. Nemo fugiat et in reiciendis ullam qui. Est debitis aut veritatis iste eum. Dolorum et velit illum quae ut tempore officia qui. Voluptas aut quasi minus.' business_impact: critical system_tag: true asset_count: 0 created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' - id: a2e63db6-c1bb-4471-9223-27eb4f627930 company_id: '3676369' name: a8598dda-5329-35f5-89db-093f851c2b1a description: 'Qui in aut non autem. Voluptatem est ut tenetur sunt soluta. Facilis dignissimos molestiae laudantium repellendus aperiam quaerat provident aut. Aut vitae voluptates non et.' business_impact: low system_tag: false asset_count: 0 created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.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 properties: data: type: array example: - id: a2e63db6-beab-4ee0-b85a-21ccdfcd367b company_id: '1813858' name: a98a4522-e0a7-366b-a4bd-fe7d1c59f91f description: 'Deleniti ut non quod aut libero. Nemo fugiat et in reiciendis ullam qui. Est debitis aut veritatis iste eum. Dolorum et velit illum quae ut tempore officia qui. Voluptas aut quasi minus.' business_impact: critical system_tag: true asset_count: 0 created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' - id: a2e63db6-c1bb-4471-9223-27eb4f627930 company_id: '3676369' name: a8598dda-5329-35f5-89db-093f851c2b1a description: 'Qui in aut non autem. Voluptatem est ut tenetur sunt soluta. Facilis dignissimos molestiae laudantium repellendus aperiam quaerat provident aut. Aut vitae voluptates non et.' business_impact: low system_tag: false asset_count: 0 created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' items: type: object properties: id: type: string example: a2e63db6-beab-4ee0-b85a-21ccdfcd367b company_id: type: string example: '1813858' name: type: string example: a98a4522-e0a7-366b-a4bd-fe7d1c59f91f description: type: string example: 'Deleniti ut non quod aut libero. Nemo fugiat et in reiciendis ullam qui. Est debitis aut veritatis iste eum. Dolorum et velit illum quae ut tempore officia qui. Voluptas aut quasi minus.' business_impact: type: string example: critical system_tag: type: boolean example: true asset_count: type: integer example: 0 created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' links: type: object properties: first: type: string example: '/?page=1' last: type: string example: '/?page=1' prev: type: string example: null nullable: true next: type: string example: null nullable: true meta: type: object properties: current_page: type: integer example: 1 from: type: integer example: 1 last_page: type: integer example: 1 links: type: array example: - 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 items: type: object properties: url: type: string example: null nullable: true label: type: string example: '« Previous' page: type: string example: null nullable: true active: type: boolean example: false path: type: string example: / per_page: type: integer example: 10 to: type: integer example: 2 total: type: integer example: 2 tags: - Tags post: summary: 'Create tag.' operationId: createTag description: "Will create a new tag for the current company. \n " parameters: [] responses: 201: description: 'Successfully created tag' content: application/json: schema: type: object example: data: id: a2e63db6-c772-4e8e-83f0-79890978345a company_id: '8475977' name: f6d8f4d1-2adb-32dd-a24b-eb372c322a4c description: 'Ratione sit est deserunt possimus in quia. Tempora tempora quidem ut a recusandae voluptatem quis et. Et pariatur ipsam et nobis voluptatem sit aliquid fugit. Vel in ipsam maxime.' business_impact: low system_tag: true asset_count: 0 created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' properties: data: type: object properties: id: type: string example: a2e63db6-c772-4e8e-83f0-79890978345a company_id: type: string example: '8475977' name: type: string example: f6d8f4d1-2adb-32dd-a24b-eb372c322a4c description: type: string example: 'Ratione sit est deserunt possimus in quia. Tempora tempora quidem ut a recusandae voluptatem quis et. Et pariatur ipsam et nobis voluptatem sit aliquid fugit. Vel in ipsam maxime.' business_impact: type: string example: low system_tag: type: boolean example: true asset_count: type: integer example: 0 created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' 422: description: 'name field is empty' content: application/json: schema: type: object example: message: 'name is required' properties: message: type: string example: 'name is required' tags: - Tags requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'Must not be greater than 255 characters.' example: vzogmjtanqxye description: type: string description: 'Must not be greater than 255 characters.' example: 'A in maiores aut suscipit ratione commodi similique dolor.' business_impact: type: string description: '' example: medium enum: - low - medium - high - critical required: - name - description - business_impact '/v1/tags/{id}': get: summary: 'Retrieve a tag.' operationId: retrieveATag description: " Retrieves an tag by its ID.\n " parameters: - in: query name: include description: '' example: assets required: false schema: type: 'Include additional relationships (comma separated).' description: '' example: assets enum: - assets responses: 200: description: 'Successfully retrieved tag' content: application/json: schema: type: object example: data: id: a2e63db6-cc1e-4bf3-9002-524dc24c600f company_id: '914639' name: 5f3e5753-d1f7-3fb8-8f9b-90f2303bec8e description: 'Voluptatem quia nostrum iure ut iusto. Nihil eum totam nulla sint adipisci doloremque. Et et esse ea neque voluptates enim aut. Enim debitis aut ab debitis cupiditate rerum.' business_impact: medium system_tag: true asset_count: 0 created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' properties: data: type: object properties: id: type: string example: a2e63db6-cc1e-4bf3-9002-524dc24c600f company_id: type: string example: '914639' name: type: string example: 5f3e5753-d1f7-3fb8-8f9b-90f2303bec8e description: type: string example: 'Voluptatem quia nostrum iure ut iusto. Nihil eum totam nulla sint adipisci doloremque. Et et esse ea neque voluptates enim aut. Enim debitis aut ab debitis cupiditate rerum.' business_impact: type: string example: medium system_tag: type: boolean example: true asset_count: type: integer example: 0 created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' tags: - Tags patch: summary: 'Update tag.' operationId: updateTag description: "Will update an existing tag \n " parameters: [] responses: 200: description: 'Successfully updated tag' content: application/json: schema: type: object example: data: id: a2e63db6-d11b-40d6-aaa1-fd13c8923559 company_id: '8508375' name: 80ed9c4d-8a16-3d4c-97bd-cb3837956722 description: 'Tenetur voluptas est ea non aperiam. Ab ut eum repellat. Accusantium velit voluptates praesentium iste ullam aut harum.' business_impact: medium system_tag: true asset_count: 0 created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' properties: data: type: object properties: id: type: string example: a2e63db6-d11b-40d6-aaa1-fd13c8923559 company_id: type: string example: '8508375' name: type: string example: 80ed9c4d-8a16-3d4c-97bd-cb3837956722 description: type: string example: 'Tenetur voluptas est ea non aperiam. Ab ut eum repellat. Accusantium velit voluptates praesentium iste ullam aut harum.' business_impact: type: string example: medium system_tag: type: boolean example: true asset_count: type: integer example: 0 created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' 422: description: 'name field is empty' content: application/json: schema: type: object example: message: 'name is required' properties: message: type: string example: 'name is required' tags: - Tags requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'Must not be greater than 255 characters.' example: cco description: type: string description: 'Must not be greater than 255 characters.' example: 'Aut odit eaque est error rerum assumenda.' business_impact: type: string description: '' example: high enum: - low - medium - high - critical delete: summary: 'Delete tag.' operationId: deleteTag description: "Will delete an existing tag \n " parameters: [] responses: 204: description: 'tag deleted successfully' content: application/json: schema: type: array items: type: object example: [] tags: - Tags parameters: - in: path name: id description: 'The ID of the tag.' example: FbcebEfc-ABBA-Aaac-EeEc-fdddEcdFBDAb required: true schema: type: string /v1/users: get: summary: 'List Users' operationId: listUsers description: "Retrieve all users for the current company.\n" parameters: - in: query name: include description: 'Include additional relationships (comma separated).' example: managingCompany.type required: false schema: type: string description: 'Include additional relationships (comma separated).' example: managingCompany.type enum: - company - company.type - company.partner - managingCompany - managingCompany.type - managingCompany.partner - in: query name: sort description: 'Sort the results by column(s) (comma separated).' example: 'first_name,-last_name' required: false schema: type: string description: 'Sort the results by column(s) (comma separated).' example: 'first_name,-last_name' enum: - first_name - last_name - email - phonenumber - report_interval - created_at - two_factor_enabled - role.title - in: query name: filter description: 'Filter the results by column(s) (comma separated).' example: 'first_name:John,last_name:Doe' required: false schema: type: string description: 'Filter the results by column(s) (comma separated).' example: 'first_name:John,last_name:Doe' enum: - first_name - last_name - email - phonenumber - report_interval responses: 200: description: '' content: application/json: schema: type: object example: data: - id: f8a93ab0-d1ef-4841-ba20-bfff5c24f04d company_id: '2762945' managing_company_id: '2762945' first_name: Fabiola last_name: Kovacek two_factor_enabled: false email: cvolkman@yahoo.com email_verified_at: '2026-10-04T07:06:55.000000Z' phonenumber: 1-630-237-6599 phonenumber_verified_at: '2026-10-04T07:06:55.000000Z' report_interval: weekly manageable_companies: - id: '2762945' uuid: 01ad3569-e212-405e-8fc9-da0e918c138e name: 'Anderson, Nienow and Weissnat' role: name: norole title: 'No role assigned' terms_agreed_at: '2026-10-04T07:06:55.000000Z' sso_provider: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' last_login_at: null - id: 7c9039c9-4406-49cb-b40e-d3fd8fc5bcd1 company_id: '8567447' managing_company_id: '8567447' first_name: Sammie last_name: Bins two_factor_enabled: false email: ecollier@hotmail.com email_verified_at: '2026-10-04T07:06:55.000000Z' phonenumber: '(585) 352-6722' phonenumber_verified_at: '2026-10-04T07:06:55.000000Z' report_interval: weekly manageable_companies: - id: '8567447' uuid: 3c3724c0-d191-4f88-afdc-af8aa177a647 name: "D'Amore PLC" role: name: norole title: 'No role assigned' terms_agreed_at: '2026-10-04T07:06:55.000000Z' sso_provider: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:56.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 properties: data: type: array example: - id: f8a93ab0-d1ef-4841-ba20-bfff5c24f04d company_id: '2762945' managing_company_id: '2762945' first_name: Fabiola last_name: Kovacek two_factor_enabled: false email: cvolkman@yahoo.com email_verified_at: '2026-10-04T07:06:55.000000Z' phonenumber: 1-630-237-6599 phonenumber_verified_at: '2026-10-04T07:06:55.000000Z' report_interval: weekly manageable_companies: - id: '2762945' uuid: 01ad3569-e212-405e-8fc9-da0e918c138e name: 'Anderson, Nienow and Weissnat' role: name: norole title: 'No role assigned' terms_agreed_at: '2026-10-04T07:06:55.000000Z' sso_provider: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' last_login_at: null - id: 7c9039c9-4406-49cb-b40e-d3fd8fc5bcd1 company_id: '8567447' managing_company_id: '8567447' first_name: Sammie last_name: Bins two_factor_enabled: false email: ecollier@hotmail.com email_verified_at: '2026-10-04T07:06:55.000000Z' phonenumber: '(585) 352-6722' phonenumber_verified_at: '2026-10-04T07:06:55.000000Z' report_interval: weekly manageable_companies: - id: '8567447' uuid: 3c3724c0-d191-4f88-afdc-af8aa177a647 name: "D'Amore PLC" role: name: norole title: 'No role assigned' terms_agreed_at: '2026-10-04T07:06:55.000000Z' sso_provider: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:56.000000Z' last_login_at: null items: type: object properties: id: type: string example: f8a93ab0-d1ef-4841-ba20-bfff5c24f04d company_id: type: string example: '2762945' managing_company_id: type: string example: '2762945' first_name: type: string example: Fabiola last_name: type: string example: Kovacek two_factor_enabled: type: boolean example: false email: type: string example: cvolkman@yahoo.com email_verified_at: type: string example: '2026-10-04T07:06:55.000000Z' phonenumber: type: string example: 1-630-237-6599 phonenumber_verified_at: type: string example: '2026-10-04T07:06:55.000000Z' report_interval: type: string example: weekly manageable_companies: type: array example: - id: '2762945' uuid: 01ad3569-e212-405e-8fc9-da0e918c138e name: 'Anderson, Nienow and Weissnat' items: type: object properties: id: type: string example: '2762945' uuid: type: string example: 01ad3569-e212-405e-8fc9-da0e918c138e name: type: string example: 'Anderson, Nienow and Weissnat' role: type: object properties: name: type: string example: norole title: type: string example: 'No role assigned' terms_agreed_at: type: string example: '2026-10-04T07:06:55.000000Z' sso_provider: type: string example: null nullable: true created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' last_login_at: type: string example: null nullable: true links: type: object properties: first: type: string example: '/?page=1' last: type: string example: '/?page=1' prev: type: string example: null nullable: true next: type: string example: null nullable: true meta: type: object properties: current_page: type: integer example: 1 from: type: integer example: 1 last_page: type: integer example: 1 links: type: array example: - 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 items: type: object properties: url: type: string example: null nullable: true label: type: string example: '« Previous' page: type: string example: null nullable: true active: type: boolean example: false path: type: string example: / per_page: type: integer example: 10 to: type: integer example: 2 total: type: integer example: 2 tags: - Users post: summary: 'Create User' operationId: createUser description: "Create a new user for the current company.\n" parameters: [] responses: 201: description: 'user created' content: application/json: schema: type: object example: data: id: 1 uuid: 00000000-0000-0000-0000-000000000000 properties: data: type: object properties: id: type: integer example: 1 uuid: type: string example: 00000000-0000-0000-0000-000000000000 404: description: 'role not found' content: application/json: schema: type: object example: message: 'role not found' properties: message: type: string example: 'role not found' 422: description: 'validation error' content: application/json: schema: type: object example: message: 'phonenumber field contains invalid characters' properties: message: type: string example: 'phonenumber field contains invalid characters' tags: - Users requestBody: required: true content: application/json: schema: type: object properties: first_name: type: string description: 'Must not be greater than 100 characters.' example: mypvazwfyvyupioj last_name: type: string description: 'Must not be greater than 100 characters.' example: sj email: type: string description: 'Must be a valid email address. Must not be greater than 255 characters.' example: omer97@example.org phonenumber: type: string description: 'Must be a valid phone number.' example: '+31612345678' nullable: true report_interval: type: string description: '' example: disabled enum: - disabled - weekly - monthly - quarterly role: type: required description: 'string Must be a valid role name.' example: admin required: - first_name - last_name - email '/v1/users/{user_uuid}': get: summary: 'Retrieve an user' operationId: retrieveAnUser description: "Retrieves an user for the current company.\n" parameters: - in: query name: include description: 'Include additional relationships (comma separated).' example: company required: false schema: type: string description: 'Include additional relationships (comma separated).' example: company enum: - company - company.type - company.partner - managingCompany - managingCompany.type - managingCompany.partner responses: 200: description: '' content: application/json: schema: type: object example: data: id: 7e11f60c-933c-4853-8c1c-91d66233610e company_id: '8475543' managing_company_id: '8475543' first_name: Cecelia last_name: Romaguera two_factor_enabled: false email: adolfo79@gmail.com email_verified_at: '2026-10-04T07:06:56.000000Z' phonenumber: +1-480-718-5853 phonenumber_verified_at: '2026-10-04T07:06:56.000000Z' report_interval: weekly manageable_companies: - id: '8475543' uuid: e687ac75-1803-4d8c-87f7-edd117f99a8f name: Langosh-Lindgren role: name: norole title: 'No role assigned' terms_agreed_at: '2026-10-04T07:06:56.000000Z' sso_provider: null created_at: '2026-10-04T07:06:56.000000Z' updated_at: '2026-10-04T07:06:56.000000Z' last_login_at: null properties: data: type: object properties: id: type: string example: 7e11f60c-933c-4853-8c1c-91d66233610e company_id: type: string example: '8475543' managing_company_id: type: string example: '8475543' first_name: type: string example: Cecelia last_name: type: string example: Romaguera two_factor_enabled: type: boolean example: false email: type: string example: adolfo79@gmail.com email_verified_at: type: string example: '2026-10-04T07:06:56.000000Z' phonenumber: type: string example: +1-480-718-5853 phonenumber_verified_at: type: string example: '2026-10-04T07:06:56.000000Z' report_interval: type: string example: weekly manageable_companies: type: array example: - id: '8475543' uuid: e687ac75-1803-4d8c-87f7-edd117f99a8f name: Langosh-Lindgren items: type: object properties: id: type: string example: '8475543' uuid: type: string example: e687ac75-1803-4d8c-87f7-edd117f99a8f name: type: string example: Langosh-Lindgren role: type: object properties: name: type: string example: norole title: type: string example: 'No role assigned' terms_agreed_at: type: string example: '2026-10-04T07:06:56.000000Z' sso_provider: type: string example: null nullable: true created_at: type: string example: '2026-10-04T07:06:56.000000Z' updated_at: type: string example: '2026-10-04T07:06:56.000000Z' last_login_at: type: string example: null nullable: true 404: description: 'user not found' content: application/json: schema: type: object example: message: 'user not found' properties: message: type: string example: 'user not found' tags: - Users patch: summary: 'Update an user' operationId: updateAnUser description: "Updates an user for the current company.\n" parameters: [] responses: 204: description: 'update successful' content: text/plain: schema: type: string example: '' 403: description: '' content: application/json: schema: oneOf: - description: 'invalid password' type: object example: message: 'The old password is incorrect.' properties: message: type: string example: 'The old password is incorrect.' - description: 'change password of other user' type: object example: message: 'You are not allowed to change the password of another user.' properties: message: type: string example: 'You are not allowed to change the password of another user.' 404: description: 'user not found' content: application/json: schema: type: object example: message: 'user not found' properties: message: type: string example: 'user not found' 422: description: 'validation error' content: application/json: schema: type: object example: message: 'phonenumber field contains invalid characters' properties: message: type: string example: 'phonenumber field contains invalid characters' tags: - Users requestBody: required: false content: application/json: schema: type: object properties: first_name: type: string description: 'Must not be greater than 100 characters.' example: John last_name: type: string description: 'Must not be greater than 100 characters.' example: Doe email: type: string description: 'Must be a valid email address. Must not be greater than 255 characters.' example: john@doe.com phonenumber: type: string description: 'Must be a valid phone number.' example: '+31612345678' nullable: true report_interval: type: string description: 'Must be one of the following values: disabled, weekly, monthly, quarterly.' example: weekly role: type: string description: 'Must be a valid role name.' example: admin parameters: - in: path name: user_uuid description: 'string The id of the user' example: 7702c563-f640-382f-98e1-d5fb0456fab3 required: true schema: type: string /v1/vulnerabilities: get: summary: 'List vulnerabilities.' operationId: listVulnerabilities description: " Retrieve all vulnerabilities for the current company. Look at the 'Retrieve a vulnerability' endpoint for more details on the vulnerability object.\n " parameters: - in: query name: 'filter[name]' description: '' example: SQL required: false schema: type: 'Filter vulnerabilities by their name' description: '' example: SQL - in: query name: 'filter[host]' description: '' example: 192.168.1.1 required: false schema: type: 'Filter vulnerabilities found on host' description: '' example: 192.168.1.1 - in: query name: 'filter[hostname]' description: '' example: laptop-1.local required: false schema: type: 'Filter vulnerabilities found on hostname' description: '' example: laptop-1.local - in: query name: 'filter[status]' description: '' example: Accepted required: false schema: type: 'Filter vulnerabilities by their status' description: '' example: Accepted enum: - Resolved - Unresolved - Accepted - Detected - Expired - in: query name: 'filter[threat]' description: '' example: High required: false schema: type: 'Filter vulnerabilities by their threat level' description: '' example: High enum: - Log - Low - Medium - High - Critical - in: query name: 'filter[scan_id]' description: '' example: '123' required: false schema: type: 'Filter vulnerabilities found by given scan_id' description: '' example: '123' - in: query name: 'filter[family]' description: '' example: 'SQL Injection' required: false schema: type: 'Filter vulnerabilities by their family' description: '' example: 'SQL Injection' - in: query name: sort description: '' example: port required: false schema: type: 'The column(s) to sort by. Prefix with - for descending order. Eg sort=-name' description: '' example: port enum: - name - port - cvss_base_score - epss_score - qod_type - last_seen responses: 200: description: '' content: application/json: schema: type: object example: data: - id: a2e63db6-5c74-4399-ba9f-e0c828250faf asset_id: a2e63db6-4d6f-4c67-ae79-0b0f8c99eabe company_id: '6345279' vulnerability_definition_id: a2e63db6-5abe-4d76-8696-9bc60973db4b vulnerability_definition: id: a2e63db6-5abe-4d76-8696-9bc60973db4b name: 'Unnecessary Services Enabled via aperiam input' description: 'Sit pariatur dolorum voluptas error voluptas voluptatibus veritatis. Numquam ut cum maxime placeat temporibus accusamus. Sunt minima cum quis cum et neque quia.' solution: 'Repellendus sit itaque veniam error sapiente vel rerum voluptas. In qui asperiores quia id aut voluptates.' category: 'Unnecessary Services Enabled' threat_level: Medium definition_type: openvas definition: id: a2e63db6-5693-4cd0-8c0b-7fb16a6ce872 o_id: 0ccf1f01-c3af-32df-8eef-fc3055fe9519 name: 'Unnecessary Services Enabled via aperiam input' family: 'Unnecessary Services Enabled' reference_urls: 'http://www.wilkinson.com/quaerat-illum-consequatur-itaque, https://wisozk.org/consequatur-est-modi-minima-velit-maiores-quibusdam.html' reference_cves: 'CVE-2016-3230, CVE-2015-8933' solution_type: 'Configuration Change' solution_description: 'Repellendus sit itaque veniam error sapiente vel rerum voluptas. In qui asperiores quia id aut voluptates.' summary: 'Sit pariatur dolorum voluptas error voluptas voluptatibus veritatis. Numquam ut cum maxime placeat temporibus accusamus. Sunt minima cum quis cum et neque quia.' insight: 'Illum quas doloremque inventore tempora accusamus. Commodi eos quia dolor aut numquam ipsum temporibus. Molestiae aut sequi totam quasi id blanditiis. Accusantium cupiditate itaque iste illum harum at maiores.' affected: 'Quo provident pariatur reiciendis esse excepturi sed. Nesciunt pariatur voluptatem amet dignissimos amet blanditiis. Est est ad dolorem dignissimos.' impact: 'Aut numquam quasi accusantium nam. Ut aut quo voluptas facilis est voluptatem. Eius vitae est labore a velit praesentium. Sapiente molestiae rerum incidunt eius et officiis. Eos in temporibus ut et qui quia sed error. Ab vel ex quo et quo.' vuldetect: 'Itaque totam accusamus animi. Perferendis est ut optio laborum ipsa sit distinctio voluptates. Aliquam hic quae totam ducimus eos. Neque officia quos impedit alias rerum et.' priority: Log qod_type: remote_active qod_value: 72 cvss_base_score: 7.1 cvss_base_vector: 'AV:N/AC:L/Au:S/C:N/I:P/A:N' epss: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' host: 118.135.206.254 hostname: wintheiser.com port: 24370/tcp details: 'Reiciendis quaerat dolor fuga illo architecto ducimus. Delectus qui optio rerum rerum velit deleniti perspiciatis. Vitae eos itaque sint laudantium consequatur.' status: Unresolved first_seen: '2025-11-09T17:18:24.000000Z' last_seen: '2026-07-19T06:54:37.000000Z' created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' name: 'Unnecessary Services Enabled via aperiam input' description: 'Reiciendis quaerat dolor fuga illo architecto ducimus. Delectus qui optio rerum rerum velit deleniti perspiciatis. Vitae eos itaque sint laudantium consequatur.' cvss_base_score: 7.1 cvss_base_vector: 'AV:N/AC:L/Au:S/C:N/I:P/A:N' qod_type: remote_active qod_value: 72 threat: Medium scanner_id: null scanner_hostname: null plugin: id: a2e63db6-5693-4cd0-8c0b-7fb16a6ce872 o_id: 0ccf1f01-c3af-32df-8eef-fc3055fe9519 name: 'Unnecessary Services Enabled via aperiam input' family: 'Unnecessary Services Enabled' reference_urls: 'http://www.wilkinson.com/quaerat-illum-consequatur-itaque, https://wisozk.org/consequatur-est-modi-minima-velit-maiores-quibusdam.html' reference_cves: 'CVE-2016-3230, CVE-2015-8933' solution_type: 'Configuration Change' solution_description: 'Repellendus sit itaque veniam error sapiente vel rerum voluptas. In qui asperiores quia id aut voluptates.' summary: 'Sit pariatur dolorum voluptas error voluptas voluptatibus veritatis. Numquam ut cum maxime placeat temporibus accusamus. Sunt minima cum quis cum et neque quia.' insight: 'Illum quas doloremque inventore tempora accusamus. Commodi eos quia dolor aut numquam ipsum temporibus. Molestiae aut sequi totam quasi id blanditiis. Accusantium cupiditate itaque iste illum harum at maiores.' affected: 'Quo provident pariatur reiciendis esse excepturi sed. Nesciunt pariatur voluptatem amet dignissimos amet blanditiis. Est est ad dolorem dignissimos.' impact: 'Aut numquam quasi accusantium nam. Ut aut quo voluptas facilis est voluptatem. Eius vitae est labore a velit praesentium. Sapiente molestiae rerum incidunt eius et officiis. Eos in temporibus ut et qui quia sed error. Ab vel ex quo et quo.' vuldetect: 'Itaque totam accusamus animi. Perferendis est ut optio laborum ipsa sit distinctio voluptates. Aliquam hic quae totam ducimus eos. Neque officia quos impedit alias rerum et.' priority: Log qod_type: remote_active qod_value: 72 - id: a2e63db6-6891-4ce5-9d4b-1aaf9965bc99 asset_id: a2e63db6-63b5-4069-b14f-342917733a93 company_id: '7041783' vulnerability_definition_id: a2e63db6-6806-4db1-a182-5fde90f3a554 vulnerability_definition: id: a2e63db6-6806-4db1-a182-5fde90f3a554 name: '9 in quam' description: 'Id accusantium a corporis esse consequatur. Ipsum rerum non aut. Praesentium quis dolores rerum a. Natus nam et vel est cumque est ut.' solution: 'Soluta nemo officiis voluptatem. Voluptatem repellat distinctio nulla occaecati. Eligendi rerum quos deserunt quis esse modi dolorem.' category: '9' threat_level: High definition_type: openvas definition: id: a2e63db6-66aa-4ddd-b41d-8f721c11e8aa o_id: 13901000-a2bf-31c2-9265-1fa379a51035 name: '9 in quam' family: '9' reference_urls: 'http://hermann.com/perspiciatis-consectetur-dolorem-eum-veniam-consequuntur.html, http://collins.com/' reference_cves: 'CVE-2021-2295, CVE-2019-7338' solution_type: WorkAround solution_description: 'Soluta nemo officiis voluptatem. Voluptatem repellat distinctio nulla occaecati. Eligendi rerum quos deserunt quis esse modi dolorem.' summary: 'Id accusantium a corporis esse consequatur. Ipsum rerum non aut. Praesentium quis dolores rerum a. Natus nam et vel est cumque est ut.' insight: 'Hic qui similique dolorem aut. Est dolor cumque qui non. Eos corrupti nulla laboriosam et. At veritatis quaerat autem eius.' affected: 'Ullam totam reprehenderit eveniet. Laborum quibusdam quis corrupti cum ratione soluta consequatur. Vel tenetur voluptatem dolor et asperiores.' impact: 'Sapiente quaerat quibusdam beatae excepturi. Voluptas id ex provident illum. Consequatur aut sunt ab quas similique. Laborum aut ipsa nihil quo qui totam ullam.' vuldetect: 'Repellat voluptas facere necessitatibus eos quibusdam non dicta esse. Illo placeat tempore velit corporis laudantium. Ut doloribus quo sed.' priority: Low qod_type: remote_banner qod_value: 25 cvss_base_score: 2.1 cvss_base_vector: 'AV:A/AC:H/Au:M/C:N/I:N/A:N' epss: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' host: 231.40.193.2 hostname: weissnat.org port: 5432/tcp details: 'Autem dolorum nisi in quidem. Veritatis quae nulla quae exercitationem iste. Voluptas sunt iste consequuntur dolorum cumque non. Aliquam voluptate temporibus occaecati incidunt quod nulla.' status: Expired first_seen: '2026-06-19T07:28:05.000000Z' last_seen: '2026-07-18T04:26:26.000000Z' created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' name: '9 in quam' description: 'Autem dolorum nisi in quidem. Veritatis quae nulla quae exercitationem iste. Voluptas sunt iste consequuntur dolorum cumque non. Aliquam voluptate temporibus occaecati incidunt quod nulla.' cvss_base_score: 2.1 cvss_base_vector: 'AV:A/AC:H/Au:M/C:N/I:N/A:N' qod_type: remote_banner qod_value: 25 threat: High scanner_id: null scanner_hostname: null plugin: id: a2e63db6-66aa-4ddd-b41d-8f721c11e8aa o_id: 13901000-a2bf-31c2-9265-1fa379a51035 name: '9 in quam' family: '9' reference_urls: 'http://hermann.com/perspiciatis-consectetur-dolorem-eum-veniam-consequuntur.html, http://collins.com/' reference_cves: 'CVE-2021-2295, CVE-2019-7338' solution_type: WorkAround solution_description: 'Soluta nemo officiis voluptatem. Voluptatem repellat distinctio nulla occaecati. Eligendi rerum quos deserunt quis esse modi dolorem.' summary: 'Id accusantium a corporis esse consequatur. Ipsum rerum non aut. Praesentium quis dolores rerum a. Natus nam et vel est cumque est ut.' insight: 'Hic qui similique dolorem aut. Est dolor cumque qui non. Eos corrupti nulla laboriosam et. At veritatis quaerat autem eius.' affected: 'Ullam totam reprehenderit eveniet. Laborum quibusdam quis corrupti cum ratione soluta consequatur. Vel tenetur voluptatem dolor et asperiores.' impact: 'Sapiente quaerat quibusdam beatae excepturi. Voluptas id ex provident illum. Consequatur aut sunt ab quas similique. Laborum aut ipsa nihil quo qui totam ullam.' vuldetect: 'Repellat voluptas facere necessitatibus eos quibusdam non dicta esse. Illo placeat tempore velit corporis laudantium. Ut doloribus quo sed.' priority: Low qod_type: remote_banner qod_value: 25 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 properties: data: type: array example: - id: a2e63db6-5c74-4399-ba9f-e0c828250faf asset_id: a2e63db6-4d6f-4c67-ae79-0b0f8c99eabe company_id: '6345279' vulnerability_definition_id: a2e63db6-5abe-4d76-8696-9bc60973db4b vulnerability_definition: id: a2e63db6-5abe-4d76-8696-9bc60973db4b name: 'Unnecessary Services Enabled via aperiam input' description: 'Sit pariatur dolorum voluptas error voluptas voluptatibus veritatis. Numquam ut cum maxime placeat temporibus accusamus. Sunt minima cum quis cum et neque quia.' solution: 'Repellendus sit itaque veniam error sapiente vel rerum voluptas. In qui asperiores quia id aut voluptates.' category: 'Unnecessary Services Enabled' threat_level: Medium definition_type: openvas definition: id: a2e63db6-5693-4cd0-8c0b-7fb16a6ce872 o_id: 0ccf1f01-c3af-32df-8eef-fc3055fe9519 name: 'Unnecessary Services Enabled via aperiam input' family: 'Unnecessary Services Enabled' reference_urls: 'http://www.wilkinson.com/quaerat-illum-consequatur-itaque, https://wisozk.org/consequatur-est-modi-minima-velit-maiores-quibusdam.html' reference_cves: 'CVE-2016-3230, CVE-2015-8933' solution_type: 'Configuration Change' solution_description: 'Repellendus sit itaque veniam error sapiente vel rerum voluptas. In qui asperiores quia id aut voluptates.' summary: 'Sit pariatur dolorum voluptas error voluptas voluptatibus veritatis. Numquam ut cum maxime placeat temporibus accusamus. Sunt minima cum quis cum et neque quia.' insight: 'Illum quas doloremque inventore tempora accusamus. Commodi eos quia dolor aut numquam ipsum temporibus. Molestiae aut sequi totam quasi id blanditiis. Accusantium cupiditate itaque iste illum harum at maiores.' affected: 'Quo provident pariatur reiciendis esse excepturi sed. Nesciunt pariatur voluptatem amet dignissimos amet blanditiis. Est est ad dolorem dignissimos.' impact: 'Aut numquam quasi accusantium nam. Ut aut quo voluptas facilis est voluptatem. Eius vitae est labore a velit praesentium. Sapiente molestiae rerum incidunt eius et officiis. Eos in temporibus ut et qui quia sed error. Ab vel ex quo et quo.' vuldetect: 'Itaque totam accusamus animi. Perferendis est ut optio laborum ipsa sit distinctio voluptates. Aliquam hic quae totam ducimus eos. Neque officia quos impedit alias rerum et.' priority: Log qod_type: remote_active qod_value: 72 cvss_base_score: 7.1 cvss_base_vector: 'AV:N/AC:L/Au:S/C:N/I:P/A:N' epss: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' host: 118.135.206.254 hostname: wintheiser.com port: 24370/tcp details: 'Reiciendis quaerat dolor fuga illo architecto ducimus. Delectus qui optio rerum rerum velit deleniti perspiciatis. Vitae eos itaque sint laudantium consequatur.' status: Unresolved first_seen: '2025-11-09T17:18:24.000000Z' last_seen: '2026-07-19T06:54:37.000000Z' created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' name: 'Unnecessary Services Enabled via aperiam input' description: 'Reiciendis quaerat dolor fuga illo architecto ducimus. Delectus qui optio rerum rerum velit deleniti perspiciatis. Vitae eos itaque sint laudantium consequatur.' cvss_base_score: 7.1 cvss_base_vector: 'AV:N/AC:L/Au:S/C:N/I:P/A:N' qod_type: remote_active qod_value: 72 threat: Medium scanner_id: null scanner_hostname: null plugin: id: a2e63db6-5693-4cd0-8c0b-7fb16a6ce872 o_id: 0ccf1f01-c3af-32df-8eef-fc3055fe9519 name: 'Unnecessary Services Enabled via aperiam input' family: 'Unnecessary Services Enabled' reference_urls: 'http://www.wilkinson.com/quaerat-illum-consequatur-itaque, https://wisozk.org/consequatur-est-modi-minima-velit-maiores-quibusdam.html' reference_cves: 'CVE-2016-3230, CVE-2015-8933' solution_type: 'Configuration Change' solution_description: 'Repellendus sit itaque veniam error sapiente vel rerum voluptas. In qui asperiores quia id aut voluptates.' summary: 'Sit pariatur dolorum voluptas error voluptas voluptatibus veritatis. Numquam ut cum maxime placeat temporibus accusamus. Sunt minima cum quis cum et neque quia.' insight: 'Illum quas doloremque inventore tempora accusamus. Commodi eos quia dolor aut numquam ipsum temporibus. Molestiae aut sequi totam quasi id blanditiis. Accusantium cupiditate itaque iste illum harum at maiores.' affected: 'Quo provident pariatur reiciendis esse excepturi sed. Nesciunt pariatur voluptatem amet dignissimos amet blanditiis. Est est ad dolorem dignissimos.' impact: 'Aut numquam quasi accusantium nam. Ut aut quo voluptas facilis est voluptatem. Eius vitae est labore a velit praesentium. Sapiente molestiae rerum incidunt eius et officiis. Eos in temporibus ut et qui quia sed error. Ab vel ex quo et quo.' vuldetect: 'Itaque totam accusamus animi. Perferendis est ut optio laborum ipsa sit distinctio voluptates. Aliquam hic quae totam ducimus eos. Neque officia quos impedit alias rerum et.' priority: Log qod_type: remote_active qod_value: 72 - id: a2e63db6-6891-4ce5-9d4b-1aaf9965bc99 asset_id: a2e63db6-63b5-4069-b14f-342917733a93 company_id: '7041783' vulnerability_definition_id: a2e63db6-6806-4db1-a182-5fde90f3a554 vulnerability_definition: id: a2e63db6-6806-4db1-a182-5fde90f3a554 name: '9 in quam' description: 'Id accusantium a corporis esse consequatur. Ipsum rerum non aut. Praesentium quis dolores rerum a. Natus nam et vel est cumque est ut.' solution: 'Soluta nemo officiis voluptatem. Voluptatem repellat distinctio nulla occaecati. Eligendi rerum quos deserunt quis esse modi dolorem.' category: '9' threat_level: High definition_type: openvas definition: id: a2e63db6-66aa-4ddd-b41d-8f721c11e8aa o_id: 13901000-a2bf-31c2-9265-1fa379a51035 name: '9 in quam' family: '9' reference_urls: 'http://hermann.com/perspiciatis-consectetur-dolorem-eum-veniam-consequuntur.html, http://collins.com/' reference_cves: 'CVE-2021-2295, CVE-2019-7338' solution_type: WorkAround solution_description: 'Soluta nemo officiis voluptatem. Voluptatem repellat distinctio nulla occaecati. Eligendi rerum quos deserunt quis esse modi dolorem.' summary: 'Id accusantium a corporis esse consequatur. Ipsum rerum non aut. Praesentium quis dolores rerum a. Natus nam et vel est cumque est ut.' insight: 'Hic qui similique dolorem aut. Est dolor cumque qui non. Eos corrupti nulla laboriosam et. At veritatis quaerat autem eius.' affected: 'Ullam totam reprehenderit eveniet. Laborum quibusdam quis corrupti cum ratione soluta consequatur. Vel tenetur voluptatem dolor et asperiores.' impact: 'Sapiente quaerat quibusdam beatae excepturi. Voluptas id ex provident illum. Consequatur aut sunt ab quas similique. Laborum aut ipsa nihil quo qui totam ullam.' vuldetect: 'Repellat voluptas facere necessitatibus eos quibusdam non dicta esse. Illo placeat tempore velit corporis laudantium. Ut doloribus quo sed.' priority: Low qod_type: remote_banner qod_value: 25 cvss_base_score: 2.1 cvss_base_vector: 'AV:A/AC:H/Au:M/C:N/I:N/A:N' epss: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' host: 231.40.193.2 hostname: weissnat.org port: 5432/tcp details: 'Autem dolorum nisi in quidem. Veritatis quae nulla quae exercitationem iste. Voluptas sunt iste consequuntur dolorum cumque non. Aliquam voluptate temporibus occaecati incidunt quod nulla.' status: Expired first_seen: '2026-06-19T07:28:05.000000Z' last_seen: '2026-07-18T04:26:26.000000Z' created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' name: '9 in quam' description: 'Autem dolorum nisi in quidem. Veritatis quae nulla quae exercitationem iste. Voluptas sunt iste consequuntur dolorum cumque non. Aliquam voluptate temporibus occaecati incidunt quod nulla.' cvss_base_score: 2.1 cvss_base_vector: 'AV:A/AC:H/Au:M/C:N/I:N/A:N' qod_type: remote_banner qod_value: 25 threat: High scanner_id: null scanner_hostname: null plugin: id: a2e63db6-66aa-4ddd-b41d-8f721c11e8aa o_id: 13901000-a2bf-31c2-9265-1fa379a51035 name: '9 in quam' family: '9' reference_urls: 'http://hermann.com/perspiciatis-consectetur-dolorem-eum-veniam-consequuntur.html, http://collins.com/' reference_cves: 'CVE-2021-2295, CVE-2019-7338' solution_type: WorkAround solution_description: 'Soluta nemo officiis voluptatem. Voluptatem repellat distinctio nulla occaecati. Eligendi rerum quos deserunt quis esse modi dolorem.' summary: 'Id accusantium a corporis esse consequatur. Ipsum rerum non aut. Praesentium quis dolores rerum a. Natus nam et vel est cumque est ut.' insight: 'Hic qui similique dolorem aut. Est dolor cumque qui non. Eos corrupti nulla laboriosam et. At veritatis quaerat autem eius.' affected: 'Ullam totam reprehenderit eveniet. Laborum quibusdam quis corrupti cum ratione soluta consequatur. Vel tenetur voluptatem dolor et asperiores.' impact: 'Sapiente quaerat quibusdam beatae excepturi. Voluptas id ex provident illum. Consequatur aut sunt ab quas similique. Laborum aut ipsa nihil quo qui totam ullam.' vuldetect: 'Repellat voluptas facere necessitatibus eos quibusdam non dicta esse. Illo placeat tempore velit corporis laudantium. Ut doloribus quo sed.' priority: Low qod_type: remote_banner qod_value: 25 items: type: object properties: id: type: string example: a2e63db6-5c74-4399-ba9f-e0c828250faf asset_id: type: string example: a2e63db6-4d6f-4c67-ae79-0b0f8c99eabe company_id: type: string example: '6345279' vulnerability_definition_id: type: string example: a2e63db6-5abe-4d76-8696-9bc60973db4b vulnerability_definition: type: object properties: id: type: string example: a2e63db6-5abe-4d76-8696-9bc60973db4b name: type: string example: 'Unnecessary Services Enabled via aperiam input' description: type: string example: 'Sit pariatur dolorum voluptas error voluptas voluptatibus veritatis. Numquam ut cum maxime placeat temporibus accusamus. Sunt minima cum quis cum et neque quia.' solution: type: string example: 'Repellendus sit itaque veniam error sapiente vel rerum voluptas. In qui asperiores quia id aut voluptates.' category: type: string example: 'Unnecessary Services Enabled' threat_level: type: string example: Medium definition_type: type: string example: openvas definition: type: object properties: id: type: string example: a2e63db6-5693-4cd0-8c0b-7fb16a6ce872 o_id: type: string example: 0ccf1f01-c3af-32df-8eef-fc3055fe9519 name: type: string example: 'Unnecessary Services Enabled via aperiam input' family: type: string example: 'Unnecessary Services Enabled' reference_urls: type: string example: 'http://www.wilkinson.com/quaerat-illum-consequatur-itaque, https://wisozk.org/consequatur-est-modi-minima-velit-maiores-quibusdam.html' reference_cves: type: string example: 'CVE-2016-3230, CVE-2015-8933' solution_type: type: string example: 'Configuration Change' solution_description: type: string example: 'Repellendus sit itaque veniam error sapiente vel rerum voluptas. In qui asperiores quia id aut voluptates.' summary: type: string example: 'Sit pariatur dolorum voluptas error voluptas voluptatibus veritatis. Numquam ut cum maxime placeat temporibus accusamus. Sunt minima cum quis cum et neque quia.' insight: type: string example: 'Illum quas doloremque inventore tempora accusamus. Commodi eos quia dolor aut numquam ipsum temporibus. Molestiae aut sequi totam quasi id blanditiis. Accusantium cupiditate itaque iste illum harum at maiores.' affected: type: string example: 'Quo provident pariatur reiciendis esse excepturi sed. Nesciunt pariatur voluptatem amet dignissimos amet blanditiis. Est est ad dolorem dignissimos.' impact: type: string example: 'Aut numquam quasi accusantium nam. Ut aut quo voluptas facilis est voluptatem. Eius vitae est labore a velit praesentium. Sapiente molestiae rerum incidunt eius et officiis. Eos in temporibus ut et qui quia sed error. Ab vel ex quo et quo.' vuldetect: type: string example: 'Itaque totam accusamus animi. Perferendis est ut optio laborum ipsa sit distinctio voluptates. Aliquam hic quae totam ducimus eos. Neque officia quos impedit alias rerum et.' priority: type: string example: Log qod_type: type: string example: remote_active qod_value: type: integer example: 72 cvss_base_score: type: number example: 7.1 cvss_base_vector: type: string example: 'AV:N/AC:L/Au:S/C:N/I:P/A:N' epss: type: string example: null nullable: true created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' host: type: string example: 118.135.206.254 hostname: type: string example: wintheiser.com port: type: string example: 24370/tcp details: type: string example: 'Reiciendis quaerat dolor fuga illo architecto ducimus. Delectus qui optio rerum rerum velit deleniti perspiciatis. Vitae eos itaque sint laudantium consequatur.' status: type: string example: Unresolved first_seen: type: string example: '2025-11-09T17:18:24.000000Z' last_seen: type: string example: '2026-07-19T06:54:37.000000Z' created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' name: type: string example: 'Unnecessary Services Enabled via aperiam input' description: type: string example: 'Reiciendis quaerat dolor fuga illo architecto ducimus. Delectus qui optio rerum rerum velit deleniti perspiciatis. Vitae eos itaque sint laudantium consequatur.' cvss_base_score: type: number example: 7.1 cvss_base_vector: type: string example: 'AV:N/AC:L/Au:S/C:N/I:P/A:N' qod_type: type: string example: remote_active qod_value: type: integer example: 72 threat: type: string example: Medium scanner_id: type: string example: null nullable: true scanner_hostname: type: string example: null nullable: true plugin: type: object properties: id: type: string example: a2e63db6-5693-4cd0-8c0b-7fb16a6ce872 o_id: type: string example: 0ccf1f01-c3af-32df-8eef-fc3055fe9519 name: type: string example: 'Unnecessary Services Enabled via aperiam input' family: type: string example: 'Unnecessary Services Enabled' reference_urls: type: string example: 'http://www.wilkinson.com/quaerat-illum-consequatur-itaque, https://wisozk.org/consequatur-est-modi-minima-velit-maiores-quibusdam.html' reference_cves: type: string example: 'CVE-2016-3230, CVE-2015-8933' solution_type: type: string example: 'Configuration Change' solution_description: type: string example: 'Repellendus sit itaque veniam error sapiente vel rerum voluptas. In qui asperiores quia id aut voluptates.' summary: type: string example: 'Sit pariatur dolorum voluptas error voluptas voluptatibus veritatis. Numquam ut cum maxime placeat temporibus accusamus. Sunt minima cum quis cum et neque quia.' insight: type: string example: 'Illum quas doloremque inventore tempora accusamus. Commodi eos quia dolor aut numquam ipsum temporibus. Molestiae aut sequi totam quasi id blanditiis. Accusantium cupiditate itaque iste illum harum at maiores.' affected: type: string example: 'Quo provident pariatur reiciendis esse excepturi sed. Nesciunt pariatur voluptatem amet dignissimos amet blanditiis. Est est ad dolorem dignissimos.' impact: type: string example: 'Aut numquam quasi accusantium nam. Ut aut quo voluptas facilis est voluptatem. Eius vitae est labore a velit praesentium. Sapiente molestiae rerum incidunt eius et officiis. Eos in temporibus ut et qui quia sed error. Ab vel ex quo et quo.' vuldetect: type: string example: 'Itaque totam accusamus animi. Perferendis est ut optio laborum ipsa sit distinctio voluptates. Aliquam hic quae totam ducimus eos. Neque officia quos impedit alias rerum et.' priority: type: string example: Log qod_type: type: string example: remote_active qod_value: type: integer example: 72 links: type: object properties: first: type: string example: '/?page=1' last: type: string example: '/?page=1' prev: type: string example: null nullable: true next: type: string example: null nullable: true meta: type: object properties: current_page: type: integer example: 1 from: type: integer example: 1 last_page: type: integer example: 1 links: type: array example: - 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 items: type: object properties: url: type: string example: null nullable: true label: type: string example: '« Previous' page: type: string example: null nullable: true active: type: boolean example: false path: type: string example: / per_page: type: integer example: 10 to: type: integer example: 2 total: type: integer example: 2 tags: - Vulnerabilities requestBody: required: false content: application/json: schema: type: object properties: filter: type: object description: '' example: [] properties: name: type: string description: 'Must not be greater than 255 characters.' example: oscldwmlsmvjpfmzcstt threat_level: type: string description: '' example: High enum: - Log - Low - Medium - High - Critical host: type: string description: 'Must not be greater than 255 characters.' example: samqp hostname: type: string description: 'Must not be greater than 255 characters.' example: maqhunfaxizwjl status: type: string description: '' example: Expired enum: - Resolved - Unresolved - Accepted - Detected - Expired scan_id: type: string description: 'Must be a valid UUID.' example: 526e5788-a8e8-3e04-b7de-e331a41a59f7 per_page: type: integer description: 'Must be at least 1. Must not be greater than 200.' example: 20 '/v1/vulnerabilities/{id}': get: summary: 'Retrieve a vulnerability.' operationId: retrieveAVulnerability description: " Retrieves a vulnerability by its ID.\n " parameters: [] responses: 200: description: 'Successfully retrieved vulnerability' content: application/json: schema: type: object example: data: id: a2e63db6-793b-4cf4-b853-24ee19997858 asset_id: a2e63db6-7445-40be-a106-cdbb670e95c3 company_id: '4249337' vulnerability_definition_id: a2e63db6-78a4-432d-8e9f-147bee881b2a vulnerability_definition: id: a2e63db6-78a4-432d-8e9f-147bee881b2a name: '7 in et' description: 'Amet esse sint doloremque voluptas. Officia consequatur incidunt velit eum soluta eos. Non illo dolor iusto est.' solution: 'Consequatur et vitae laudantium qui perferendis voluptatem et. Cupiditate totam ipsum officiis et debitis. Minima nulla tempore sed aut excepturi. Quis eos est sit quo consequatur sit.' category: '7' threat_level: Medium definition_type: openvas definition: id: a2e63db6-7748-4b57-9650-82169b0adc5c o_id: 26f3e09e-da59-376b-b59c-5d86299a23fb name: '7 in et' family: '7' reference_urls: 'http://effertz.com/occaecati-non-error-dolores-dignissimos-et-corporis-et, http://jacobson.info/saepe-dolor-optio-deleniti-optio-fuga-voluptas-repudiandae.html' reference_cves: 'CVE-2017-2177, CVE-2021-9054' solution_type: WorkAround solution_description: 'Consequatur et vitae laudantium qui perferendis voluptatem et. Cupiditate totam ipsum officiis et debitis. Minima nulla tempore sed aut excepturi. Quis eos est sit quo consequatur sit.' summary: 'Amet esse sint doloremque voluptas. Officia consequatur incidunt velit eum soluta eos. Non illo dolor iusto est.' insight: 'Rerum rerum quod aut facere non vitae. Et veniam perferendis est voluptate dolorem harum. Et qui soluta aut repellat esse velit in. In repellat voluptatem qui adipisci molestiae incidunt minus velit. Perspiciatis odio et dolores aliquam.' affected: 'Nisi sunt enim quaerat ducimus repellat. Eaque aut a sapiente sed aliquam soluta repellendus et. Aliquid facilis odit eius quasi libero ipsum.' impact: 'Quisquam maiores ullam quasi voluptatum eius sed. Eum illo error asperiores nulla voluptatem qui eum. Dolor et et tenetur aspernatur delectus. Placeat iure non sed consectetur voluptatem.' vuldetect: 'Qui nihil nostrum veritatis eos placeat architecto et. Aut deleniti commodi ut quaerat est. Similique vel doloribus velit qui qui et. Possimus consequatur possimus doloribus.' priority: High qod_type: registry qod_value: 80 cvss_base_score: 1.8 cvss_base_vector: 'AV:L/AC:L/Au:S/C:P/I:P/A:P' epss: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' host: 233.26.142.132 hostname: murray.net port: 5432/tcp details: 'Similique nisi reprehenderit id doloribus. Ut temporibus amet similique qui hic eius eligendi. Est nihil nesciunt deleniti dolores dicta.' status: Detected first_seen: '2025-12-14T14:03:12.000000Z' last_seen: '2026-09-18T18:25:46.000000Z' created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' name: '7 in et' description: 'Similique nisi reprehenderit id doloribus. Ut temporibus amet similique qui hic eius eligendi. Est nihil nesciunt deleniti dolores dicta.' cvss_base_score: 1.8 cvss_base_vector: 'AV:L/AC:L/Au:S/C:P/I:P/A:P' qod_type: registry qod_value: 80 threat: Medium scanner_id: null scanner_hostname: null plugin: id: a2e63db6-7748-4b57-9650-82169b0adc5c o_id: 26f3e09e-da59-376b-b59c-5d86299a23fb name: '7 in et' family: '7' reference_urls: 'http://effertz.com/occaecati-non-error-dolores-dignissimos-et-corporis-et, http://jacobson.info/saepe-dolor-optio-deleniti-optio-fuga-voluptas-repudiandae.html' reference_cves: 'CVE-2017-2177, CVE-2021-9054' solution_type: WorkAround solution_description: 'Consequatur et vitae laudantium qui perferendis voluptatem et. Cupiditate totam ipsum officiis et debitis. Minima nulla tempore sed aut excepturi. Quis eos est sit quo consequatur sit.' summary: 'Amet esse sint doloremque voluptas. Officia consequatur incidunt velit eum soluta eos. Non illo dolor iusto est.' insight: 'Rerum rerum quod aut facere non vitae. Et veniam perferendis est voluptate dolorem harum. Et qui soluta aut repellat esse velit in. In repellat voluptatem qui adipisci molestiae incidunt minus velit. Perspiciatis odio et dolores aliquam.' affected: 'Nisi sunt enim quaerat ducimus repellat. Eaque aut a sapiente sed aliquam soluta repellendus et. Aliquid facilis odit eius quasi libero ipsum.' impact: 'Quisquam maiores ullam quasi voluptatum eius sed. Eum illo error asperiores nulla voluptatem qui eum. Dolor et et tenetur aspernatur delectus. Placeat iure non sed consectetur voluptatem.' vuldetect: 'Qui nihil nostrum veritatis eos placeat architecto et. Aut deleniti commodi ut quaerat est. Similique vel doloribus velit qui qui et. Possimus consequatur possimus doloribus.' priority: High qod_type: registry qod_value: 80 properties: data: type: object properties: id: type: string example: a2e63db6-793b-4cf4-b853-24ee19997858 asset_id: type: string example: a2e63db6-7445-40be-a106-cdbb670e95c3 company_id: type: string example: '4249337' vulnerability_definition_id: type: string example: a2e63db6-78a4-432d-8e9f-147bee881b2a vulnerability_definition: type: object properties: id: type: string example: a2e63db6-78a4-432d-8e9f-147bee881b2a name: type: string example: '7 in et' description: type: string example: 'Amet esse sint doloremque voluptas. Officia consequatur incidunt velit eum soluta eos. Non illo dolor iusto est.' solution: type: string example: 'Consequatur et vitae laudantium qui perferendis voluptatem et. Cupiditate totam ipsum officiis et debitis. Minima nulla tempore sed aut excepturi. Quis eos est sit quo consequatur sit.' category: type: string example: '7' threat_level: type: string example: Medium definition_type: type: string example: openvas definition: type: object properties: id: type: string example: a2e63db6-7748-4b57-9650-82169b0adc5c o_id: type: string example: 26f3e09e-da59-376b-b59c-5d86299a23fb name: type: string example: '7 in et' family: type: string example: '7' reference_urls: type: string example: 'http://effertz.com/occaecati-non-error-dolores-dignissimos-et-corporis-et, http://jacobson.info/saepe-dolor-optio-deleniti-optio-fuga-voluptas-repudiandae.html' reference_cves: type: string example: 'CVE-2017-2177, CVE-2021-9054' solution_type: type: string example: WorkAround solution_description: type: string example: 'Consequatur et vitae laudantium qui perferendis voluptatem et. Cupiditate totam ipsum officiis et debitis. Minima nulla tempore sed aut excepturi. Quis eos est sit quo consequatur sit.' summary: type: string example: 'Amet esse sint doloremque voluptas. Officia consequatur incidunt velit eum soluta eos. Non illo dolor iusto est.' insight: type: string example: 'Rerum rerum quod aut facere non vitae. Et veniam perferendis est voluptate dolorem harum. Et qui soluta aut repellat esse velit in. In repellat voluptatem qui adipisci molestiae incidunt minus velit. Perspiciatis odio et dolores aliquam.' affected: type: string example: 'Nisi sunt enim quaerat ducimus repellat. Eaque aut a sapiente sed aliquam soluta repellendus et. Aliquid facilis odit eius quasi libero ipsum.' impact: type: string example: 'Quisquam maiores ullam quasi voluptatum eius sed. Eum illo error asperiores nulla voluptatem qui eum. Dolor et et tenetur aspernatur delectus. Placeat iure non sed consectetur voluptatem.' vuldetect: type: string example: 'Qui nihil nostrum veritatis eos placeat architecto et. Aut deleniti commodi ut quaerat est. Similique vel doloribus velit qui qui et. Possimus consequatur possimus doloribus.' priority: type: string example: High qod_type: type: string example: registry qod_value: type: integer example: 80 cvss_base_score: type: number example: 1.8 cvss_base_vector: type: string example: 'AV:L/AC:L/Au:S/C:P/I:P/A:P' epss: type: string example: null nullable: true created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' host: type: string example: 233.26.142.132 hostname: type: string example: murray.net port: type: string example: 5432/tcp details: type: string example: 'Similique nisi reprehenderit id doloribus. Ut temporibus amet similique qui hic eius eligendi. Est nihil nesciunt deleniti dolores dicta.' status: type: string example: Detected first_seen: type: string example: '2025-12-14T14:03:12.000000Z' last_seen: type: string example: '2026-09-18T18:25:46.000000Z' created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' name: type: string example: '7 in et' description: type: string example: 'Similique nisi reprehenderit id doloribus. Ut temporibus amet similique qui hic eius eligendi. Est nihil nesciunt deleniti dolores dicta.' cvss_base_score: type: number example: 1.8 cvss_base_vector: type: string example: 'AV:L/AC:L/Au:S/C:P/I:P/A:P' qod_type: type: string example: registry qod_value: type: integer example: 80 threat: type: string example: Medium scanner_id: type: string example: null nullable: true scanner_hostname: type: string example: null nullable: true plugin: type: object properties: id: type: string example: a2e63db6-7748-4b57-9650-82169b0adc5c o_id: type: string example: 26f3e09e-da59-376b-b59c-5d86299a23fb name: type: string example: '7 in et' family: type: string example: '7' reference_urls: type: string example: 'http://effertz.com/occaecati-non-error-dolores-dignissimos-et-corporis-et, http://jacobson.info/saepe-dolor-optio-deleniti-optio-fuga-voluptas-repudiandae.html' reference_cves: type: string example: 'CVE-2017-2177, CVE-2021-9054' solution_type: type: string example: WorkAround solution_description: type: string example: 'Consequatur et vitae laudantium qui perferendis voluptatem et. Cupiditate totam ipsum officiis et debitis. Minima nulla tempore sed aut excepturi. Quis eos est sit quo consequatur sit.' summary: type: string example: 'Amet esse sint doloremque voluptas. Officia consequatur incidunt velit eum soluta eos. Non illo dolor iusto est.' insight: type: string example: 'Rerum rerum quod aut facere non vitae. Et veniam perferendis est voluptate dolorem harum. Et qui soluta aut repellat esse velit in. In repellat voluptatem qui adipisci molestiae incidunt minus velit. Perspiciatis odio et dolores aliquam.' affected: type: string example: 'Nisi sunt enim quaerat ducimus repellat. Eaque aut a sapiente sed aliquam soluta repellendus et. Aliquid facilis odit eius quasi libero ipsum.' impact: type: string example: 'Quisquam maiores ullam quasi voluptatum eius sed. Eum illo error asperiores nulla voluptatem qui eum. Dolor et et tenetur aspernatur delectus. Placeat iure non sed consectetur voluptatem.' vuldetect: type: string example: 'Qui nihil nostrum veritatis eos placeat architecto et. Aut deleniti commodi ut quaerat est. Similique vel doloribus velit qui qui et. Possimus consequatur possimus doloribus.' priority: type: string example: High qod_type: type: string example: registry qod_value: type: integer example: 80 tags: - Vulnerabilities parameters: - in: path name: id description: 'The ID of the vulnerability.' example: dCcadbfb-eFdd-cfbf-Aedd-EdbfDaAcafbb required: true schema: type: string /v1/webhook-events: get: summary: 'List all webhook events' operationId: listAllWebhookEvents description: "Lists all webhook events for the authenticated user's company.\n" parameters: - in: query name: sort description: 'Sort the results by column(s) (comma separated).' example: event required: false schema: type: string description: 'Sort the results by column(s) (comma separated).' example: event enum: - webhook_id - event - status - next_retry_at - in: query name: filter description: 'Filter the results by column(s) (comma separated).' example: event required: false schema: type: string description: 'Filter the results by column(s) (comma separated).' example: event enum: - webhook_id - event - status responses: 200: description: '' content: application/json: schema: type: object example: data: - id: a2e63db6-08e8-4d94-856d-3c2f564c1270 webhook_id: a2e63db6-0804-41d9-af5e-a9bb7dcdc061 event: cum payload: key: value status: pending retries: 0 next_retry_at: null last_sent_at: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' - id: a2e63db6-0ca3-4c34-8ea7-b41443e098bb webhook_id: a2e63db6-0bf5-49b3-ade1-c6902e192cf8 event: quo payload: key: value status: pending retries: 0 next_retry_at: null last_sent_at: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.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 properties: data: type: array example: - id: a2e63db6-08e8-4d94-856d-3c2f564c1270 webhook_id: a2e63db6-0804-41d9-af5e-a9bb7dcdc061 event: cum payload: key: value status: pending retries: 0 next_retry_at: null last_sent_at: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' - id: a2e63db6-0ca3-4c34-8ea7-b41443e098bb webhook_id: a2e63db6-0bf5-49b3-ade1-c6902e192cf8 event: quo payload: key: value status: pending retries: 0 next_retry_at: null last_sent_at: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' items: type: object properties: id: type: string example: a2e63db6-08e8-4d94-856d-3c2f564c1270 webhook_id: type: string example: a2e63db6-0804-41d9-af5e-a9bb7dcdc061 event: type: string example: cum payload: type: object properties: key: type: string example: value status: type: string example: pending retries: type: integer example: 0 next_retry_at: type: string example: null nullable: true last_sent_at: type: string example: null nullable: true created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' links: type: object properties: first: type: string example: '/?page=1' last: type: string example: '/?page=1' prev: type: string example: null nullable: true next: type: string example: null nullable: true meta: type: object properties: current_page: type: integer example: 1 from: type: integer example: 1 last_page: type: integer example: 1 links: type: array example: - 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 items: type: object properties: url: type: string example: null nullable: true label: type: string example: '« Previous' page: type: string example: null nullable: true active: type: boolean example: false path: type: string example: / per_page: type: integer example: 10 to: type: integer example: 2 total: type: integer example: 2 tags: - 'Webhook Events' /v1/webhook-events/types: get: summary: 'List all available webhook event types' operationId: listAllAvailableWebhookEventTypes description: "Lists all webhook event types that can be used.\n" parameters: [] responses: 401: description: '' content: application/json: schema: type: object example: message: Unauthenticated. properties: message: type: string example: Unauthenticated. tags: - 'Webhook Events' '/v1/webhook-events/{webhookEvent_id}': get: summary: 'Retrieve an webhook event' operationId: retrieveAnWebhookEvent description: "Retrieves an webhook event for the current company.\n" parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: id: a2e63db6-197b-4b0f-9183-b8627ff803db webhook_id: a2e63db6-18c8-4579-bf89-863cfac0db0a event: saepe payload: key: value status: pending retries: 0 next_retry_at: null last_sent_at: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' properties: data: type: object properties: id: type: string example: a2e63db6-197b-4b0f-9183-b8627ff803db webhook_id: type: string example: a2e63db6-18c8-4579-bf89-863cfac0db0a event: type: string example: saepe payload: type: object properties: key: type: string example: value status: type: string example: pending retries: type: integer example: 0 next_retry_at: type: string example: null nullable: true last_sent_at: type: string example: null nullable: true created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' 404: description: 'webhook event not found' content: application/json: schema: type: object example: message: 'webhook event not found' properties: message: type: string example: 'webhook event not found' tags: - 'Webhook Events' parameters: - in: path name: webhookEvent_id description: 'The ID of the webhookEvent.' example: a2e63db6-08e8-4d94-856d-3c2f564c1270 required: true schema: type: string /v1/webhooks: get: summary: 'List all webhooks' operationId: listAllWebhooks description: "Lists all webhooks for the authenticated user's company.\n" parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: - id: a2e63db5-ebb2-4061-af6a-414219c8d72a company_id: 35fdc354-f407-4a8c-88fd-d3cc8e1df3f1 url: 'https://russel.com' description: null events: [] secret: 90ab6457fc68574e3a831d7b0f697416ee96f98addfb552fc32765f8a2707d33 last_sent_at: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' - id: a2e63db5-f013-41d1-9a62-d40bbc47a423 company_id: 4de45b70-fc9c-40d3-a3c9-57c159fc9ce4 url: 'https://walter.biz' description: null events: [] secret: 55a552abab156152ae97039eca1fb442dc97e7033b903fc149a835e7795d0962 last_sent_at: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' properties: data: type: array example: - id: a2e63db5-ebb2-4061-af6a-414219c8d72a company_id: 35fdc354-f407-4a8c-88fd-d3cc8e1df3f1 url: 'https://russel.com' description: null events: [] secret: 90ab6457fc68574e3a831d7b0f697416ee96f98addfb552fc32765f8a2707d33 last_sent_at: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' - id: a2e63db5-f013-41d1-9a62-d40bbc47a423 company_id: 4de45b70-fc9c-40d3-a3c9-57c159fc9ce4 url: 'https://walter.biz' description: null events: [] secret: 55a552abab156152ae97039eca1fb442dc97e7033b903fc149a835e7795d0962 last_sent_at: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' items: type: object properties: id: type: string example: a2e63db5-ebb2-4061-af6a-414219c8d72a company_id: type: string example: 35fdc354-f407-4a8c-88fd-d3cc8e1df3f1 url: type: string example: 'https://russel.com' description: type: string example: null nullable: true events: type: array example: [] secret: type: string example: 90ab6457fc68574e3a831d7b0f697416ee96f98addfb552fc32765f8a2707d33 last_sent_at: type: string example: null nullable: true created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' tags: - Webhooks post: summary: 'Create Webhook' operationId: createWebhook description: "Create a new webhook for the current company.\n" parameters: [] responses: 201: description: 'webhook created' content: application/json: schema: type: object example: data: id: 00000000-0000-0000-0000-000000000000 properties: data: type: object properties: id: type: string example: 00000000-0000-0000-0000-000000000000 422: description: '' content: application/json: schema: oneOf: - description: 'url is already used by company' type: object example: message: 'The url has already been taken.' properties: message: type: string example: 'The url has already been taken.' - description: 'validation error' type: object example: message: 'invalid url' properties: message: type: string example: 'invalid url' tags: - Webhooks requestBody: required: true content: application/json: schema: type: object properties: url: type: string description: 'Must be a valid URL. Must not be greater than 2048 characters.' example: 'http://www.wuckert.biz/' description: type: string description: 'Must not be greater than 255 characters.' example: 'Voluptatem rem aut aut eum.' nullable: true events: type: array description: '' example: null items: type: string required: - url '/v1/webhooks/{webhook_id}': get: summary: 'Retrieve a webhook' operationId: retrieveAWebhook description: "Retrieves a webhook for the current company.\n" parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: id: a2e63db5-f8b8-4df6-86e9-c3fc440b5cb0 company_id: fa3aa01f-6ff7-47a1-97db-ec41061c7e61 url: 'https://hermiston.com' description: null events: [] secret: a39208f1a73f8bd05a3564a5d07662b626ab31d25a221cabb743ab702192c6ff last_sent_at: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' properties: data: type: object properties: id: type: string example: a2e63db5-f8b8-4df6-86e9-c3fc440b5cb0 company_id: type: string example: fa3aa01f-6ff7-47a1-97db-ec41061c7e61 url: type: string example: 'https://hermiston.com' description: type: string example: null nullable: true events: type: array example: [] secret: type: string example: a39208f1a73f8bd05a3564a5d07662b626ab31d25a221cabb743ab702192c6ff last_sent_at: type: string example: null nullable: true created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' 404: description: 'webhook not found' content: application/json: schema: type: object example: message: 'webhook not found' properties: message: type: string example: 'webhook not found' tags: - Webhooks patch: summary: 'Update a webhook' operationId: updateAWebhook description: "Updates a webhook for the current company.\n" parameters: [] responses: 200: description: 'update successful' content: text/plain: schema: type: string example: '' 404: description: 'webhook not found' content: application/json: schema: type: object example: message: 'webhook not found' properties: message: type: string example: 'webhook not found' 422: description: '' content: application/json: schema: oneOf: - description: 'url is already used by company' type: object example: message: 'The url has already been taken.' properties: message: type: string example: 'The url has already been taken.' - description: 'validation error' type: object example: message: 'invalid url' properties: message: type: string example: 'invalid url' tags: - Webhooks requestBody: required: false content: application/json: schema: type: object properties: url: type: string description: 'Must be a valid URL.' example: 'http://hilpert.com/perspiciatis-velit-esse-illo' description: type: string description: 'Must not be greater than 255 characters.' example: 'Quasi enim est quaerat sed autem quis est iste.' nullable: true events: type: array description: '' example: null items: type: string delete: summary: 'Delete an webhook' operationId: deleteAnWebhook description: "Deletes an webhook for the current company.\n" parameters: [] responses: 204: description: 'delete successful' content: text/plain: schema: type: string example: '' 404: description: 'webhook not found' content: application/json: schema: type: object example: message: 'webhook not found' properties: message: type: string example: 'webhook not found' tags: - Webhooks parameters: - in: path name: webhook_id description: 'The ID of the webhook.' example: a2e63db5-ebb2-4061-af6a-414219c8d72a required: true schema: type: string '/v1/webhooks/{webhook_id}/rotate-secret': post: summary: 'Rotate webhook secret' operationId: rotateWebhookSecret description: "Rotates the secret for the webhook.\n" parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: data: id: a2e63db5-fd73-46f2-8cb8-dca9d11cc944 company_id: 880ce757-f8e2-42e1-9555-7d18fb86da9c url: 'https://crooks.biz' description: null events: [] secret: 3596c55e1f6ce40117ae0084899cbe7b742e3fedb0a45cfe4292912ef5f5ff16 last_sent_at: null created_at: '2026-10-04T07:06:55.000000Z' updated_at: '2026-10-04T07:06:55.000000Z' properties: data: type: object properties: id: type: string example: a2e63db5-fd73-46f2-8cb8-dca9d11cc944 company_id: type: string example: 880ce757-f8e2-42e1-9555-7d18fb86da9c url: type: string example: 'https://crooks.biz' description: type: string example: null nullable: true events: type: array example: [] secret: type: string example: 3596c55e1f6ce40117ae0084899cbe7b742e3fedb0a45cfe4292912ef5f5ff16 last_sent_at: type: string example: null nullable: true created_at: type: string example: '2026-10-04T07:06:55.000000Z' updated_at: type: string example: '2026-10-04T07:06:55.000000Z' 404: description: 'webhook not found' content: application/json: schema: type: object example: message: 'webhook not found' properties: message: type: string example: 'webhook not found' tags: - Webhooks parameters: - in: path name: webhook_id description: 'The ID of the webhook.' example: a2e63db5-ebb2-4061-af6a-414219c8d72a required: true schema: type: string '/v1/webhooks/{webhook_id}/test': post: summary: 'Test a webhook' operationId: testAWebhook description: "Tests the webhook by sending a test event.\n" parameters: [] responses: 204: description: 'dispatched test event' content: text/plain: schema: type: string example: '' 404: description: 'webhook not found' content: application/json: schema: type: object example: message: 'webhook not found' properties: message: type: string example: 'webhook not found' tags: - Webhooks parameters: - in: path name: webhook_id description: 'The ID of the webhook.' example: a2e63db5-ebb2-4061-af6a-414219c8d72a required: true schema: type: string