ComponentAlgorithms
Retrieves cryptographic algorithms detected in a single software component.HTTP Request Example
Response Examples
Successful Response
Error Response — Component Not Found
Error Response — Invalid PURL
Error Handling
Component responses include optional error fields when issues occur during processing:error_message: Human-readable description of the errorerror_code: Machine-readable error code for programmatic handling
Error Codes
| Code | Description |
|---|---|
INVALID_PURL | The provided PURL format is invalid |
COMPONENT_NOT_FOUND | The component was not found in the database |
NO_INFO | No cryptographic information is available for the component |
INVALID_SEMVER | The provided version requirement is invalid |
When a component-level error occurs, the overall responsestatusremains"SUCCESS"because the request itself was processed successfully. Component-level errors are indicated within the individual component object.
ComponentsAlgorithms
Retrieves cryptographic algorithms detected across multiple software components in a single request.HTTP Request Example
Response Examples
Successful Response
Mixed Response with Error
ComponentAlgorithmsInRange
Analyses a single software component across a specified version range and returns all cryptographic algorithms detected, along with the versions in which each algorithm appears. Use this endpoint to audit cryptographic changes across a component’s release history.HTTP Request Example
Response Format
The response contains the following fields:component: Contains the component analysis resultspurl: The PURL of the requested componentversions: Component versions in which at least one cryptographic algorithm was detectedalgorithms: All cryptographic algorithms found across the specified version range
status: Response status indicating success or failure
- Algorithm name and strength classification
- Detection metadata and analysis results
Response Example
Component with Algorithms Across Versions
Component with No Cryptographic Algorithms
ComponentsAlgorithmsInRange
Analyses multiple software components across specified version ranges and returns cryptographic algorithms for each in a single request.HTTP Request Example
ComponentVersionsInRange
Analyses a single software component and returns two lists: versions that contain cryptographic algorithms, and versions that do not. Use this endpoint to determine at which point in a component’s release history cryptographic functionality was introduced or removed.HTTP Request Example
Response Example
ComponentsVersionsInRange
Batch version of ComponentVersionsInRange - analyzes multiple components and returns version lists based on cryptographic algorithm presence for each component.HTTP Request Example
ComponentHintsInRange
Retrieves cryptographic hints for a component, including detected protocols, libraries, SDKs and frameworks.HTTP Request Example
Response Format
The response contains the following fields:component: Contains the component analysis resultspurl: The PURL of the requested componenthints: Cryptographic hints detected in the componentversion: The specific version analysed
status: Response status indicating success or failure
- Unique identifier for the hint
- Name of the cryptographic entity detected
- Description of the detected usage or implementation
- Classification of the hint (see categories below)
- Reference URL for further information
- PURL of the detected entity
Hint Categories
Hints are classified into the following categories:| Category | Description |
|---|---|
protocol | Cryptographic protocols (e.g. TLS, SSH, HTTPS) |
library | Cryptographic libraries (e.g. OpenSSL, Bouncy Castle) |
sdk | Software development kits with cryptographic capabilities |
framework | Frameworks that include cryptographic functionality |
Response Examples
Component with Cryptographic Hints
Component with No Cryptographic Hints
ComponentsHintsInRange
Retrieves cryptographic hints for multiple components in a single request, returning the cryptographic protocols, libraries, SDKs and frameworks detected across all specified components.HTTP Request Example
DownloadRuleset
Download cryptography detection rulesets as compressed.tar.gz archives. Rulesets are used to identify cryptographic algorithms across multiple programming languages and are compatible with tools such as Semgrep and OpenGrep.
Ruleset Types
- dca: Deep Code Analysis rules for semantic detection using SCANOSS Crypto Finder
- keywords: eyword-based rules for pattern matching
Version Specification
- latest: Most recent ruleset release
- versioned: Specific release (e.g.,
v1.2.3)
HTTP Request Examples
Response Format
The API returns a binary.tar.gz file. Metadata is included in HTTP response headers.
Example Headers
Download & Extract
Inspect Headers
Tarball Structure
Manifest
Each ruleset includes amanifest.json file containing metadata: