Snyk · Schema
TestRequestBody
TestRequestBody represents the request body used when creating an Test.
SecurityDevSecOpsVulnerability ManagementApplication SecuritySoftware Composition AnalysisSASTContainer SecurityIaC
Properties
| Name | Type | Description |
|---|---|---|
| data | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/snyk/main/json-schema/snyk-test-request-body-schema.json",
"title": "TestRequestBody",
"description": "TestRequestBody represents the request body used when creating an Test.",
"x-generated": "2026-10-04",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/snyk-tests-api-openapi.yml#/components/schemas/TestRequestBody",
"properties": {
"data": {
"$ref": "#/$defs/TestDataCreate"
}
},
"required": [
"data"
],
"type": "object",
"$defs": {
"BaseResourceCreateItem": {
"description": "BaseResources contain a single instance of testable content.",
"properties": {
"resource": {
"allOf": [
{
"$ref": "#/$defs/BaseResourceVariantCreateItem"
}
],
"description": "The specific representation of what content to test."
},
"type": {
"enum": [
"base"
],
"type": "string"
}
},
"required": [
"type",
"resource"
],
"type": "object"
},
"BaseResourceVariantCreateItem": {
"oneOf": [
{
"$ref": "#/$defs/InlineResourceCreateItem"
},
{
"$ref": "#/$defs/BundleResource"
},
{
"$ref": "#/$defs/UploadResource"
},
{
"$ref": "#/$defs/ScmResource"
},
{
"$ref": "#/$defs/ContainerRepoResource"
},
{
"$ref": "#/$defs/SnykReferenceResource"
}
]
},
"BundleResource": {
"description": "Resource representing Bundles of files created through the\nDeepcode Bundle API.\n\nBundles contain collections of files uploaded by clients to\nSnyk for testing.\n\nBundleResources can be marked either as SBOM or Source to\nindicate the contents of the Bundle.\n\nSBOM BundleResources should provide the following fields:\n- type\n- bundle_id\n- name\n- file_patterns (may be empty)\n\nSource BundleResources should provide the following fields:\n- type\n- bundle_id\n- repository_url\n- root_folder_id\n- file_patterns (may be empty)\n\nCurrently supported scans utilizing BundleResources are:\n- SAST: (1) BundleResource containing Source files.\n- SBOM (SCA): (1) BundleResource containing an SBOM\n- SBOM + Reachability Analysis (SCA): (1) BundleResource containing an SBOM, (1) BundleResource containing Source files.",
"properties": {
"bundle_id": {
"description": "The ID returned from the Files Bundle Store API for a given Bundle.\nThe Deepcode Bundle API is not intended for direct public use,\nand will be replaced with the File Upload API in the future.\n\nThese IDs are sha256 digests (32 bytes or 64 hex digits).",
"pattern": "^[a-fA-F0-9]{64}$",
"type": "string"
},
"content_type": {
"description": "Content present in the Bundle.\n\nCurrently only SBOMs and Source files are accepted\ncontent types.",
"enum": [
"sbom",
"source"
],
"type": "string"
},
"file_patterns": {
"description": "File Patterns to include in the scan. Elements must be less than 256 characters.\n\nCurrently unsupported. Provide an empty list.",
"items": {
"$ref": "#/$defs/String256"
},
"maxItems": 20,
"type": "array"
},
"name": {
"description": "A name to assign to the SBOM contained in the BundleRevision.\n\nOverrides the filename in the BundleRevision.",
"maxLength": 256,
"type": "string"
},
"repository_url": {
"description": "Repository URL at which the Source files are stored.",
"maxLength": 1024,
"type": "string"
},
"root_folder_id": {
"description": "Folder inside the BundleRevision at which the Source files are located.",
"maxLength": 1024,
"type": "string"
},
"scm_context": {
"$ref": "#/$defs/ScmContext"
},
"type": {
"enum": [
"bundle"
],
"type": "string"
}
},
"required": [
"type",
"bundle_id",
"content_type",
"file_patterns"
],
"type": "object"
},
"ContainerRepoResource": {
"description": "Resource representing a container repository.\n\nContainer Repos identify a specific container\nimage in a container registry. These images can be scanned\nusing the Snyk Container scanner.\n\nCurrently no scans are supported through the Test API for\nContainerRepoResources.",
"properties": {
"image_url": {
"description": "URL at which the specific container image can be found\nin a container registry.",
"format": "url",
"maxLength": 1024,
"type": "string"
},
"scm_context": {
"$ref": "#/$defs/ScmContext"
},
"tag": {
"description": "Tagged version of the container to scan.",
"type": "string"
},
"type": {
"enum": [
"container"
],
"type": "string"
}
},
"required": [
"type",
"image_url",
"tag"
],
"type": "object"
},
"ContainerScanConfiguration": {
"description": "Scan configuration parameters for the Container scanner.",
"type": "object"
},
"DeepcodeBundleSubject": {
"description": "**Deprecated**\n\nProvide a BundleResource and include the\nSAST Scan Configuration instead.\n\nTest subject representing source code uploaded to Snyk using DeepCode\nbundle APIs.\n\nDeepcode bundles are accepted through the API, but are not\nguaranteed to return Findings.",
"properties": {
"bundle_id": {
"description": "Deepcode Bundle ID. These IDs are sha256 digests (32 bytes or 64 hex digits).",
"pattern": "^[a-fA-F0-9]{64}$",
"type": "string"
},
"locator": {
"allOf": [
{
"$ref": "#/$defs/LocalPathLocator"
}
],
"description": "Locate local paths from which the source code bundle was derived."
},
"type": {
"enum": [
"deepcode_bundle"
],
"type": "string"
}
},
"required": [
"type",
"bundle_id",
"locator"
],
"type": "object"
},
"DepGraphContent": {
"description": "Dep Graph file contents, of the same format as Dep Graphs\nprovided to /v1/test-dep-graph endpoint.",
"properties": {
"dep_graph": {
"$ref": "#/$defs/DepGraphRef"
},
"type": {
"enum": [
"dep_graph"
],
"type": "string"
}
},
"required": [
"type",
"dep_graph"
],
"type": "object"
},
"DepGraphRef": {
"additionalProperties": {},
"properties": {
"graph": {
"$ref": "#/$defs/io.snyk.api.v1testdepgraph.request.Graph"
},
"pkgManager": {
"$ref": "#/$defs/io.snyk.api.v1testdepgraph.request.PackageManager"
},
"pkgs": {
"items": {
"$ref": "#/$defs/io.snyk.api.v1testdepgraph.request.Package"
},
"type": "array"
},
"schemaVersion": {
"type": "string"
}
},
"required": [
"schemaVersion",
"pkgManager",
"pkgs",
"graph"
],
"type": "object",
"x-go-type": "json.RawMessage"
},
"DepGraphSubjectCreate": {
"description": "**Deprecated**\n\nProvide an InlineResource with the DepGraph contents\nand the SCA Scan Configuration instead.\n\nTest subject representing a Snyk dependency graph (a legacy SBOM format).",
"properties": {
"dep_graph": {
"allOf": [
{
"$ref": "#/$defs/DepGraphRef"
}
],
"description": "When creating a test, provide the dep-graph contents inline to the request.\n\nThis attribute is only available when creating a new Test."
},
"locator": {
"allOf": [
{
"$ref": "#/$defs/LocalPathLocator"
}
],
"description": "Source file(s) from which the dependency graph was derived.\n\nFor some managed package ecosystems (examples: Maven, Yarn workspaces),\nSnyk might derive a dependency graph from several files."
},
"type": {
"enum": [
"dep_graph"
],
"type": "string"
}
},
"required": [
"type",
"dep_graph",
"locator"
],
"type": "object"
},
"DiffResourceCreateItem": {
"description": "DiffResources contain two versions of the same content\nto compare against each other.\n\nThe Base and Compare fields contain Resources representing\nan \"existing\" (base) version as well as a \"new\" (compare)\nversion. Most commonly these Resources will be of the same type,\ne.g. an ScmResource containing a reference the `main` branch being\ncompared to an ScmResource containing a reference to a new\nfeature branch.\n\nCurrently no scans are supported through the Test API\nfor DiffResources.",
"properties": {
"base": {
"$ref": "#/$defs/BaseResourceVariantCreateItem"
},
"compare": {
"$ref": "#/$defs/BaseResourceVariantCreateItem"
},
"type": {
"enum": [
"diff"
],
"type": "string"
}
},
"required": [
"type",
"base",
"compare"
],
"type": "object"
},
"GitUrlCoordinatesSubject": {
"description": "**Deprecated**\n\nProvide an ScmResource and include the\nSAST Scan Configuration instead.\n\nTest subject representing a source tree located in a Git repository that\nhas a Snyk SCM integration.\n\nGit URL coordinates are accepted through the API, but are not\nguaranteed to return Findings.",
"properties": {
"commit_id": {
"description": "Commit ID of the Git commit from which content will be retrieved for the\ntest.",
"pattern": "^[a-f0-9]{40,}$",
"type": "string"
},
"integration_id": {
"description": "Integration used to access the Git SCM repository in order to retrieve its source contents.",
"format": "uuid",
"type": "string"
},
"locator": {
"allOf": [
{
"$ref": "#/$defs/ScmRepoLocator"
}
],
"description": "Locate the SCM repository from which content will be retrieved for the\ntest."
},
"type": {
"enum": [
"git_url_coordinates"
],
"type": "string"
}
},
"required": [
"type",
"integration_id",
"commit_id",
"locator"
],
"type": "object"
},
"IacScanConfiguration": {
"description": "Scan configuration parameters for the IAC scanner.",
"type": "object"
},
"InlineContent": {
"allOf": [
{
"$ref": "#/$defs/DepGraphContent"
}
],
"description": "Content formats accepted inline for testing.",
"type": "object"
},
"InlineResourceCreateItem": {
"description": "Resource comprised of file contents included directly in\na request body.\n\nCurrently supported scans utilizing InlineResources are:\n- SCA (Open Source): (1) InlineResource containing a Dep Graph",
"properties": {
"content": {
"allOf": [
{
"$ref": "#/$defs/InlineContent"
}
],
"description": "File contents to be tested."
},
"name": {
"maxLength": 256,
"type": "string"
},
"scm_context": {
"$ref": "#/$defs/ScmContext"
},
"type": {
"enum": [
"inline"
],
"type": "string"
}
},
"required": [
"type",
"name",
"content"
],
"type": "object"
},
"LocalIgnore": {
"properties": {
"created_at": {
"description": "When the ignore was first created.",
"format": "date-time",
"type": "string"
},
"expires_at": {
"description": "When the ignore will expire.",
"format": "date-time",
"type": "string"
},
"path": {
"description": "Dependency path to the vulnerable package to be ignored.\n\nIf not provided, the ignore will apply to all packages with the given\nvulnerability ID.",
"items": {
"type": "string"
},
"type": "array"
},
"reason": {
"description": "Reason for the ignore.",
"type": "string"
},
"skip_if_fixable": {
"description": "Skips the ignore rule if an actual fix is available.",
"type": "boolean"
},
"vuln_id": {
"description": "The vulnerability ID of the finding to be ignored.\n\nThis typically matches SnykVulnProblem.id for open source vulnerabilities.",
"type": "string"
}
},
"required": [
"vuln_id"
],
"type": "object"
},
"LocalPathLocator": {
"description": "LocalPathLocator locates a test subject by local file paths, relative to the\nworking copy top-level directory of the source code.",
"properties": {
"paths": {
"description": "Local file paths. Limited to 256 characters.",
"items": {
"$ref": "#/$defs/String256"
},
"minItems": 1,
"type": "array"
},
"type": {
"enum": [
"local_path"
],
"type": "string"
}
},
"required": [
"type",
"paths"
],
"type": "object"
},
"LocalPolicy": {
"description": "Locally configured policy options for determining outcome of this specific test.",
"properties": {
"fail_on_upgradable": {
"default": false,
"description": "Use to fail a test when there is at least one vulnerable finding that can be fixed by upgrading the version of the related\n dependency. E.g. bumping lodash from 1.1.1 to 1.1.2.",
"type": "boolean"
},
"ignores": {
"description": "Defines ignore rules for known issues.",
"items": {
"$ref": "#/$defs/LocalIgnore"
},
"type": "array"
},
"reachability_filter": {
"$ref": "#/$defs/ReachabilityFilter"
},
"risk_score_threshold": {
"description": "Findings of equal or greater risk score will fail the test.",
"format": "uint16",
"maximum": 1000,
"minimum": 0,
"type": "integer"
},
"severity_threshold": {
"allOf": [
{
"$ref": "#/$defs/Severity"
}
],
"description": "Findings of equal or greater severity will fail the test."
},
"suppress_pending_ignores": {
"default": false,
"description": "Suppress ignores pending approval, so that they do not fail the test. If\nallowed by administrators, this might be set in developer workflows in\norder to unblock local development while an ignore is pending approval.",
"type": "boolean"
}
},
"required": [
"suppress_pending_ignores"
],
"type": "object"
},
"OtherLocator": {
"description": "OtherLocator represents any locator that this version of the API is not\ncapable of expressing.",
"properties": {
"type": {
"enum": [
"other"
],
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
},
"OtherSubject": {
"description": "OtherSubject represents any subject that this version of the API is not\ncapable of expressing.",
"properties": {
"type": {
"enum": [
"other"
],
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
},
"PassFail": {
"description": "Indicate whether a Test passes or fails.",
"enum": [
"pass",
"fail"
],
"type": "string"
},
"ProjectEntityLocator": {
"description": "ProjectEntityLocator locates a Snyk Project by its public ID.",
"properties": {
"project_id": {
"description": "Public ID of the Snyk Project.",
"format": "uuid",
"type": "string"
},
"type": {
"enum": [
"project_entity"
],
"type": "string"
}
},
"required": [
"type",
"project_id"
],
"type": "object"
},
"ProjectNameLocator": {
"description": "ProjectNameLocator locates a Snyk Project by its name.",
"properties": {
"project_name": {
"description": "Name of the Snyk Project.",
"type": "string"
},
"target_reference": {
"description": "Target reference which differentiates this project, for example, with a\nbranch name or version. Projects having the same reference can be grouped\nbased on that reference.",
"type": "string"
},
"type": {
"enum": [
"project_name"
],
"type": "string"
}
},
"required": [
"type",
"project_name"
],
"type": "object"
},
"ReachabilityFilter": {
"description": "Represent various reachability filters available for findings.",
"enum": [
"reachable",
"no_path_found",
"no_info"
],
"type": "string"
},
"SastScanConfiguration": {
"description": "Scan configuration parameters for the SAST scanner.",
"type": "object"
},
"SbomReachabilitySubject": {
"description": "**Deprecated**\n\nProvide a BundleResource with SBOM Bundle ID,\na BundleResource with Source Bundle ID, and include\nSCA Scan Configuration instead.\n\nSBOM Reachability tests can also be initiated using\nUploadResources if using the File Upload API.\n\nTest subject for SBOM test with reachability analysis.",
"properties": {
"code_bundle_id": {
"description": "Source code to inspect for the reach of the vulnerable dependencies.",
"pattern": "^[a-fA-F0-9]{64}$",
"type": "string"
},
"locator": {
"allOf": [
{
"$ref": "#/$defs/LocalPathLocator"
}
],
"description": "Locate the local paths from which the SBOM and source code were derived."
},
"sbom_bundle_id": {
"description": "The SBOM to test for vulnerable dependencies.",
"pattern": "^[a-fA-F0-9]{64}$",
"type": "string"
},
"type": {
"enum": [
"sbom_reachability"
],
"type": "string"
}
},
"required": [
"type",
"sbom_bundle_id",
"code_bundle_id",
"locator"
],
"type": "object"
},
"SbomSubject": {
"description": "**Deprecated**\n\nProvide a BundleResource with SBOM Bundle ID and include\nSCA Scan Configuration instead.\n\nSBOM tests can also be initiated using an\nUploadResource if using the File Upload API.\n\nTest subject for SBOM test without reachability analysis.",
"properties": {
"locator": {
"allOf": [
{
"$ref": "#/$defs/LocalPathLocator"
}
],
"description": "Locate the local paths from which the SBOM and source code were derived."
},
"sbom_bundle_id": {
"description": "The SBOM to test for vulnerable dependencies.",
"pattern": "^[a-fA-F0-9]{64}$",
"type": "string"
},
"type": {
"enum": [
"sbom"
],
"type": "string"
}
},
"required": [
"type",
"sbom_bundle_id",
"locator"
],
"type": "object"
},
"ScaScanConfiguration": {
"description": "Scan configuration parameters for the SCA scanner.",
"type": "object"
},
"ScanConfiguration": {
"description": "A map of scanner types to their specific set of\nconfiguration parameters.\n\nThe presence of a scanner's configuration in the\nprovided ScanConfiguration is used to determine what scans\nto run on the list of Resources provided.\n\nNote that an empty config object is different than\nomitting the field. An omitted scanner config results in\nthat scanner not being run. A provided empty scan config\nwill run the scanner if it is possible.",
"properties": {
"container": {
"$ref": "#/$defs/ContainerScanConfiguration"
},
"iac": {
"$ref": "#/$defs/IacScanConfiguration"
},
"sast": {
"$ref": "#/$defs/SastScanConfiguration"
},
"sca": {
"$ref": "#/$defs/ScaScanConfiguration"
},
"secrets": {
"$ref": "#/$defs/SecretsScanConfiguration"
}
},
"type": "object"
},
"ScmContext": {
"description": "Additional SCM information about a resource.\nProvides context about where the content came from; the resource itself is the testable item.\nScmResource does not use this; it identifies SCM via its own fields.",
"properties": {
"branch": {
"maxLength": 256,
"type": "string"
},
"commit_ref": {
"maxLength": 1024,
"type": "string"
},
"repo_url": {
"maxLength": 1024,
"type": "string"
}
},
"type": "object"
},
"ScmRepoLocator": {
"description": "ScmRepoLocator locates a test subject by SCM repository coordinates.",
"properties": {
"branch_name": {
"description": "Branch name, if known and applicable to locating the test subject.\n\nIf not specified, the branch name can be assumed to be the \"default\nintegration branch\" of the repository.",
"type": "string"
},
"type": {
"enum": [
"scm_repo"
],
"type": "string"
},
"url": {
"description": "URL of the SCM repository.",
"format": "uri",
"type": "string"
}
},
"required": [
"type",
"url"
],
"type": "object"
},
"ScmResource": {
"description": "Resource representing a repository of source files located in\na Source Code Management tool (e.g. GitHub).\n\nScmResources provide Snyk with the requisite information to\nlocate and scan the source files located in the repository.\n\nCurrently supported scans utilizing ScmResources are:\n- SAST scans on (1) ScmResource that references a repo already\nimported into Snyk\n- Secrets scans on (1) ScmResource that references a repo already\nimported into Snyk",
"properties": {
"commit": {
"description": "Commit hash to reference specifically.",
"maxLength": 1024,
"type": "string"
},
"file_patterns": {
"description": "File Patterns to include in the scan. Elements must be less than 256 characters.\n\nCurrently unsupported. Provide an empty list.",
"items": {
"$ref": "#/$defs/String256"
},
"maxItems": 20,
"type": "array"
},
"integration_id": {
"description": "Integration ID assigned to the specific SCM.\nThis ID can be found in the Snyk UI by navigating to\n\"Settings\" > \"Integrations\" > \"<Your SCM>\"\n\nThe ID will be displayed under \"General\" > \"Integration ID\"",
"format": "uuid",
"type": "string"
},
"ref": {
"description": "Ref contains a branch name or other non-commit hash reference\nto a version of the content.",
"maxLength": 1024,
"type": "string"
},
"repo_url": {
"description": "URL at which the repository can be found in the SCM.",
"maxLength": 1024,
"type": "string"
},
"type": {
"enum": [
"scm"
],
"type": "string"
}
},
"required": [
"type",
"repo_url",
"integration_id"
],
"type": "object"
},
"SdlcStage": {
"description": "SDLC stage where the test was initiated.",
"enum": [
"ide",
"cli",
"pr_check",
"ci_cd",
"mcp",
"other"
],
"type": "string"
},
"SecretsScanConfiguration": {
"description": "Scan configuration parameters for the Secrets scanner.",
"type": "object"
},
"Severity": {
"description": "Indicate the severity of a finding discovered by a Test.",
"enum": [
"critical",
"high",
"medium",
"low",
"none",
"other"
],
"type": "string"
},
"SnykReferenceResource": {
"description": "SnykReferenceResources contain references to source code,\ncontainers, SBOMs, and other testable content that has already\nbeen provided to Snyk to create a Project or Target.\n\nIf the intended content to test is already known to Snyk as a\nProject, Target, or otherwise, this SnykReferenceResource can\nbe used to initiate a Test with the appropriate ID.\n\nCurrently no scans are supported through the Test API for\nSnykReferenceResources.",
"properties": {
"ref_id": {
"description": "ID referring the contents already known by Snyk.",
"format": "uuid",
"type": "string"
},
"reference_type": {
"description": "Kind of Snyk reference contained in Ref ID.\n\nTargets and Projects exist in Snyk currently.\n\nAssets are a feature in-development, and are listed\nhere for future-forward compatibility.",
"enum": [
"target",
"project",
"asset"
],
"type": "string"
},
"scm_context": {
"$ref": "#/$defs/ScmContext"
},
"type": {
"enum": [
"snyk_ref"
],
"type": "string"
}
},
"required": [
"type",
"reference_type",
"ref_id"
],
"type": "object"
},
"String256": {
"maxLength": 256,
"type": "string"
},
"TestAttributesCreate": {
"description": "TestAttributes represents the attributes of a Test resource.",
"properties": {
"config": {
"allOf": [
{
"$ref": "#/$defs/TestConfiguration"
}
],
"description": "The test configuration. If not specified, caller accepts test configuration\ndefaults within the calling scope (org, group or tenant settings, etc)."
},
"resources": {
"description": "The units of testable content to be scanned by Snyk.\n\nResources are provided in conjunction with the ScanConfiguration,\nand appropriate scans to run are determined from that combination.\n\nThere is a \"best-fit\" approach taken, and not all Resources will be\nscanned by all requested scanners. E.g. Container resources cannot be\nscanned by the SAST scanner.",
"items": {
"$ref": "#/$defs/TestResourceCreateItem"
},
"type": "array"
},
"sdlc_stage": {
"allOf": [
{
"$ref": "#/$defs/SdlcStage"
}
],
"description": "SDLC stage where the test was initiated."
},
"subject": {
"allOf": [
{
"$ref": "#/$defs/TestSubjectCreate"
}
],
"description": "**Deprecated**\n\nUse an equivalent combination of Resources and\nScan Configurations instead. See Subject descriptions\nfor appropriate replacements.\n\nThe subject of a test."
},
"subject_locators": {
"description": "**Deprecated**\n\nMetadata about testable content is located on\nResources directly.\n\nAdditional locators which may help locate the test subject across test workflows.\n\nTest subjects generally will have a primary locator. Additional locators\nmay be provided to help link the test to existing projects and/or assets in\nthe Snyk platform.",
"items": {
"$ref": "#/$defs/TestSubjectLocator"
},
"type": "array"
},
"user_public_id": {
"description": "Public identifier of the user who initiated the test.",
"maxLength": 64,
"type": "string"
}
},
"type": "object"
},
"TestConfiguration": {
"description": "Test configuration.",
"properties": {
"local_policy": {
"allOf": [
{
"$ref": "#/$defs/LocalPolicy"
}
],
"description": "Inline configured policy options for determining outcome of this specific test.\n\nIf centrally managed policies are in scope, inline policies are overridden\nby managed policies. Policy references explain which policies were\neffective for test evaluation."
},
"project_business_criticality": {
"maxLength": 256,
"type": "string"
},
"project_environment": {
"items": {
"type": "string"
},
"maxItems": 10,
"type": "array"
},
"project_lifecycle": {
"items": {
"type": "string"
},
"maxItems": 10,
"type": "array"
},
"project_tags": {
"items": {
"type": "string"
},
"maxItems": 10,
"type": "array"
},
"publish_report": {
"description": "Publish findings into a report, viewable in the Snyk web UI.",
"type": "boolean"
},
"scan_config": {
"$ref": "#/$defs/ScanConfiguration"
},
"target_name": {
"maxLength": 256,
"type": "string"
},
"target_reference": {
"description": "Fields from CLI.",
"maxLength": 1024,
"type": "string"
},
"timeout": {
"allOf": [
{
"$ref": "#/$defs/TimeoutSpec"
}
],
"description": "Maximum test time in seconds, after which execution will be cancelled and\nthe test will fail with reason \"timeout\"."
}
},
"type": "object"
},
"TestDataCreate": {
"description": "TestData represents a Test resource object.",
"properties": {
"attributes": {
"$ref": "#/$defs/TestAttributesCreate"
},
"type": {
"enum": [
"tests"
],
"type": "string"
}
},
"required": [
"type",
"attributes"
],
"type": "object"
},
"TestResourceCreateItem": {
"anyOf": [
{
"$ref": "#/$defs/BaseResourceCreateItem"
},
{
"$ref": "#/$defs/DiffResourceCreateItem"
}
],
"description": "TestResources contain single instances of testable content\nto be provided to Snyk scanners."
},
"TestSubjectCreate": {
"description": "The subject of a test, which identifies the asset/project and content references\nnecessary to conduct a security test.",
"oneOf": [
{
"$ref": "#/$defs/DeepcodeBundleSubject"
},
{
"$ref": "#/$defs/DepGraphSubjectCreate"
},
{
"$ref": "#/$defs/GitUrlCoordinatesSubject"
},
{
"$ref": "#/$defs/SbomReachabilitySubject"
},
{
"$ref": "#/$defs/OtherSubject"
},
{
"$ref": "#/$defs
# --- truncated at 32 KB (37 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/snyk/refs/heads/main/json-schema/snyk-test-request-body-schema.json
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/snyk-test-request-body"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.