Nuclei · Capability

PDCP API

For more details, checkout https://docs.projectdiscovery.io/api-reference/editor/scan

Run with Naftiko NucleiAPI

What You Can Do

GET
Get v2 template search — Search Templates
/v2/template/search
POST
Post v2 template user upload — Upload Templates
/v2/template/user/upload
PATCH
Patch v2 template user upload — Bulk Update User Template
/v2/template/user/upload
GET
Get v1 scans — Get Scan List
/v1/scans
POST
Post v1 scans — Create Scan
/v1/scans
DELETE
Delete v1 scans — Delete Scan in bulk
/v1/scans
GET
Get v1 scans scan id — Get Scan
/v1/scans/{scan_id}
DELETE
Delete v1 scans scan id — Delete Scan
/v1/scans/{scan_id}
PATCH
Patch v1 scans scan id — Update Scan
/v1/scans/{scan_id}
POST
Post v1 scans import — Import OSS Scan
/v1/scans/import
GET
Get v1 admin user search — Search user by name or email
/v1/admin/user/search
GET
Get v1 admin user billing assets — Get billing assets for a user
/v1/admin/user/billing_assets
GET
Get v1 admin user audit logs — Get audit logs for a user
/v1/admin/user/audit_logs
POST
Post v1 admin team change owner — change owner for a team (New owner will take control of the existing owner's subscription)
/v1/admin/team/change_owner
POST
Post v1 admin scan token — Set Scan token for user
/v1/admin/scan/token
PATCH
Patch v1 admin scan token — Update Scan token for user
/v1/admin/scan/token
GET
Get v1 admin scan token — Get Token Usage (admin)
/v1/admin/scan/token
POST
Post v1 scans scan id stop — Stop Scan
/v1/scans/{scan_id}/stop
POST
Post v1 scans scan id rescan — Rescan scan
/v1/scans/{scan_id}/rescan
GET
Get v1 scans vuln vulnid — Get Scan Vulnerability
/v1/scans/vuln/{vuln_id}
GET
Get v1 scans result scanid — Get Scan Results
/v1/scans/result/{scanId}
GET
Get v1 scans vuln vuln id changelogs — Get Vulnerability Changelogs
/v1/scans/vuln/{vuln_id}/changelogs
GET
Get v1 scans vuln changelogs — Get all Vulnerability Changelogs
/v1/scans/vuln/changelogs
GET
Get v1 results — Get All Results
/v1/scans/results
GET
Get v1 scans stats — Get All Scan Stats
/v1/scans/stats
POST
Post v1 scans vuln id retest — Retest vulnerability
/v1/scans/{vuln_id}/retest
GET
Get v1 scans results filters — Get Scans Result Filters
/v1/scans/results/filters
GET
Get v1 scans results stats — Get Results Stats
/v1/scans/results/stats
GET
Get v1 scans schedule — Get Scan Schedules
/v1/scans/schedule
POST
Post v1 scans schedule — Set Scan Schedule
/v1/scans/schedule
DELETE
Delete v1 scans schedule — Delete Scan Schedule
/v1/scans/schedule
GET
Get v1 retest — Get All Retest
/v1/retest
POST
Post v1 retest — Create Retest
/v1/retest
GET
Get v1 retest vuln id — Get Retest Vulnerability
/v1/retest/{vuln_id}
GET
Get v1 assets — Get Asset List
/v1/assets
POST
Post v1 assets — Upload Asset
/v1/assets
GET
Get v1 assets assetid — Get Asset Metadata
/v1/assets/{asset_Id}
DELETE
Delete v1 assets asset id — Delete Asset
/v1/assets/{asset_Id}
PATCH
Patch v1 assets asset id — Update Asset Metadata
/v1/assets/{asset_Id}
GET
Get v1 assets id contents — Get Asset Content
/v1/assets/{asset_id}/contents
PATCH
Patch v1 assets asset id contents — Update Asset Content
/v1/assets/{asset_id}/contents
GET
Get v1 user notification preference — Get User Notification Preferences
/v1/user/notification_preference
PATCH
Patch v1 user notification preference — Update User Notification Preferences
/v1/user/notification_preference
POST
Post v1 user feedback — Create Feedback
/v1/user/feedback
POST
Post v1 user delete code — Email user deletion verification code
/v1/user/delete/code
GET
Get v1 user — Get User Profile
/v1/user
DELETE
Delete v1 user — Delete user from system along with all data
/v1/user
GET
Get v1 user apikey — Get API Key
/v1/user/apikey
POST
Post v1 user apikey — Create API Key
/v1/user/apikey
DELETE
Delete v1 user apikey — Delete API Key
/v1/user/apikey
GET
Get v1 user setup stats — Get User Setup Statistics
/v1/user/onboarding_status
GET
Get v1 user billing assets — Get Billing Assets details
/v1/user/billing_assets
GET
Get v1 user promocode — Get Promocode Details
/v1/user/promo_code
POST
Post v1 user promocode — Apply Promocode
/v1/user/promo_code
POST
Post v1 user apikey rotate — Rotate API Key
/v1/user/apikey/rotate
POST
Post v1 user domain verification request — Request Domain Verification
/v1/user/domain-verification/request
DELETE
Delete v1 user domain verification request — Request Domain Delete
/v1/user/domain-verification/request
POST
Post v1 user domain verification confirm — Confirm Domain Verification
/v1/user/domain-verification/confirm
GET
Get v1 user domain verification status — Get Domain Verification Status
/v1/user/domain-verification/status
GET
Get v1 template public — Get Public Template List
/v1/template/public

MCP Tools

get-v2-template-search

Search Templates

read-only idempotent
post-v2-template-user-upload

Upload Templates

patch-v2-template-user-upload

Bulk Update User Template

get-v1-scans

Get Scan List

read-only idempotent
post-v1-scans

Create Scan

delete-v1-scans

Delete Scan in bulk

idempotent
get-v1-scans-scan-id

Get Scan

read-only idempotent
delete-v1-scans-scan-id

Delete Scan

idempotent
patch-v1-scans-scan-id

Update Scan

post-v1-scans-import

Import OSS Scan

get-v1-admin-user-search

Search user by name or email

read-only idempotent
get-v1-admin-user-billing-assets

Get billing assets for a user

read-only idempotent
get-v1-admin-user-audit-logs

Get audit logs for a user

read-only idempotent
post-v1-admin-team-change-owner

change owner for a team (New owner will take control of the existing owner's subscription)

post-v1-admin-scan-token

Set Scan token for user

patch-v1-admin-scan-token

Update Scan token for user

get-v1-admin-scan-token

Get Token Usage (admin)

read-only idempotent
post-v1-scans-scan-id-stop

Stop Scan

post-v1-scans-scan-id-rescan

Rescan scan

get-v1-scans-vuln-vulnid

Get Scan Vulnerability

read-only idempotent
get-v1-scans-result-scanid

Get Scan Results

read-only idempotent
get-v1-scans-vuln-vuln-id-changelogs

Get Vulnerability Changelogs

read-only idempotent
get-v1-scans-vuln-changelogs

Get all Vulnerability Changelogs

read-only idempotent
get-v1-results

Get All Results

read-only idempotent
get-v1-scans-stats

Get All Scan Stats

read-only idempotent
post-v1-scans-vuln-id-retest

Retest vulnerability

get-v1-scans-results-filters

Get Scans Result Filters

read-only idempotent
get-v1-scans-results-stats

Get Results Stats

read-only idempotent
get-v1-scans-schedule

Get Scan Schedules

read-only idempotent
post-v1-scans-schedule

Set Scan Schedule

delete-v1-scans-schedule

Delete Scan Schedule

idempotent
get-v1-retest

Get All Retest

read-only idempotent
post-v1-retest

Create Retest

get-v1-retest-vuln-id

Get Retest Vulnerability

read-only idempotent
get-v1-assets

Get Asset List

read-only idempotent
post-v1-assets

Upload Asset

get-v1-assets-assetid

Get Asset Metadata

read-only idempotent
delete-v1-assets-asset-id

Delete Asset

idempotent
patch-v1-assets-asset-id

Update Asset Metadata

get-v1-assets-id-contents

Get Asset Content

read-only idempotent
patch-v1-assets-asset-id-contents

Update Asset Content

get-v1-user-notification-preference

Get User Notification Preferences

read-only idempotent
patch-v1-user-notification-preference

Update User Notification Preferences

post-v1-user-feedback

Create Feedback

post-v1-user-delete-code

Email user deletion verification code

get-v1-user

Get User Profile

read-only idempotent
delete-v1-user

Delete user from system along with all data

idempotent
get-v1-user-apikey

Get API Key

read-only idempotent
post-v1-user-apikey

Create API Key

delete-v1-user-apikey

Delete API Key

idempotent
get-v1-user-setup-stats

Get User Setup Statistics

read-only idempotent
get-v1-user-billing-assets

Get Billing Assets details

read-only idempotent
get-v1-user-promocode

Get Promocode Details

read-only idempotent
post-v1-user-promocode

Apply Promocode

post-v1-user-apikey-rotate

Rotate API Key

post-v1-user-domain-verification-request

Request Domain Verification

delete-v1-user-domain-verification-request

Request Domain Delete

idempotent
post-v1-user-domain-verification-confirm

Confirm Domain Verification

get-v1-user-domain-verification-status

Get Domain Verification Status

read-only idempotent
get-v1-template-public

Get Public Template List

read-only idempotent

Capability Spec

nuclei-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: PDCP API
  description: For more details, checkout https://docs.projectdiscovery.io/api-reference/editor/scan
  tags:
  - Nuclei
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: nuclei
    baseUri: https://api.projectdiscovery.io
    description: PDCP API HTTP API.
    authentication:
      type: apikey
      in: header
      name: X-API-Key
      value: '{{NUCLEI_TOKEN}}'
    resources:
    - name: v2-template-search
      path: /v2/template/search
      operations:
      - name: get-v2-template-search
        method: GET
        description: Search Templates
        inputParameters:
        - name: scope
          in: query
          type: string
          description: Scope of templates to search (public or private)
        - name: limit
          in: query
          type: integer
          description: Maximum number of results to return
        - name: offset
          in: query
          type: integer
          description: Number of results to skip for pagination
        - name: fields
          in: query
          type: string
          description: Specific fields to return in the response
        - name: sort_asc
          in: query
          type: string
          description: Field to sort results in ascending order
        - name: sort_desc
          in: query
          type: string
          description: Field to sort results in descending order
        - name: q
          in: query
          type: string
          description: Search query string
        - name: highlight
          in: query
          type: boolean
          description: Whether to highlight search matches in results
        - name: facet_size
          in: query
          type: integer
          description: Number of facets to return in the response
        - name: X-Team-Id
          in: header
          type: string
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v2-template-user-upload
      path: /v2/template/user/upload
      operations:
      - name: post-v2-template-user-upload
        method: POST
        description: Upload Templates
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: patch-v2-template-user-upload
        method: PATCH
        description: Bulk Update User Template
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-scans
      path: /v1/scans
      operations:
      - name: get-v1-scans
        method: GET
        description: Get Scan List
        inputParameters:
        - name: offset
          in: query
          type: integer
          description: number of scan-status results to skip
        - name: limit
          in: query
          type: integer
          description: number of scan-status results to fetch
        - name: search
          in: query
          type: string
          description: search term for running scans
        - name: status
          in: query
          type: string
          description: filter by status (failed, finished, queued, running, starting, uploaded, scheduled)
        - name: sort_asc
          in: query
          type: string
          description: comma separated ascending sorting e.g sort_asc=created_at,severity
        - name: sort_desc
          in: query
          type: string
          description: comma separated descending sorting e.g sort_desc=created_at,severity
        - name: is_internal
          in: query
          type: boolean
          description: filter by internal scans
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: post-v1-scans
        method: POST
        description: Create Scan
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: delete-v1-scans
        method: DELETE
        description: Delete Scan in bulk
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-scans-scan-id
      path: /v1/scans/{scan_id}
      operations:
      - name: get-v1-scans-scan-id
        method: GET
        description: Get Scan
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: delete-v1-scans-scan-id
        method: DELETE
        description: Delete Scan
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: patch-v1-scans-scan-id
        method: PATCH
        description: Update Scan
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-scans-import
      path: /v1/scans/import
      operations:
      - name: post-v1-scans-import
        method: POST
        description: Import OSS Scan
        inputParameters:
        - name: name
          in: query
          type: string
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-admin-user-search
      path: /v1/admin/user/search
      operations:
      - name: get-v1-admin-user-search
        method: GET
        description: Search user by name or email
        inputParameters:
        - name: q
          in: query
          type: string
          description: name or email filter
        - name: plan
          in: query
          type: string
          description: plan filter
        - name: offset
          in: query
          type: integer
          description: offset for pagination
        - name: limit
          in: query
          type: integer
          description: limit for pagination
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-admin-user-billing-assets
      path: /v1/admin/user/billing_assets
      operations:
      - name: get-v1-admin-user-billing-assets
        method: GET
        description: Get billing assets for a user
        inputParameters:
        - name: email
          in: query
          type: string
          required: true
          description: email of the user
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-admin-user-audit-logs
      path: /v1/admin/user/audit_logs
      operations:
      - name: get-v1-admin-user-audit-logs
        method: GET
        description: Get audit logs for a user
        inputParameters:
        - name: email
          in: query
          type: string
          description: email of the user
        - name: user_id
          in: query
          type: integer
          description: user id of the user
        - name: offset
          in: query
          type: integer
          description: offset for pagination
        - name: path_name
          in: query
          type: string
          description: path name filter
        - name: status_code
          in: query
          type: string
          description: status code filter comma separated e.g status_code=200,404
        - name: status_code_not
          in: query
          type: string
          description: status code not filter comma separated e.g status_code_not=200,404
        - name: limit
          in: query
          type: integer
          description: limit for pagination
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-admin-team-change-owner
      path: /v1/admin/team/change_owner
      operations:
      - name: post-v1-admin-team-change-owner
        method: POST
        description: change owner for a team (New owner will take control of the existing owner's subscription)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-admin-scan-token
      path: /v1/admin/scan/token
      operations:
      - name: post-v1-admin-scan-token
        method: POST
        description: Set Scan token for user
        inputParameters:
        - name: method
          in: query
          type: string
          required: true
          description: '''create'' or ''update'' mode'
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: patch-v1-admin-scan-token
        method: PATCH
        description: Update Scan token for user
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: get-v1-admin-scan-token
        method: GET
        description: Get Token Usage (admin)
        inputParameters:
        - name: user_id
          in: query
          type: integer
          required: true
          description: user id to get scan token usage for
        - name: email
          in: query
          type: string
          description: email to get scan token usage for
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-scans-scan-id-stop
      path: /v1/scans/{scan_id}/stop
      operations:
      - name: post-v1-scans-scan-id-stop
        method: POST
        description: Stop Scan
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-scans-scan-id-rescan
      path: /v1/scans/{scan_id}/rescan
      operations:
      - name: post-v1-scans-scan-id-rescan
        method: POST
        description: Rescan scan
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-scans-vuln-vuln-id
      path: /v1/scans/vuln/{vuln_id}
      operations:
      - name: get-v1-scans-vuln-vulnid
        method: GET
        description: Get Scan Vulnerability
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-scans-result-scanid
      path: /v1/scans/result/{scanId}
      operations:
      - name: get-v1-scans-result-scanid
        method: GET
        description: Get Scan Results
        inputParameters:
        - name: severity
          in: query
          type: string
          description: comma separated severity e.g. severity=info,high
        - name: search
          in: query
          type: string
          description: search term
        - name: limit
          in: query
          type: integer
          description: number of results
        - name: offset
          in: query
          type: integer
          description: number of results to skip
        - name: templates
          in: query
          type: string
          description: comma separated templates e.g. templates=tech-detect,azure-takeover
        - name: hosts
          in: query
          type: string
          description: comma separated host e.g. hosts=https://example.com,https://x.com
        - name: domain
          in: query
          type: string
          description: comma separated domain names e.g-> domain=domain1.com,domain2.com
        - name: port
          in: query
          type: string
          description: comma separated ports e.g. ports=80,443
        - name: time
          in: query
          type: string
          description: filter by time ( last_day, last_week, last_month )
        - name: vuln_status
          in: query
          type: string
          description: comma separated vuln_status e.g vuln_status=open,fixed
        - name: sort_asc
          in: query
          type: string
          description: comma separated ascending sorting e.g sort_asc=created_at,severity
        - name: sort_desc
          in: query
          type: string
          description: comma separated descending sorting e.g sort_desc=created_at,severity
        - name: asset_metadata
          in: query
          type: boolean
          description: Asset details for the vulnerability
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-scans-vuln-vuln-id-changelogs
      path: /v1/scans/vuln/{vuln_id}/changelogs
      operations:
      - name: get-v1-scans-vuln-vuln-id-changelogs
        method: GET
        description: Get Vulnerability Changelogs
        inputParameters:
        - name: time
          in: query
          type: string
          description: time filter to select
        - name: event_type
          in: query
          type: string
          description: comma separated event_type e.g. event_type=vul_status,vul_status_change
        - name: sort_asc
          in: query
          type: string
          description: comma separated ascending sorting e.g sort_asc=created_at,severity
        - name: sort_desc
          in: query
          type: string
          description: comma separated descending sorting e.g sort_desc=created_at,severity
        - name: limit
          in: query
          type: integer
          description: number of results to get
        - name: offset
          in: query
          type: integer
          description: number of results to skip
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-scans-vuln-changelogs
      path: /v1/scans/vuln/changelogs
      operations:
      - name: get-v1-scans-vuln-changelogs
        method: GET
        description: Get all Vulnerability Changelogs
        inputParameters:
        - name: time
          in: query
          type: string
          description: time filter to select
        - name: event_type
          in: query
          type: string
          description: comma separated event_type e.g. event_type=vul_status,vul_status_change
        - name: sort_asc
          in: query
          type: string
          description: comma separated ascending sorting e.g sort_asc=created_at,severity
        - name: sort_desc
          in: query
          type: string
          description: comma separated descending sorting e.g sort_desc=created_at,severity
        - name: limit
          in: query
          type: integer
          description: number of results to get
        - name: offset
          in: query
          type: integer
          description: number of results to skip
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-scans-results
      path: /v1/scans/results
      operations:
      - name: get-v1-results
        method: GET
        description: Get All Results
        inputParameters:
        - name: offset
          in: query
          type: integer
          description: number of results to skip
        - name: limit
          in: query
          type: integer
          description: number of results to get
        - name: severity
          in: query
          type: string
          description: string separated by comma e.g. info,high
        - name: search
          in: query
          type: string
          description: search term
        - name: host
          in: query
          type: string
          description: comma separated host e.g. hosts=https://example.com,https://x.com
        - name: domain
          in: query
          type: string
          description: comma separated domain names e.g-> domain=domain1.com,domain2.com
        - name: port
          in: query
          type: string
          description: comma separated ports e.g. ports=80,443
        - name: templates
          in: query
          type: string
          description: comma separated templates e.g. templates=tech-detect,azure-takeover
        - name: time
          in: query
          type: string
          description: filter by time ( last_day, last_week, last_month )
        - name: vuln_status
          in: query
          type: string
          description: comma separated vuln_status e.g vuln_status=open,fixed
        - name: tags
          in: query
          type: string
          description: comma separated tags e.g tags=xss,cve
        - name: sort_asc
          in: query
          type: string
          description: comma separated ascending sorting e.g sort_asc=created_at,severity
        - name: sort_desc
          in: query
          type: string
          description: comma separated descending sorting e.g sort_desc=created_at,severity
        - name: is_ticket
          in: query
          type: boolean
          description: Return the records that have issue trackers
        - name: labels
          in: query
          type: string
          description: filter by comma separated labels e.g labels=p1,p2
        - name: category
          in: query
          type: string
          description: filter by comma separated categories e.g category=cve,xss
        - name: is_regression
          in: query
          type: boolean
          description: filter by is_regression
        - name: is_internal
          in: query
          type: boolean
          description: filter by is_internal (internal vs external hosts)
        - name: asset_metadata
          in: query
          type: boolean
          description: Asset details for the vulnerability
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-scans-stats
      path: /v1/scans/stats
      operations:
      - name: get-v1-scans-stats
        method: GET
        description: Get All Scan Stats
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-scans-vuln-id-retest
      path: /v1/scans/{vuln_id}/retest
      operations:
      - name: post-v1-scans-vuln-id-retest
        method: POST
        description: Retest vulnerability
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-scans-results-filters
      path: /v1/scans/results/filters
      operations:
      - name: get-v1-scans-results-filters
        method: GET
        description: Get Scans Result Filters
        inputParameters:
        - name: offset
          in: query
          type: integer
          description: The number of items to skip before starting to collect the result set
        - name: limit
          in: query
          type: integer
          description: The numbers of items to return
        - name: scan_id
          in: query
          type: string
          description: specific scan_id results filters
        - name: severity
          in: query
          type: string
          description: comma separated severity e.g. severities=info,high
        - name: templates
          in: query
          type: string
          description: comma separated templates e.g. templates=tech-detect,azure-takeover
        - name: host
          in: query
          type: string
          description: comma separated host e.g. hosts=https://example.com,https://x.com
        - name: domain
          in: query
          type: string
          description: comma separated domain names e.g-> domain=domain1.com,domain2.com
        - name: port
          in: query
          type: string
          description: comma separated ports e.g. ports=80,443
        - name: search
          in: query
          type: string
          description: search term
        - name: type
          in: query
          type: string
          required: true
          description: type of filter
        - name: time
          in: query
          type: string
          description: filter by time ( last_day, last_week, last_month )
        - name: vuln_status
          in: query
          type: string
          description: comma separated vuln_status e.g vuln_status=open,fixed
        - name: sort_asc
          in: query
          type: string
          description: comma separated ascending sorting e.g sort_asc=created_at,severity
        - name: sort_desc
          in: query
          type: string
          description: comma separated descending sorting e.g sort_desc=created_at,severity
        - name: tags
          in: query
          type: string
          description: comma separated tags e.g tags=xss,cve
        - name: not_hosts
          in: query
          type: string
          description: comma separated hosts that should not be returned e.g. not_hosts=https://example.com,https://x.com
        - name: not_severity
          in: query
          type: string
          description: comma separated severity that should not be returned e.g. not_severity=info,high
        - name: not_templates
          in: query
          type: string
          description: comma separated templates that should not be returned e.g. not_templates=tech-detect,azure-takeover
        - name: labels
          in: query
          type: string
          description: filter by comma separated labels e.g labels=p1,p2
        - name: category
          in: query
          type: string
          description: filter by comma separated categories e.g category=cve,xss
        - name: is_regression
          in: query
          type: boolean
          description: filter by is_regression
        - name: is_internal
          in: query
          type: boolean
          description: filter by is_internal (internal vs external hosts)
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        - name: start_date
          in: query
          type: string
          description: time filter start date
        - name: end_date
          in: query
          type: string
          description: time filter end date
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-scans-results-stats
      path: /v1/scans/results/stats
      operations:
      - name: get-v1-scans-results-stats
        method: GET
        description: Get Results Stats
        inputParameters:
        - name: offset
          in: query
          type: integer
          description: The number of items to skip before starting to collect the result set
        - name: limit
          in: query
          type: integer
          description: The numbers of items to return
        - name: host
          in: query
          type: string
          description: comma separated host e.g. hosts=https://example.com,https://x.com
        - name: domain
          in: query
          type: string
          description: comma separated domain names e.g-> domain=domain1.com,domain2.com
        - name: port
          in: query
          type: string
          description: comma separated ports e.g. ports=80,443
        - name: templates
          in: query
          type: string
          description: comma separated templates e.g. templates=tech-detect,azure-takeover
        - name: severity
          in: query
          type: string
          description: comma separated severity e.g. severities=info,high
        - name: search
          in: query
          type: string
          description: search term
        - name: scan_id
          in: query
          type: string
          description: specific scan_id results filters
        - name: time
          in: query
          type: string
          description: filter by time ( last_day, last_week, last_month )
        - name: vuln_status
          in: query
          type: string
          description: comma separated vuln_status e.g vuln_status=open,fixed
        - name: tags
          in: query
          type: string
          description: comma separated tags e.g tags=xss,cve
        - name: not_hosts
          in: query
          type: string
          description: comma separated hosts that should not be returned e.g. not_hosts=https://example.com,https://x.com
        - name: not_severity
          in: query
          type: string
          description: comma separated severity that should not be returned e.g. not_severity=info,high
        - name: not_templates
          in: query
          type: string
          description: comma separated templates that should not be returned e.g. not_templates=tech-detect,azure-takeover
        - name: labels
          in: query
          type: string
          description: filter by comma separated labels e.g labels=p1,p2
        - name: category
          in: query
          type: string
          description: filter by comma separated categories e.g category=cve,xss
        - name: is_regression
          in: query
          type: boolean
          description: filter by is_regression
        - name: is_internal
          in: query
          type: boolean
          description: filter by is_internal (internal vs external hosts)
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        - name: start_date
          in: query
          type: string
          description: time filter start date
        - name: end_date
          in: query
          type: string
          description: time filter end date
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-scans-schedule
      path: /v1/scans/schedule
      operations:
      - name: get-v1-scans-schedule
        method: GET
        description: Get Scan Schedules
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: post-v1-scans-schedule
        method: POST
        description: Set Scan Schedule
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: delete-v1-scans-schedule
        method: DELETE
        description: Delete Scan Schedule
        inputParameters:
        - name: scan_id
          in: query
          type: string
          required: true
          description: scan_id of schedule to be deleted
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-retest
      path: /v1/retest
      operations:
      - name: get-v1-retest
        method: GET
        description: Get All Retest
        inputParameters:
        - name: offset
          in: query
          type: integer
          required: true
          description: number of results to skip
        - name: limit
          in: query
          type: integer
          required: true
          description: number of results
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: post-v1-retest
        method: POST
        description: Create Retest
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-retest-vuln-id
      path: /v1/retest/{vuln_id}
      operations:
      - name: get-v1-retest-vuln-id
        method: GET
        description: Get Retest Vulnerability
        inputParameters:
        - name: X-Team-Id
          in: header
          type: string
          description: 'Retrieve the Team ID from: https://cloud.projectdiscovery.io/settings/team'
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-

# --- truncated at 32 KB (97 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/nuclei/refs/heads/main/capabilities/nuclei-capability.yaml